ITmedia NEWS > AI+ >
ITmedia AI+ AI活用のいまが分かる

絵文字がお題の“借り物競争”ゲーム 審判はAI、画像認識と正誤判定が早い! 開発の工夫を遊んで学ぶ遊んで学べる「Experiments with Google」(第3回)

» 2022年03月30日 18時00分 公開
[佐藤信彦ITmedia]

 「Experiments with Google」は、Googleが人工知能(AI)や拡張現実(AR)といった最新技術の可能性を示すために、実験的な応用例を紹介するショーケースだ。膨大なコンテンツを公開しており、その多くはスマートフォンやPCで試せる。

 この連載では、多種多様な応用例の中から興味深いものをピックアップ。実際に遊んだ体験レポートを通して、裏側にある技術の解説を行っていく。

 読者の皆さんも、ぜひ自分の手で試しながらその仕組みを学んでもらえたらうれしい。きっと、最新技術の魅力に気付くはずだ。

絵文字と同じものを探せ! 「Emoji Scavenger Hunt」を遊ぶ

 連載3回目の今回は、“AIが審判を務める”借り物競走のようなゲーム「Emoji Scavenger Hunt」を遊んでみる。

photo 絵文字を使ったゲーム「Emoji Scavenger Hunt」(出典:Google)

 Emoji Scavenger Huntは、スマートフォンの画面に表示された絵文字に一致するものを探してカメラで写すゲーム。絵文字と同じものかどうか判断する審判を務めるのは、AI(機械学習を活用した画像認識アルゴリズム)だ。

 例えば、お題が「Tシャツ」の絵文字だったら、スマホのカメラで実物のTシャツを写さなければならない。ただし、正解できるまでのんびり探していては駄目だ。制限時間があり、時間内に正しいものを写せないとゲームオーバーになってしまう。きちんと正解すれば制限時間が10秒延びて、次の問題で少し余裕ができる。

 とはいえ制限時間が増えたからといって、安心は禁物。なぜなら、正解して先に進めば進むほど問題の難易度が上がるからだ。実際にプレイすると分かるが、絵文字で示された物を探して家中を駆け回る羽目になる。

 パーティーなどで友達と競ったら、きっと盛り上がるだろう。

Emoji Scavenger Huntの遊び方を説明するビデオ(出典:Google)

正解を探して、家の中を走り回れ!

 今回のEmoji Scavenger HuntはWebアプリケーションだから、スマホで簡単に遊べる。カメラ付きノートPCでもプレイ可能だが、ノートPCを持ったまま走って転んだら目も当てられないのでお勧めしない。もちろん、スマホの場合もゲームに集中しすぎてケガをしたり物を壊したりしないよう注意しよう。

 Webサイトにアクセスして「LAUNCH EXPERIMENT」をタップすると、ゲームが始まる。このとき、スマホは音が出る設定にしておくといい。効果音やBGMが流れて楽しいし、ゲームの結果を読み上げてくれる。

photophoto
photophoto Emoji Scavenger Huntの画面(撮影:筆者、出典:Google)

雑に写しても正解にしてくれる 誤認識はご愛嬌

 それでは、早速プレイしよう。スタートしたら画面にお題の絵文字が大きく表示され、すぐカメラに切り替わる。第2回で紹介した「Giorgio Cam」と違って外側カメラが使えるから、とても楽だ。

 第1問で与えられた時間は20秒。絵文字から判断するに「Tシャツ」と思われる。

 確か床に置いていたはずと、そちらへ急いでみた。Emoji Scavenger Huntは、カメラに写ったものをリアルタイムで認識して名前を読み上げてくれる。丸めてあったセーターとTシャツを誤認識したのか、「BATH TOWEL」(バスタオル)など写していないものを読み上げることもあった。

 クシャクシャのTシャツでは正解できないと思い、片手で広げようとバタバタしていたらクリアできてしまった。残り時間14秒なので、10秒加算され、制限時間は24秒となる。さぁ、「NEXT EMOJI」をタップして次の問題へ進もう。

遊んだ様子を撮影した。実際の雰囲気を感じ取れるので、ぜひ見てほしい(撮影:筆者、出典:Google)

 第2問の「靴」は、サンダルでごまかして正解。なお、正解の前に「BASKETBALL」(バスケットボール)と読み上げたのは、画面に一瞬入った三毛猫を誤認識したようだ。

 第4問の「電源プラグ」には苦労した。分かりやすい形なのにまったく認識されず、背景や向きを変えたり、手が入らないよう床に置いたりしたがうまくいかず。最終的に、壁のコンセントと一緒に写したら、残り時間3秒でぎりぎり成功した。

 続く「靴下」は履いたままの状態でOK。「ディスプレイ」はテレビを写すも正解できず、ノートPCを広げたらOKになった。手前のキーボードが奏功したようだ。

 第8問は「花」だが、部屋のどこにも花など飾っていない。いろいろな観葉植物を写したが認めてもらえなかった。あえなく制限時間が来てしまった。正解は7問。初めてにしては上出来だろう。

引き出しを開けたら即OK 認識速度の速さに驚き

 プレイ2回目の第1問は、前回苦労した「電源プラグ」。もうコツはつかんだ、壁のコンセントと一緒に写せば楽々クリアと喜んだのに、何を誤認識したのか移動中にいきなり正解してしまった。次の「Tシャツ」も広げようとしていたら袖の部分で認識されたのか正解になった。

 第3問は「皿、フォーク、ナイフ」の絵文字で、何を写せば良いか分からない。認識しやすそうなフォークを出そうと引き出しを開けたら、クリアできた。正解の読み上げ結果によると、皿を写せばよかったらしい。それにしても、認識速度の速さには驚かされる。

 第4問の「ズボン」は自分の履いているものを写し、第6問の「トイレ」はトイレまで走ってクリアした。第7問の「時計」は腕時計でOK。

 第8問は、急に言われても困る「目玉焼きの入ったフライパン」という無理難題。ダメ元でフライパンだけ写そうと鍋の入っている引き出しを開けたら、それだけでうまくいった。

 第9問の「バスケットボール」は、別の丸いものでクリアできるかもと試したが駄目だった。仕方なく「QUIT」をタップしてギブアップ。今思えば、三毛猫でだませた可能性はある。もったいないことをした。

動画を見れば認識速度の速さが伝わると思う(撮影:筆者、出典:Google)

認識しやすいものが複数写ると、AIは判定を間違える?

 ギブアップだと成績が表示されなかったから、もう1回挑戦してみた。

 「手」は自分の手を写して楽勝。「電球」「バスタブ」「口紅」は何かを誤認識して正解できた。口紅は、赤い毛布のおかげだろうか。

 「鍵」は、猫と一緒だったせいかうまくいかず、猫がフレームアウトした途端に認識した。認識しやすいものが複数あると、うまく処理できないようだ。

 最後の絵文字は「アイスクリームの入った皿」。これまでに出題された「コーヒー入りカップ」「食べ物の入った皿」は、いずれもカップや皿だけで正解した。そこで、いろいろなカップや皿を見せたが正解に至らず、時間切れに。ゲームオーバーすると正解が読み上げられないので、正解は分からずじまいだ。

誤認識もかなり多い(撮影:筆者、出典:Google)

慣れ親しんだ絵文字を使って、画像認識技術を紹介

 Emoji Scavenger Huntは、機械学習を活用して画像認識する技術を披露するために作られたWebアプリケーション。興味を持ってもらえるよう、多くのインターネットユーザーが慣れ親しんでいる絵文字を使ったゲーム形式にした。

 画像認識を行う際の機械学習はニューラルネットワークで処理。学習はGoogleの機械学習ツールキット「TensorFlow」で行った。Webアプリケーションとして動かすために、JavaScriptで記述できる機械学習ライブラリ「Tensorflow.js」を活用している。

 画像情報から物体を分類する部分は、動作を軽くしてモバイル環境向けに最適化した学習済みモデル「MobileNet」に任せた(解説ブログ)。

 ただし、MobileNetには一つ問題があった。例えば、ある犬の画像を与えると「ゴールデンレトリバー」と分類するなど、「犬」といった大まかな分類をしてくれず、出力結果が細かすぎるのだ。確かに、これではゲームの難易度が高すぎる。

 そのため、MobileNetから受け取った分類結果をより大きな概念に分類し直す処理層を追加した。具体的には、1000種類ほどあるMobileNetの分類結果を400種類ほどにまとめられるよう、新たに学習させた層を加えている。

photo 細かすぎる分類を400種類にまとめた(出典:Google)

 また画像を分類して、適合率が高い判定結果の上位10項目のうち1位か2位が絵文字と一致したら正解と判断する仕組みにした。厳密に1位だけを正解とするよりも、こうした方が楽しめるゲームになった。

 例えば「キーボード」というお題のとき、キーワードを手で覆ってしまった場合、分類結果の1位は「hand」、2位は「keyboard」になる。この場合、厳しく1位だけを正解としていたら、いつまでもクリアできず、つまらないゲームになっただろう。

photo 正解の判定基準も緩めた(出典:Google)

 さらに、Emoji Scavenger Huntの読み上げ機能は、サーバに頼らないで音声合成する「SpeechSynthesis API」を使用。サーバと通信せずテキストを音声へ変換できるので、高速処理が可能だ。その結果、カメラのフレームに入った物体を次から次へと読み上げられるようになった。

 Emoji Scavenger Huntの処理は、カメラから画像を取得し、写っている物体を分類して正解かどうか判断する、というシンプルなものだ。しかし楽しく遊べるゲーム性を持たせ、高速処理するために、さまざまな工夫が施されている。

 機械学習などの動作原理やアルゴリズムを理解できたとしても、実用的なアプリケーションを作るとなると、こうしたノウハウが欠かせない。その点、Emoji Scavenger Huntには学びが多い。ソースコードも公開されているので、教材としても役立つだろう。

Copyright © ITmedia, Inc. All Rights Reserved.