Wenn Menschen versuchen, die Aufgabe der semantischen Segmentierung mit CNN zu lösen, verwenden sie normalerweise einen Softmax-Crossentropy-Verlust während des Trainings (siehe Fully conv. - Long). Wenn es jedoch darum geht, die Leistung verschiedener Ansätze zu vergleichen, werden Maßnahmen wie "crossing-over-union" gemeldet.Warum benutzt man keine IOU für das Training?
Meine Frage ist, warum trainieren Menschen nicht direkt auf die Maßnahme, die sie optimieren möchten? Es scheint mir etwas seltsam zu sein, während des Trainings in irgendeiner Form zu trainieren, aber ich bewerte ein anderes Maß für Benchmarks.
Ich kann sehen, dass die IOU Probleme hat, Proben zu trainieren, wo die Klasse nicht vorhanden ist (Union = 0 und Schnittpunkt = 0 => Division Null durch Null). Aber wenn ich sicherstellen kann, dass jede Probe meiner Grundwahrheit alle Klassen enthält, gibt es einen anderen Grund, diese Maßnahme nicht zu verwenden?
Könnte hier einige der Mathematik aufnehmen möchten dies kein Link nur beantworten zu machen. Ihr Algorithmus sieht ähnlich aus [Y. Wang et al] (http://www.cs.umanitoba.ca/~ywang/papers/isvc16.pdf). Ungefähr, I ~ = Summe (Y * Y ') 'und' U ~ = Summe (Y + Y' - Y * Y ') '. Ihr Papier verwendet den negativen Logarithmus von "I/U" und der von mir verlinkte verwendet "1-I/U". Ich mag das negative Protokollformular, aber ich werde beide bald versuchen. Deines rechnet auch nach dem I/U statt vorher. – Poik
Meiner Meinung nach ist es physikalisch sinnvoller, für jede Probe im Trainingssatz "I/U" zu berechnen und dann die Summierung durchzuführen. Auf diese Weise bewerten Sie die Genauigkeit pro Stichprobe und die einzelnen Fehler addieren sich. Die Durchführung der Summierung kann zuerst zur Fehlerlöschung führen ("Summe (I)/Summe (U)" kann ein gutes Ergebnis liefern, während "Summe (I/U)" für die gleichen Daten nicht ausreicht). Ich bin keineswegs ein Experte, obwohl ... – MPA