dinky-spike559
@dinky-spike559

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

YOLOv5の学習結果を表したグラフの意味がわからない

解決したいこと

物体検出をしてみようとYOLOV5を使ってみたのですが、YOLOv5の学習結果のprecision、recallの意味が知りたい。

image.png
file:///media/cvmlab/8256BDFD56BDF1D1/sato/sato_yolov5/runs/train/20000s150kai/results.png

YOLOv5の学習が終わって結果を出してみると上図のようになりました。
ここでprecisionとrecallについてなのですが、これは評価時の指標であって学習時には必要のない値ではないのでしょうか。

もしかしたらvalにいれた画像での推論時の値なのかなと考えているのですが正しいのでしょうか。

また、そうだとした場合、この学習モデルは精度はいいのでしょうか。
自分なりに調べたのですがよくわかりません。あまりそのような記事が見当たりませんでした。
クラスは1つだけです。

0

1Answer

precisionとrecallについてなのですが、これは評価時の指標であって学習時には必要のない値ではないのでしょうか。

そもそも,「モデルが学習しているか」を知るために学習時の評価値は必要です.例えば,損失が低下しても適合率や再現率が低いままでは,適切に学習していると言えないことから,モデルの高性能化が必要である.という判断材料にできます.損失だけでは計りかねるのが現状です.

最低限,学習データに対して精度を出す必要があるので,学習データに対してどれだけフィットしているかを示す値の導出は必須です.

もしかしたらvalにいれた画像での推論時の値なのかなと考えているのですが正しいのでしょうか。

valに入れた画像での推論結果は,下段のグラフの値になります.

この学習モデルは精度はいいのでしょうか。

train/box_lossよりval/box_lossが下回っていることや,val/obj_lossが右肩上がりになっていることから,過学習が起こっていることがわかります.

モデルの知らないデータを使って,既知データよりも高精度で答えることができる,なんてことは起きたらいけないことです.

過学習が起きた.という事実からすると,与えた教師データより傾向の違う画像を入力にとる際に,悪い精度になる可能性が捨てきれません.

例えば「実っているトマトを識別するモデル」ができたとして,「机の上に乗っているトマトを認識」できるか,と言われれば,背景の傾向が違うことから識別できない可能性が捨て切れないです.

同様に,トマトの成長過程で立方体に抑制したものは形状の傾向が異なることから,トマトと認識できない可能性だってあります.

精度に関しては,trainに与えたデータとvaに与えたデータの傾向の違いでしか考察できないです.

0Like

Comments

  1. @dinky-spike559

    Questioner

    ご回答有り難うございます。
    大変、本当に大変参考になる考察をありがとうございます。

    もう一つ質問なのですが、右上の2つのグラフと、下の右から2つめのグラフについて、どちらもおかしな形をしていると感じたのですが、trainとvalにいれる画像によっては別におかしくないものなのでしょうか。
  2. 1クラスなので,一般には見ない形状していますね,ほとんどIoUに関する評価でmAPが表現されているような状態です.

Your answer might help someone💌