目的
Azure Cognitive Services の Custom Vision では Domain を General、Food、Landmarks、Retail の中から選択できます。Domain の選択が精度に影響するのか確かめたいと思います。
方法
スパゲティの分類に挑戦します。アリオ・エ・オリオ、ボロネーゼ、カルボナーラの画像を 30 枚ずつ用意しました。Project Type は Classification、Classification Type は Multiclass、Domain はとりあえず General でプロジェクトを作成します。Domain はプロジェクトの設定で変更できるので、変更しては Train する、という作業を繰り返していくことにします。結果は Iteration として保存されます。Training Type は Quick Training を選択します。
予想としては、適切な Domain である Food を選ぶと精度が上がり、Landmarks や Retail では下がるでしょう。また、Compact は全体的にやや落ちるでしょう。
結果
Probability Threshold が 50 % のときの各 Domain の Precision、Recall、A.P. の値は次のようになりました。
Domain | Precision (%) | Recall (%) | A.P. (%) |
---|---|---|---|
General | 94.4 | 94.4 | 93.0 |
Food | 100.0 | 100.0 | 100.0 |
Landmarks | 72.2 | 72.2 | 87.4 |
Retail | 77.8 | 77.8 | 86.4 |
General (Compact) | 88.9 | 88.9 | 92.6 |
Food (Compact) | 83.3 | 83.3 | 92.7 |
Landmarks (Compact) | 83.3 | 83.3 | 90.6 |
Retail (Compact) | 77.8 | 77.8 | 87.3 |
概ね期待通りの結果となったのではないでしょうか。
その他
- Iteration を Delete して再度 Train しても結果は同じであるようです。
- 1 つの Azure Cognitive Services Custom Vision リソースに作成可能なプロジェクトの数は、無料の価格レベル F0 では 2 です。
- 1 つのプロジェクトに保存しておける Iteration の数は、価格レベルによらず 10 です。今回の実験は 1 つのプロジェクトに収まり、無料で済ませることができました。
- 次の公式ドキュメントを参考にしました : 「クイックスタート: 分類器を構築する」