Dieses Repository enthält den Code für die Wartelinie-Erkennung auf SwissData Geo-Bildern mithilfe von Deep Learning für Computer Vision.
Die aktuelle GPU Auslastung kann mittels sudo nvtop angezeigt werden. Die slurm Queue wird mittels squeue angezeigt und ein Job kann durch scancel <JOBID> gestoppt werden.
Um einen Slurm Job zu starten wird der folgende Befehl verwendet.
salloc -p students --time=2:00:00 -G a100:1 --ntasks=32 --mem-per-cpu=7GIst der Job an der Reihe (siehe squeue) kann mittels dem nachfolgenden Befehl eine Interaktive Apptainer Shell verwendet werden.
apptainer shell --nv "${HOME}/build-apptainer/tensorflow-2.16.1-gpu.sif"Nun werden im Apptainer die entsprechenden Packete installiert.
pip install -r "${HOME}/VisionTransformer/requirements.txt"Schlussendlich wird der Code ausgeführt.
python3 "${HOME}/VisionTransformer/pythonScript/CNN.py"python3 "${HOME}/VisionTransformer/pythonScript/modules/create_sweep.py"Das Script erstellt einen neuen Sweep mit dem angegebenen Namen und gibt die benötigte Sweep URL aus. Die generierte Sweep ID (silvan-wiedmer-fhgr/VisionTransformer/<sweep-id>) muss im Anschliesenden Befehl eingetragen werden.
python3 "${HOME}/VisionTransformer/pythonScript/CNN.py" <sweep-id>Um das starten von mehreren Agenten zu vereinfachen, enthälte der Ordner Scripts für jedes Modell ein Skript um die Agenten auf einen Sweep anzuwenden. Dazu muss der folgende Befeh ausgeführt werden.
bash Scripts/start_<model_name>_sweep_agents.sh <sweep-id>