Google AutoMLは高度なAIを自動で生成、ラーメンを見て販売店を特定

Googleは高度なAIを自動で生成する技術「AutoML」を発表し、その応用事例を続々公開している。AutoMLは人間の研究者に代わり高度なAIを生成する技術で、ラーメン判定専用AIを生成した。アルゴリズムはラーメンの写真を見るだけで、どの店舗の料理かを判定する。

出典: Google

ラーメン判定専用AI

このラーメン判定専用AIはデータサイエンティストであるKenji Doiより開発された。対象はラーメン二郎という名前で営業している41店舗のラーメンで、生成したAIにその写真を入力すると、それがどの店で調理されたかを高精度で判定する。

盛り付けが似ている

ラーメン二郎は東京都港区の三田店が本店で、ここで修業した弟子たちが都内を中心に出店し営業している。このため、調理方法や盛り付けがよく似ており、ラーメンの写真からそれがどこの店で出されたものかを判定するのは難しい (上の写真、3店舗で出されるラーメン、盛り付けやどんぶりの形状が似ており、また、テーブルの色は赤で統一されている)。

汎用AIで判定すると

これはAIにとっても難しいテーマで、汎用アルゴリズムでは判定できない。因みに、ラーメンの写真をGoogle Cloud Vision API (イメージ判定クラウド) に入力してみると (下の写真)、アルゴリズムはこれをDish (器に盛った料理) と判定する。これにCuisine (料理) やFood (食べ物) が続き、Ramenは7番目に登場する。汎用AIは料理であると判定するが、ラーメンというクラスを判定するのは難しいことが分かる。更に、それがどの店のものかは全くカバーされていない。(この写真は松戸駅前店で出される野菜大盛り (ヤサイマシ) ラーメン。)

出典: Google

専用AIを開発

このためDoiはラーメン種別を判定できる専用AIを開発した。具体的には、異なる種類のアルゴリズムを併用するEnsemble Modelという手法を使った。ここでは三種類のアルゴリズム(Inception、ResNet、SE-ResNeXt) を使い、Hyper-Parameter Tuningという技法で、それぞれのネットワーク構成を最適化した。更に、教育データはData Augmentationと呼ばれる手法を使いデータを整備した。高度なニューラルネットワークを開発するためには、このようにデータサイエンティストによる膨大な手作業が必要となる。

これをAutoMLで自動化

AutoMLはこの複雑な工程を自動化するために登場した。アルゴリズムを教育する要領で、高度な専用ニューラルネットワークを生成する。このケースではラーメンの写真をAutoMLに入力し、専用ニューラルネットワークを開発した。Doiはどんぶりに盛られたラーメンの写真48,244枚を集め、そこから教育に適さない写真を抜き、47,970枚が使われた。各店舗で1,170枚の写真が使われた勘定となる。

判定結果は

写真は41店舗の名前でタグ付けされており、これを入力すると、AutoMLがこれらを判別できるニューラルネットワークを自動で生成する。完成したニューラルネットワークを使って、実際に判定試験をすると、その精度は94.5%であった。試験では50枚の写真が使われ、その結果がマトリックスで公開された (下の写真)。対角線の部分が50枚のうち正しく判定した枚数を示している (この平均精度が94.5%)。マトリックスを子細に見ると、ひばりが丘駅前店で判定精度が悪く (82.0%)、多くのケースで桜台駅前店のラーメンと取り違えている。判定精度の範囲は100%から82.0%で高度な専用AIが生成されたことが分かる。

出典: Google

判定の手掛かり

AutoMLで生成したアルゴリズムはなぜ正確に店舗を特定できるのか、その理由については解明されているわけではない。どんぶりの形状やテーブルの色はどの店舗も同じで、アルゴリズムはこれらを手掛かりに店舗を特定することはできない。一方、チャーシューの切り方や野菜の盛り方はよく似ているが、全く同じというわけではない。店により多少の偏りがあり、アルゴリズムはこれらを指標として判定している可能性が高い。アルゴリズムはブラックボックスで、これを解明するためには、更なる研究が必要となる。

応用範囲は広大

ラーメンの写真からそれが調理された店舗を特定できることで、どんなソリューションを提供できるかについては語られていないが、ラーメンだけでなく他の料理の種類を判定できると応用範囲はぐんと広がる。料理の種類と摂取カロリー量を紐づけると、健康管理のためのアプリができる。アプリで食事の写真を撮ると、専用AIが自動で摂取カロリー量を計算し、ダイエットや糖尿病管理に役立つ。例えば、スパゲッティナポリタンを注文してその写真を取ると、カロリー量は400kcalで、糖分は80グラムなどと表示され、食事の量を正確にモニターできる。これからはデータサイエンティストがいない企業でもAutoMLを導入することで、誰でも高度なAIを開発できる。