こんにちは。5月からルグランでインターンをさせていただく山邊航太です。
私はこの4月から大学1年生になりました。1年生からインターンを始める人は少ないのではないかと思います。周りの友達からも、「バイトなにやってるの?」と聞かれ、「インターンなんだ」と答えてもインターンについて理解してもらえることは殆どありません。
インターンというのはどういうことをやるのか、私も分かっていないことが多いのですが、ブログを通じて、具体的に書いていこうと思います。
インターンの初日は、CoderDojo鎌倉で開催された「画像認識クラウドAIを体験する」というワークショップに参加させていただきました。CoderDojoは、7〜17歳の子どもを対象にしたプログラミング道場で、2011年にアイルランドで始まり、世界では85カ国・1,600の道場、日本では全国に138以上の道場があるそうです。CoderDojo鎌倉は、鎌倉駅周辺で開催される無料のプログラミング道場です。
第1回目となるこのワークショップは、今話題のAIについて実際に体験して、いったいAIというのはどんなことが出来るのかを理解するための内容でした。
まずAIについてですが、最近多く話題に上りますが具体的に何が出来るのか正確に把握している人は少ないのではないでしょうか。私も、ディープラーニングや画像認識など聞いた事はあるけれども、いったいそれが何なのか、どうすれば使いこなせるのか、全く分かっていません。
昨年、Twitterに登場したあるアカウントが話題になりました。ラーメン二郎という全国41店鋪もあるラーメンチェーン店があります。都内にも24店鋪あり、一部の人たちから絶大な人気を誇っています。そんなラーメン二郎のラーメンは店舗によって盛り付けやお皿が様々です。そこで、ラーメン二郎のラーメンの画像を認識して、どの店舗のラーメンなのかを識別する@jirou_deepというアカウントが登場しました。これはAIによる画像認識を使ったもので、何かを認識するためにはディープラーニングが不可欠になっています。ディープラーニングは深層学習ともいわれていて、簡単に説明するとタグ付けされた膨大な量のデータを読み込むと言うことです。その際に特徴量と言うものがキーワードになってきます。先ほどのラーメン二郎を例にすると、まず店舗ごとのラーメンの写真を、店舗名をタグ付けしてAIに学習させます。その時AIは自分でそれらのラーメンの画像から特徴量、すなわち目の付け所を見つけます。そうすると、ラーメンの画像が与えられた時に自分で見つけた特徴量を基に、ラーメンを識別します。
今回のワークショップではIBMのWatsonというクラウドAIを利用して、画像認識を体験しました。まず任天堂のキャラクターであるピノキオ、クリボー、ヨッシーを識別する、というデモンストレーションをワークショップの講師である佐藤哲也先生が見せて下さいました。それぞれのキャラクターの写真を約100枚(これを教師データという)をWatsonのクラウド上にアップロードすると、AIがそれらの画像を学習します。その後、ヨッシーの画像をWatsonに渡すと、それぞれのキャラクターである確率の割合を表示してくれます。またドラえもんのキャラクターである、ドラえもん、のび太、ドラミを使った画像認識も実践しました。今回は画像認識の精度を上げるために、上記の3人のキャラクターに加えて、ヨッシーも学習させました。そうすることによって、例えばドラえもんの画像をWatsonに渡した際に、のび太、ドラミである確率が低いのに加えて、ヨッシーである確率も低いのでドラえもんであるということにより確証が持てる、という訳です。このあたりのことはかなり専門的な内容になり、私も理解できていないのですが、とにかく画像認識の精度向上の為には、関係のないキャラクターを学習させることが必要だということが分かりました。
ここで、ドラえもんとのび太の2人が写っている画像をWatsonに渡すとどうなるのかということを説明していただきました。この場合、下の写真のように、のび太の可能性が高い、という結果になりました。画像ではドラえもんの姿がしっかりと確認できるのに、どうしてのび太である確率が高いのでしょうか。
まず第一に、画像を占めるのび太の面積が大きいという事。これはやはり画像の大部分を占めているものにAIが着目してしまうということです。そして画像認識の仕方。この場合画像の左半分がのび太で、右側のある一部分がドラえもんとなっていますが、一つの画像の中で複数の物体を認識する事にはまだ課題があるようです。
また、ワークショップでは、YOLOという AIが紹介されました。YOLOでは、複数の物体を検出することができ、さらに動画の中に映っている人や動物や物をリアルタイムで識別することができるそうです。
今回はAIというもののなかで、画像認識という分野について理解を深めることが出来ました。ワークショップでは100枚程の画像を使って学習させましたが、本来、最低でも2,000枚の画像を教師データとして学習させるそうです。
まだまだ出来ることが沢山あるAIですが、その出来ることを1つ1つ理解していきたいと思いました。AIについて興味を持ってみると、皆さんならではのAIの使い方を見つけられるかもしれません。
インターンの仕事を通して画像認識についての基礎的な知識だけでなく、最先端の技術にも触れることができました。これからも貴重な体験の数々をブログを通じて、書いていこうと思いますので、よろしくお願いします。