أ-الحزم-المنظور النظري للتجزئة القوية
هذا ريبو لعملنا على المنظور النظري للتجزئة القوية
وصف
يحتوي هذا الريبو على رمز لتدريب نماذج التجزئة القوية من خلال فرض تكافؤ الشكل في مساحة كامنة منفصلة واستخدام نظرية الحزم الخلوية لنمذجة تركيبة طوبولوجيا خريطة تجزئة المخرجات وفرض خسارة قائمة على التركيب (انظر الورقة لمزيد من التفاصيل). تحتوي قاعدة التعليمات البرمجية هذه على تدريب وكود نموذجي لنماذجنا. لدينا أنواع مختلفة من النماذج. لدينا نماذج تفرض التكافؤ باستخدام الخسارة القائمة على التباين كما هو موضح في ورقتنا. نحن نفرض التكافؤ على المجموعة ثنائية السطوح (D4) باستخدام خسارتنا الأساسية المتباينة. نحن أيضًا نفرض التكافؤ من خلال تقييد النواة التلافيفية في نموذجنا إما بتمثيل المجموعة المنتظم أو غير القابل للاختزال.
ابدء
التبعيات
- يرجى إعداد بيئة تحتوي على python=3.7، ثم استخدام الأمر "pip install -r require.txt" للتبعيات.
مجموعات البيانات
- سوف تحتاج إلى إنشاء 3 ملفات CSV (train.csv، validation.csv، test.csv). يجب أن يحتوي ملف Train.csv على ثلاثة أعمدة ('t2image' و'adcimage' و't2label') تحتوي على المسارات المؤدية إلى الصور والتجزئة المقابلة لها. يجب أن يحتوي ملف validation.csv وtest.csv على عمودين ('t2image' و't2label') يحتويان على المسارات إلى الصور والتجزئة المقابلة. نحن نؤيد تنسيق نيفتي. نحن نقدم مثالا لبيانات البروستاتا في البيانات/البروستات.
- أنت حر في اختيار التدريب على مجموعة البيانات التي تختارها، والتي تتم معالجتها مسبقًا حسب رغبتك. لقد قمنا بتوفير أدوات تحميل البيانات لمجموعات بيانات البروستاتا.
- البروستاتا: تم الحصول على مجموعة بيانات البروستاتا من مجموعة بيانات NCI-ISBI13 Challenge وdecathalon.
التدريب/الاختبار.
- يمكنك تشغيل البرنامج النصي للتدريب/الاختبار مع main.py. يجب عليك إدخال المسارات إلى ملفات القطار والتحقق من الصحة والاختبار ودليل الإخراج لحفظ النتائج والصور. ستحتاج إلى ضبط المعلمات الفائقة الأخرى وفقًا لمجموعة البيانات الخاصة بك والتي يمكن رؤيتها في main.py. لدينا 4 نماذج: 'ShapeVQUnet'، 'HybridShapeVQUnet'، 'HybridSE3VQUnet'، '3DSE3VQUnet'. يقوم نموذج "ShapeVQUnet" و"HybridShapeVQUnet" بتقييد المساحة الكامنة في مساحة شكل متساوية لمجموعة D4 باستخدام خسارة قائمة على التباين. يجب عليك اختيار الحجة --contrastive True إذا اخترت نموذج "ShapeVQUnet" أو "HybridShapeVQUnet" واخترت --contrastive False بخلاف ذلك. يعد "ShapeVQUnet" نموذجًا ثلاثي الأبعاد بينما يعد "HybridShapeVQUnet" نموذجًا ثنائي الأبعاد/ثلاثي الأبعاد. يقوم نموذج "HybridSE3VQUnet" و"3DSE3VQUnet" بتقييد النواة التلافيفية بمجموعة SE3. إذا اخترت أحد "HybridSE3VQUnet" و"3DSE3VQUnet"، فسيتعين عليك اختيار ما إذا كنت تريد تمثيل مجموعة عادي ('عادي') أو غير قابل للاختزال ('غير قابل للاختزال') (--repr) . إذا اخترت تمثيل مجموعة عادي ('عادي')، فسيتعين عليك اختيار المجموعة (--group) على سبيل المثال --group 4 هي التكافؤ مع المجموعة D4. يجب عليك أيضًا اختيار التعددية (-التعددية) لكل عنصر في المجموعة إذا اختار أحد النموذجين "HybridSE3VQUnet" و"3DSE3VQUnet". بالنسبة لجميع الطرز، يجب عليك أيضًا الاختيار بعد عدد العصور التي تريد تضمين الخسارة المستندة إلى الحزمة الخلوية (-topo_epoch) وفيما يلي مثال لبيانات البروستاتا
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/'
المؤلفون
أسماء المساهمين ومعلومات الاتصال
أينكاران سانثيراسيكارام ([email protected])
مراجع
- com.escnn
- فقدان تجزئة التماثل المستمر