1.ディープラーニングが今熱い!
ディープラーニングとは?
ディープラーニングとは機械学習の一種で、ニューラルネットを何層も重ねたものを用いてクラス分類や回帰を行うための手法です。私たちが人を識別する時の脳におけるパターン認識と酷似しています。人を認識する際、人間は視覚や聴覚などを総動員して人を識別します。つまり複数の入力値(視覚や聴覚)を元に、階層的に人の全体像(身長や体格)を見て細部(目つきや声)を認識し、細部を見てはまた全体を認識しなおすというような、階層的で深いパターン認識のアプローチを採用している点が、従来の直列的解析手法と極めて異なるといえるでしょう。
これにはビックデータの3V(Volume:量, Velocity:速度, Variety:種類)も大きく関係があると言えるでしょう。つまりセンサーデータの多様化やストレージの廉価化が、小規模単一データにおける旧来型の直接的な解析表現に加え、従来にはあり得なかった複雑なデータの組み合わせを可能にしてきたという時代背景も、ディープラーニングのアルゴリズムの高度化を後押ししていると言えます。
今回の具体例は、このような脳の処理プロセスと似た「階層的処理」による画像認識を具体例として解説していきます。
2012年の6月にGoogleが機械学習で猫を識別できるようになった 、というニュースが国内でも話題 になりましたが、ここで用いられたのがディープラーニングです。ディープラーニングの手法自体は前述したように階層的である為、画像認識だけではなく、音声認識や自然言語処理等様々なデータとパターン認識に応用することが可能ですが、現在特に注目を浴びているのが画像認識への応用です。
ディープラーニングの人気に火をつけることになったのが、2012年11月に開催された一般物体認識のコンテスト(ILSVRC)です。ここで、ディープラーニングの第一人者、Geoffrey Hinton氏らのグループ(SuperVision)が他のグループと誤識別率10%以上もの圧倒的な差をつけて優勝した ことを皮切りに、ディープラーニングはその高い精度で注目されるようになりました。
2014年3月には、Facebookが開発した顔認識技術DeepFaceが精度97.53%という人間のレベルとほぼ互角の認識精度を記録したことが発表されました。
さらに驚くべきことに、ディープラーニングを用いた顔認識の精度は今なお向上しています。例えばLabeled Faces in the Wildという顔の画像と人名のラベルをセットにしたデータベースのサイトで公開されている、様々なアルゴリズムによる顔認識の成績に関する情報 を見ると、ディープラーニングを利用したアルゴリズムが軒並み好成績を収めていることがわかります。
極端な例では2014年12月の時点で、” Unrestricted, Labeled Outside Data”のカテゴリでトップの成績を収めているDeepID2は99.15%という極めて高い認識能を有しています。また、Googleではディープラーニングで画像の単純な識別をさせるだけではなく、自然言語処理技術と組み合わせて画像の説明をする自然な文章を生成することに成功しています 。
これを実現するためには画像に含まれる物体を正しく認識し、その位置関係を把握し("on”なのか”above”なのか、など)、その上で自然な文章で表現するといういくつもの難題があり、昨今の画像認識の進歩には目を見張るものがあります。画像認識だけではなく、Appleの音声アシスタンスのSiriなど音声認識の技術にも、ディープラーニングは導入されています。
これまでに挙げた例からも明らかなように、”tech giants”と呼ばれる一流IT企業はディープラーニング技術の獲得に力を入れており、M&Aや研究者の引き抜きといった激しい競争を繰り広げています。M&Aの例ではGoogle がDeepMind, Twitter はMadbitsというディープラーニング関連スタートアップを買収しています。また、研究者の引き抜きの例ではFacebookでニューヨーク大学教授のYann LeCun氏(後述) , BaiduではGoogleの猫認識をリードしたAndrew Ng氏といったディープラーニングの第一人者を迎え入れています。
このように今まさに”hot”なディープラーニングですが、未だその技術は発展段階にあり、ビジネスでの応用事例はまだあまり多くない状態です。
しかし、昨今ディープラーニングのビジネスへの応用を目指した動きが活発化してきています。例えば、Kaggleの前社長が立ち上げたEnlitic というスタートアップではディープラーニングの技術を応用してCTやMRIといった各種診断画像からガンを見つけ、医師の判断を助けることを目指しています 。海外だけではなく、日本でもディープラーニングに特化した企業が設立される など、国内においてもディープラーニングをビジネスにつなげようという動きは高まりつつあります。
触ってみよう!ディープラーニング
これまでの話でディープラーニングは遠い世界にあるものだと感じられたかもしれませんが、計算リソースが潤沢な今、ディープラーニングをもう少し身近に体験することが可能です。
それでは、早速ディープラーニングの威力を体験してみましょう。ILSVRC2013で好成績を収めたスタートアップであるClarifaiのホームページでは、ディープラーニングを利用した高性能の画像タグ付けを行うデモを提供しています。Clarifaiのホームページにアクセスし、好きな画像をアップロードすると自動的に画像のタグ付けが行われます。
実行結果の画面から、入力画像に付与されたタグを確認することができます。ここでは毛糸玉と趣味で作った編みぐるみの写真を自分で撮ったものを入力画像としました。ここで、この写真に「これは毛糸玉とくまの編みぐるみです」というコメントを付けてブログに書いたりすればウェブを検索することで正解を引き当てられてしまうかもしれませんが、これは自分でアップロード直前に撮った写真なので、ウェブ上に手がかりとなる情報は全くありません。それにもかかわらず、”toy”や”wool”など、かなり正確なタグ付けができていることがわかります。また、驚くべきことに画像中にあるモノだけではなく”handmade”という直接見ることができない情報まで推測できています。
従来の手法とどう違うの?
ディープラーニングは従来の手法よりも高い精度をだせるだけではなく、従来の手法でボトルネックとなっていたステップを自動化できるようになったという点で、従来の機械学習手法とは決定的に異なります。
それでは、従来の機械学習とディープラーニングを行う時のステップを比較してみましょう。
従来の機械学習ではデータを端的に表現できるような特徴を見つけ出すための特徴抽出というステップが必要になります。例えば、顔認識であれば顔のパーツの相対位置や大きさ、形等を計測してからそのデータを分類器に入力するという2つのステップを踏むことになります。この特徴量は認識したいものによって異なるため、飛行機を認識したければ飛行機用の、音声を認識したければ音声の、というように認識したい対象/分野ごとに異なる特徴を計測する必要があります。特徴抽出は従来各領域の専門家による人手で行われ、しばしば職人芸の領域であると言われました。また、専門家による特徴抽出がうまくいったかどうかで機械学習の精度が大きく左右されることも大きな課題でした。
このようにディープラーニングが特徴を自動的に抽出できるようになる様子は”feature learning(表現学習)”と表現されます。言い換えると、ディープラーニングでは特徴量まで丸ごと学習してしまうのです。これがディープラーニングが画期的と言われる所以であり、従来の手法とは一線を画すような高い精度を出せるようになった一因でもあります。