A-Garben-theoretische-Perspektive-für-robuste-Segmentierung
Dies ist ein Repo für unsere Arbeit zur A-Sheaf-Theoretic-Perspective-for-Robust-Segmentation
Beschreibung
Dieses Repo enthält den Code zum Trainieren robuster Segmentierungsmodelle durch Erzwingen der Formäquivarianz in einem diskreten latenten Raum und mithilfe der zellulären Garbentheorie, um die Zusammensetzung der Topologie der Ausgabesegmentierungskarte zu modellieren und einen zusammensetzungsbasierten Verlust zu erzwingen (weitere Einzelheiten finden Sie im Artikel). Diese Codebasis enthält Trainings- und Modellcode für unsere Modelle. Wir haben verschiedene Arten von Modellen. Wir verfügen über Modelle, die Äquivarianz mithilfe eines kontrastiven Verlusts erzwingen, wie in unserem Artikel beschrieben. Wir erzwingen die Äquivarianz zur Diedergruppe (D4) mithilfe unseres kontrastiven Basisverlusts. Wir erzwingen die Äquivarianz auch, indem wir die Faltungskerne in unserem Modell entweder auf die reguläre oder irreduzible Gruppendarstellung beschränken.
Erste Schritte
Abhängigkeiten
- Bitte bereiten Sie eine Umgebung mit Python=3.7 vor und verwenden Sie dann den Befehl „pip install -r require.txt“ für die Abhängigkeiten.
Datensätze
- Sie müssen 3 CSV-Dateien erstellen (train.csv, validation.csv, test.csv). Die train.csv sollte drei Spalten („t2image“, „adcimage“, „t2label“) haben, die die Pfade zu den Bildern und die entsprechenden Segmentierungen enthalten. Die validation.csv und test.csv sollten zwei Spalten („t2image“, „t2label“) haben, die die Pfade zu den Bildern und die entsprechenden Segmentierungen enthalten. Wir unterstützen das Nifti-Format. Ein Beispiel für Prostatadaten finden Sie unter Daten/Prostata.
- Es steht Ihnen frei, mit dem Datensatz Ihrer Wahl zu trainieren, der nach Ihren Wünschen vorverarbeitet wird. Wir haben Datenlader für die Prostata-Datensätze bereitgestellt.
- Prostata: Der Prostata-Datensatz wird aus dem NCI-ISBI13 Challenge- und Decathalon-Datensatz erfasst.
Schulung/Test.
- Sie können das Trainings-/Testskript zusammen mit main.py ausführen. Sie müssen die Pfade zu den Zug-, Validierungs- und Test-CSV-Dateien sowie das Ausgabeverzeichnis eingeben, um Ergebnisse und Bilder zu speichern. Sie müssen andere Hyperparameter entsprechend Ihrem Datensatz anpassen, der in main.py angezeigt wird. Wir haben 4 Modelle: „ShapeVQUnet“, „HybridShapeVQUnet“, „HybridSE3VQUnet“, „3DSE3VQUnet“. Die Modelle „ShapeVQUnet“ und „HybridShapeVQUnet“ beschränken den latenten Raum mithilfe eines kontrastbasierten Verlusts auf einen äquivarianten Formraum zur D4-Gruppe. Sie sollten das Argument --contrastive True wählen, wenn Sie das Modell „ShapeVQUnet“ oder „HybridShapeVQUnet“ wählen und andernfalls --contrastive False wählen. Das „ShapeVQUnet“ ist ein 3D-Modell, während das „HybridShapeVQUnet“ ein 2D/3D-Modell ist. Die Modelle „HybridSE3VQUnet“ und „3DSE3VQUnet“ beschränken die Faltungskerne auf die SE3-Gruppe. Wenn Sie sich für „HybridSE3VQUnet“ und „3DSE3VQUnet“ entscheiden, müssen Sie entscheiden, ob Sie eine reguläre („Regular“) oder irreduzible („Irreducible“) Gruppendarstellung (--repr) wünschen. Wenn Sie eine reguläre ('Regular') Gruppendarstellung wählen, müssen Sie die Gruppe (--group) auswählen, z. B. --group 4 ist Äquivarianz zur D4-Gruppe. Sie müssen auch die Multiplizität (--multiplicity) jedes Elements in der Gruppe auswählen, wenn Sie die Modelle „HybridSE3VQUnet“ und „3DSE3VQUnet“ wählen. Bei allen Modellen müssen Sie außerdem auswählen, nach wie vielen Epochen Sie den auf Zellbündeln basierenden Verlust einbeziehen möchten (--topo_epoch). Nachfolgend finden Sie ein Beispiel für Prostatadaten
python main.py --modeltype 'HybridShapeVQUnet' --contrastive True --topo_epoch 25 --training_data '.../Sheaves_for_Segmentation/data/Prostate/train.csv' --validation_data '.../Sheaves_for_Segmentation/data/Prostate/validation.csv' --test_data '.../Sheaves_for_Segmentation/data/Prostate/test.csv', --output_directory '.../Sheaves_for_Segmentation/data/Prostate/output/'
Autoren
Namen und Kontaktinformationen der Mitwirkenden
Ainkaran Santhirasekaram ([email protected])
Referenzen
- escnn
- Anhaltender Verlust der Homologiesegmentierung