茨城エンジニアのPython開発日記

茨城のITベンチャー企業ではたらく2年目エンジニア。Pythonで色々なものを作成中。

お手軽2クラス分類の限界調査1

ブログから記事を見つけたい場合はこちら

 

ブログ地図 - 茨城エンジニアのPython開発日記

 

こんにちは松原です。寒いです。

 

今日は「簡単に作成できる2クラス分類はどの程度の精度なのか?」という点を調べてみました。

家で簡単に作れる識別器がどの程度のものなのか、把握しておいて損はないので。

めちゃくちゃ荒い調査ですので、調査の前の前調査くらいに思ってください。

 

状況と結論はこんな感じ。

 

■状況

・2クラス分類

googleの公開しているresnetを転移学習

・学習画像は50枚ずつ

・バッチサイズ8, エポック数20

・テストデータ20枚ずつ

■結果

正解は(36/40)

 

分類するクラスは、犬の中でも特にかわいいパグと柴犬を選びました。

ちなみに私のTwitterアイコンのパグは、通り過ぎる幼稚園児に「犬みたいなのがいる」と犬と仮定された上で犬ではないと結論づけられたり、「あれパグかなブルドッグかな?」「ブルドッグじゃない?」とパグとブルドッグの2種類まで絞ったうえでブルドッグと判断されているそうです。かわいいです。

 

で、ソースコードはこれをほぼ流用。

事前学習済みモデルを学習させてみた - 茨城エンジニアのPython開発日記

 

転移学習元のモデルはこれ。

https://tfhub.dev/google/imagenet/resnet_v2_152/classification/5

 

パグ画像20枚に対してはこんな識別結果。

f:id:tottorisnow33:20211017135359p:plain

柴犬画像20枚に対してはこんな識別結果。

f:id:tottorisnow33:20211017135441p:plain

 

これで色々調べていって、100枚程度の画像でどのくらいの精度を簡単に実現できるのか、体系だてて調べていきたいです。

今日はその前準備くらいということで。

 

それではまた今度。