PRISMS C

    graph TD
    %% Stildefinitionen
    classDef student fill:#c3e6cb,stroke:#333,stroke-width:2px,color:#333;
    classDef prism fill:#9f9,stroke:#333,stroke-width:2px,color:#333;
    classDef teacher fill:#9ff,stroke:#333,stroke-width:2px,color:#333;
    classDef output fill:#ffcc99,stroke:#333,stroke-width:2px,color:#333;
    
    %% TEIL C: PRISMA SELBST-DESTILLATIONSMECHANISMUS
    
    %% Teacher-Zweig (Hauptpfad mit voller Modalität)
    subgraph TEACHER["Teacher-Zweig (Volle Modalität)"]
        TEACH_BOTTLE["Teacher AFT<br/>(Alle Modalitäten)"]:::teacher
        TEACH_DEC["Teacher KFT<br/>(Vollständiger multimodaler Pfad)"]:::teacher
        TEACH_OUT["Teacher Endausgabe<br/>(Segmentierung mit voller Modalität)"]:::teacher
        TEACH_PRM["Teacher PRMs<br/>(Multiskalare Hilfsausgaben)"]:::teacher
        
        TEACH_BOTTLE --> TEACH_DEC
        TEACH_DEC --> TEACH_OUT
        TEACH_DEC --> TEACH_PRM
    end
    
    %% Student-Zweige (Modalspezifische Pfade)
    subgraph STUDENTS["Student-Zweige (Einzelne Modalität)"]
        %% Nur-Flair Student
        subgraph FLAIR_STUDENT["Nur-Flair Student"]
            FLAIR_MASK["Maskierung (masks_mod0)<br/>Nur Flair sichtbar"]:::student
            FLAIR_PROC["Flair-spezifische Verarbeitung<br/>(Gleiche Architektur wie Teacher)"]:::student
            FLAIR_OUT["Nur-Flair Segmentierung"]:::student
            FLAIR_PRM["Nur-Flair PRMs<br/>(Multiskalar)"]:::student
            
            FLAIR_MASK --> FLAIR_PROC
            FLAIR_PROC --> FLAIR_OUT
            FLAIR_PROC --> FLAIR_PRM
        end
        
        %% Nur-T1ce Student
        subgraph T1CE_STUDENT["Nur-T1ce Student"]
            T1CE_MASK["Maskierung (masks_mod1)<br/>Nur T1ce sichtbar"]:::student
            T1CE_PROC["T1ce-spezifische Verarbeitung<br/>(Gleiche Architektur wie Teacher)"]:::student
            T1CE_OUT["Nur-T1ce Segmentierung"]:::student
            T1CE_PRM["Nur-T1ce PRMs<br/>(Multiskalar)"]:::student
            
            T1CE_MASK --> T1CE_PROC
            T1CE_PROC --> T1CE_OUT
            T1CE_PROC --> T1CE_PRM
        end
        
        %% T1 und T2 Student (vereinfachte Darstellung)
        T1_T2_STUDENTS["T1 & T2 Student<br/>(Gleiche Struktur wie oben)<br/>T1: masks_mod2<br/>T2: masks_mod3"]:::student
    end
    
    %% Wissensdestillationsmechanismen
    subgraph KD_MECHANISMS["Wissensdestillationsmechanismen"]
        PIXEL_KD["Pixelweiser Wissenstransfer<br/><br/>• KL-Divergenz-Verlust<br/>• Temperaturskalierung<br/>• Soft-Wahrscheinlichkeitsabgleich"]:::prism
        
        FEATURE_KD["Merkmalsebenen-Wissenstransfer<br/><br/>• Prototyp-basierte Ausrichtung<br/>• Klassenweise Merkmalskonsistenz<br/>• Kosinus-Ähnlichkeitsabgleich"]:::prism
        
        MULTISCALE_KD["Multiskalarer Wissenstransfer<br/><br/>• Progressive Gewichtung (1.0→0.0625)<br/>• Alle Decoder-Stufen (PRM1-PRM5)<br/>• Skalenspezifische Überwachung"]:::prism
    end
    
    %% Wissensfluss
    KD_FLOW["Wissensflussrichtung<br/><br/>Teacher → Student<br/>(detach() verhindert Gradientenrückfluss<br/>von Studentn zu Teacher)"]:::prism
    
    %% Komponenten verbinden
    TEACH_OUT --> PIXEL_KD
    FLAIR_OUT --> PIXEL_KD
    T1CE_OUT --> PIXEL_KD
    T1_T2_STUDENTS --> PIXEL_KD
    
    TEACH_DEC --> FEATURE_KD
    FLAIR_PROC --> FEATURE_KD
    T1CE_PROC --> FEATURE_KD
    T1_T2_STUDENTS --> FEATURE_KD
    
    TEACH_PRM --> MULTISCALE_KD
    FLAIR_PRM --> MULTISCALE_KD
    T1CE_PRM --> MULTISCALE_KD
    T1_T2_STUDENTS --> MULTISCALE_KD
    
    TEACHER --> KD_FLOW
    KD_FLOW --> STUDENTS
    
    %% Technische Details
    TECH_DETAILS["PRISMA DETAILS:<br/><br/>• Jeder Student verwendet identische Architektur zum Teacher<br/>• Wissensfluss nur in eine Richtung (Teacher → Student)<br/>• Progressive Gewichtung: weight_prm /= 2.0 für jede Skala<br/>• temp_kl_loss_bs für pixelweisen KD<br/>• prototype_prism_loss_bs für Merkmalsebenen-KD"]
    style TECH_DETAILS fill:#eee,stroke:#333,stroke-width:1px,color:#333