Als ich meine Abschlussarbeit schrieb, habe ich eine semantische Segmentierung mit Pytorch durchgeführt, aber ich habe viele Probleme, deshalb werde ich sie als Memorandum zusammenfassen.
IoU Es gibt eine box_iou in der Fackelvision, aber ich war in Schwierigkeiten, weil ich keinen Mann für die Segmentierung finden konnte. Am Ende habe ich [diese Implementierung] verwendet (https://www.kaggle.com/iezepov/fast-iou-scoring-metric-in-pytorch-and-numpy).
torch.nn.CrossEntropyLoss Dieser Typ ist wirklich nervig In document steht $ Input: [Minibatch, C, d_1 ...] $, also das abgeleitete Ergebnis und die Maske der richtigen Antwortdaten Als ich die Form des One-Hot-Ausdrucks wie [Anzahl der Stapel, Anzahl der Klassen, H, W] machte, bekam ich unendlich viele Fehler und blieb ein oder zwei Tage lang hängen.
Eigentlich ist die Form des Inferenzergebnisses wie oben gut, aber die richtigen Antwortdaten scheinen $ target zu sein: [Minibatch, d_1 ...] $, die Form ist [Anzahl der Stapel, H, W] und jedes Pixel hat eine Beschriftung. Es scheint, dass die Antwort richtig ist. BinaryCrossEntropy hatte für Eingabe und Ziel die gleiche Form, daher wurde ich wütend, als ich sie übereinstimmte. ~~ Überprüfen Sie es richtig ~~
Außerdem scheint das Ziel die Beschriftung jedes Pixels mit dem Index der Eingabeklasse abgleichen zu müssen. Mit anderen Worten, wenn es 20 Klassen gibt, muss die Zielbeschriftung einen Wert von 0 bis 19 haben.
Recommended Posts