AIに自分の顔を判定させたら失敗した話(番外編)


概要

本記事は、こちらの記事の番外編になります。
○○に似てると言われ困ったので、AIに判定させてみた

AzureのCustom Visionを使って、自分の顔が有名人に似ているかどうか判定させたところ、
学習させるデータが間違っていて失敗したというお話です。 

学習データの用意

本編と同様にスクレイピングで画像を集めます。

python scraping.py -s hoshinogen  -n 70

まずは通常の星◯源さんの画像を集めて、そこから精度の悪そうな画像は手動で省いていきます。

この時に、星◯源さんといえばメガネが特徴的なので、
メガネありなしのデータで学習させればメガネありなしVerで自分の顔判定できるのではと思い、
メガネありの画像をスクレイピングしました。

python scraping.py -s hoshinogenmegane  -n 70

ここから失敗へと向かいます。

Custom Visionで学習させる

まずはCustom Vision上で「星野源」「メガネあり」「メガネなし」でタグを作り、
それぞれに紐付けて画像をアップし、学習させていきます。

準備ができたので、テストしていきます。

結果判定

自分もメガネありなしで自撮りを済ませ
AIに判定させてみると、非常に高い数字が出ました。
・メガネありの評価

・メガネなしの評価

おお、こんな似てたんだと思うわけです。
他の人も判定してみようと思い、ムロツヨシやイチローなど、
幅広い人で試してみました。

あまり似てないであろう人たちもみんな似てるという結果が返ってきました。
ここでようやく気が付きました。

これ、ただのメガネかけてるかどうか判定させてるだけだ……

学習させたデータが1人だけで、かつメガネありなしだけだったために、
全てメガネで判定されてしまうという結果に

以上、失敗した話でした。
メガネの有無を判定させるAIの使い道を考えましたが、
特に思いつかなかったのでアイディアあればこっそり教えてください。

まとめ

今回失敗してみて、失敗が早い段階でわかるのもプロトタイピングの良さかなと思いました。