質問: セマンティックセグメンテーションの評価方法 https://jp.mathworks.com/help/releases/r2018a/vision/examples/semantic-segmentation-using-deep-learning.html 上のurlを参考に自分で用意したデータセットでセマンティックセグメンテーションを行ったのですが,セマンティックセグメンテーションの評価法がわかりません.精度で評価する場合,meanaccuracyとglobalaccuracyのどちらを使用すればよいのでしょうか?
回答: こんにちは、そのほかにもf値やiouなどがありますが、どの指標がよいかは、kodai sato様の目的によるので少なくとも私には明確には答えられないような気がします。 例えばglobal accuracyの定義は以下のようになっています。下のurlをそのまま引用しています。 https://jp.mathworks.com/help/releases/r2018a/vision/ref/evaluatesemanticsegmentation.html "globalaccuracy is the ratio of correctly classified pixels, regardless of class, to the total number of pixels. use the global accuracy metric if you want a quick and computationally inexpensive estimate of the percentage of correctly classified pixels." こちらは単に、全ピクセルのうち、どのくらいが正しく分類できているか示しています。シンプルでわかりやすい・すぐに計算できる一方で、例えばラベルが非常に不均衡な場合(aが100に対しbが1しかない)すべてaと答えれば精度はかなり高くなります。 accuracyは、"for each class, accuracy is the ratio of correctly classified pixels to the total number of pixels in that class, according to the ground truth. in other words, accuracy score = tp / (tp + fn)" と書いていて、各クラスの精度を平均したものが、meanaccuracyとして算出されます。これは各クラスの平均を出しているので、さきほどのような問題はましになる一方、"for example, labeling all pixels "car" gives a perfect score for the "car" class (although not for the other classes). "とあるように、解釈ミスを引き起こすこともあります。 ほかにiouなどもありますので、自分の目的が果たされているか/いないかを明確に表す指標を探し、それを軸に議論するのがよいのではないでしょうか。