最新人気サービスを支えるディープラーニング
本連載の最終回となる今回は、ディープラーニングの実際の使われ方をいくつかの事例を交えて紹介しよう。実際、私達はすでにディープラーニング技術を知らず知らずのうちにウェブ上で使っている。このことは、2015年3月に開催されたNVIDIAのイベントにおいて、米GoogleのSenior FellowであるJeffery Dean氏が行った発表からも明らかだ。Dean氏は、「Googleの画像検索サービスや道路画像表示サービスからAndroidの音声認識など、すでに47種類のサービスでディープラーニング利用している」ことを発表した。他にも、中国Baiduは米Googleと同様に音声認識、画像認識、コンテンツ連動型広告サービスなどでディープラーニングを実用化しており、米MicrosoftもBingの検索や音声認識に同技術を利用している。米Facebookも同様に力を入れており、ディープラーニングはすでにさまざまなウェブサービスの裏側で使われているのだ。
ここで紹介するディープラーニングの事例は、すでに商用化されているものを中心に取り上げていく。研究開発段階の事例まで含めると、あまりに点数が多くなってしまうからだ。このような最新の研究事例や製品開発に興味がある方には、9月18日(金)に虎ノ門ヒルズで開かれる「GPUテクノロジー会議GTC Japan 2015」への参加を強くお薦めする。参加者2000人規模の大きい会議で、しかも参加費が無料なのだ。
画像認識
前回も説明したConvolutional Neural Network(以下、CNN)は、現在最も多く使われているモデルのひとつだ。米Googleのクラウドサービスの一つであるGoogle Photosの画像検索や、米MicrosoftのBing画像検索、米YahooのFlickr画像検索など、ウェブ画像検索ではすでに標準的になっている。CNNは、画像のコンテンツを直接認識することにより、テキストタグだけでは不明瞭な画像へのタグ付けを可能にし、検索の精度向上に貢献できるわけだ。クラウド画像ストレージの覇権をめぐり、米Google、米Yahoo、米Facebookによる激しいシェア争いが繰り広げられている現在、ディープラーニングによる画像認識技術は、シェア獲得のための重要な切り札となっている。日本国内でも、NTTコムのクラウドオンラインストレージサービスであるマイポケットがいち早くディープラーニングを写真整理に応用している(図1)。同サービスのディープラーニング技術は、東大発新興企業であるモルフォのサービスを採用していることが、今年7月のプレスリリースで発表された。
ライフイベント・出来事ごとに写真を自動分類する「AIラベリング」機能をオンラインストレージサービス「マイポケット」に搭載
クラウドサーバ上でディープラーニングによる画像認識が行われる一方で、エッジ側、つまり携帯端末上でのディープラーニング画像認識による写真整理も実用化されている。2014年12月から、モルフォはクラウドサービスだけではなく、スマートフォンでも動くディープラーニング画像認識器の提供を開始している。ほとんどのサービスがクラウド上でディープラーニングによる認識を行う中で、エッジ側での実用化は、オンライン・オフラインの制限なくサービス応用範囲を広げ、さまざまな場面でより多くのユーザが、ディープラーニング技術の恩恵を受けられることになる。
監視カメラの分野では、2012年設立のベンチャー企業であるABEJAが、小売業や外食店舗内にいる消費者の購買行動のデータ分析に、ディープラーニングを応用している。同社のサービスでは、店舗内のカメラからの画像を入力として、店舗内のエリアごとの通過人数や来店客の属性や性別などを画像認識により把握できる(図2)。同サービスはクラウド上で使われ、カメラを設置するだけで店舗内の来客情報を自動的に管理できる。一番の特徴は、POS(point of sales)による購買記録だけではわからない情報、つまり購買に至らなかった人数も含めた来店者総数がわかることだ。POSのデータと来店者総数をもとに、来店者の何%が購買に至ったかを示すコンバージョン率を算出できる。
自然言語処理
自然言語処理(Natural Language Processing:NLP)とは、ウィキペディアによると、「人間が日常的に使っている自然言語を、コンピュータに処理させる一連の技術」とある。つまり、テキスト情報を基にその意味を抽出したり変換したりする処理のことだ。NLPのより具体的な処理としては、文章の自動要約、機械翻訳、質疑応答、トピック分類などが挙げられる。しかし、画像認識分野でのディープラーニング技術の躍進が目覚ましいのとは対照的に、NLPではまだ実例が少なく、研究開発段階と言えるだろう。そんな数少ないディープラーニング技術の成功例として、スマートフォンニュース閲覧アプリ「SmartNews」が挙げられる。
SmartNewsは2012年設立のベンチャーであるスマートニュース社が開発しており、すでに日米両国で1000万件以上のダウンロード数を記録している人気アプリだ。このアプリの特徴は、1日あたり1000万以上の大量の記事をウェブでクロールして収集し、そのテキスト情報を分析して10数種類のカテゴリに自動分類するところだ(図3)。
ニュースの自動分類は、まず記事のテキスト情報(タイトル、本文など)を基に「特徴ベクトル」を算出し、その特徴ベクトル同士の距離を用いて行われている。SmartNewsが優れているのは、高速かつ分類精度の高い特徴ベクトルの抽出にディープラーニングを使い、シンプルで直感的なUIで世界中からの良質な情報をユーザに届けているところだ。スマートニュース社は、記事中のテキスト情報だけでなく、CNNによる画像の認識でのトピックの分類も検討中ということだ。
音声認識
画像認識と同様に、音声認識の分野でもディープラーニング技術は活用されている。音声が認識されるまでの過程は、以下の3つに大別される。まず音声波形を周波数解析してメル周波数ケプストラム係数(MFCC)といった特徴量にする(音声区間検出)。次にその特徴量から、「あ」や「わ」などの音素を推定して音素列を作成し、単語にあてはめる(音響モデル)。そして最後に、単語間の組み合わせを確率的言語モデルで最適な形で割り出し、文の推定を行う(言語モデル)(図4)。ヤフー(以下、Yahoo! JAPAN)は、今年5月にプレスリリースにてディープラーニングをベースにした音声認識エンジンを発表している。同エンジンは、「Yahoo!検索」や「音声検索」などで蓄えられたデータを基に、2013年から開発を開始し、2年余りで製品化を達成している。ディープラーニングは音声区間検出と音響モデルに使われ、雑音やノイズの多い騒音下での大幅な認識向上を実現し、「YJVOICE」など合計18のYahoo! JAPANスマートフォン・タブレットアプリケーションやウィジェットなどで実装されている。
画像引用元:ITmediaニュース
ヤフー、音声認識にディープラーニング導入 騒音下での認識精度向上
同様に中国Baiduも、ディープラーニングベースの音声認識エンジン「Deep speech」を発表しており、騒音下の劇的な認識率向上を実現している。Deep speechはYahoo! JAPANの技術とは異なり、音声区間検出と音響モデルだけでなく、言語モデルまでディープラーニングで実装している。入力から出力までend-to-endでRecurrent Neural Networkを採用し、音声時系列データに対応している。
新たなハードウェアの選択肢FPGA
ディープラーニングに必要な高速演算処理を実現するGPUは、画像描画処理にタスク特化した専用チップである。一方Intel CoreやAMDのAシリーズAPU、モバイル機器に使われるARMのCortexなどのマイクロプロセッサは、汎用的なチップであり、さまざまなタスクに対応できる。そして両者の中間的な存在として、FPGA(Field-Programmable Gate Array)がある。そのFPGAが、最近ディープラーニング技術に対しても使われるようになってきている。
実際、米Microsoftは、「Bing」の検索機能をFPGAで実装している。FPGAはNVIDIAのGPUと比較すると省電力だが、演算処理能力に劣る。しかし、Microsoftのように大規模なデータセンターを所有している企業にとって、省電力というのは大きな魅力だ。データセンターに搬入されたサーバは、そうそうすぐには取り替えられないため、既存システム環境の電力効率向上は重要な問題なのだ。米MicrosoftのシニアリサーチシステムエンジニアであるAndrew Putnamは、PCworldに対するインタビューで、FPGAを活用することについて、「データセンターにある比較的古いマシンに柔軟に適応し、新しい命を吹き込める」と語っている。Putnam氏の開発チームが採用しているFPGAボードが「Catapult」である(図5)。
写真引用元:PCworld
Microsoft, Baidu find speedier search results through specialized chips
米IntelもFPGAボードの重要性をいち早く認識し、今後のIoT(Internet of Things)時代に向けたチップ競争に勝つためにAlteraを総額2兆円で買収した。今年6月に開催された計算機アーキテクチャ国際会議ISCA2015で、IntelはXeonとFPGAを組み合わせたプラットフォームを2016年に出荷予定だと発表した。中国Baiduは、プロダクションサーバにFPGAを採用し、音声認識から画像認識などのサービスで、さまざまなディープラーニング技術を運用し、CPUやGPUと比較して電力効率向上に成功している。クラウドサービスを運用する上で、FPGAは電力効率よくスケールアウトさせる選択肢の一つとして有効だろう。
ディープラーニングを実用するポイント
最後に、これからディープラーニングを活用していきたいと考えている方々に、実用化を成功させるためのポイントをいくつか紹介したい。今年1月にアメリカのサンフランシスコで開催されたディープラーニングの国際会談で、米GoogleのシニアリサーチサイエンティストであるGreg Corrado氏は、実用化について以下の3つのポイントを指摘した。
- 学習データの有無(製品化には大量のデータが必要)
- 処理速度の許容レベル
- エキスパートの存在
学習データの有無
ディープニューラルネットワークの性能を最大限引き出すためには、大量のラベル付きデータが必要だ。画像では数百、数千万画像のオーダーは常識になりつつあるし、現在製品化されている9割以上が、ラベルが必要な教師あり学習のディープニューラルネットワークだ。相当量のデータを揃えるのは大変な労力がかかるため、すぐに使えるデータがあるかないかは、大きな差異となる。
処理速度の許容レベル
一般的に、ディープラーニングで学習するモデルは、大量の演算が必要となる。GPUを前提とするなら処理速度も大幅に短縮できるが、GPUを使えないプラットフォームや環境では、相応の演算処理最適化をしない限り、ディープラーニング技術の運用は非常に難しい。
エキスパートの存在
最後に、ディープラーニングを実装しているオープンソースはあるものの、製品レベルのチューニングや、パラメータ設定、学習データの精選の仕方など、製品開発を成功させるための細かい課題が大量にある。ディープラーニングはまだブラックボックスとして論理的に解明されていない部分も多く、あらゆる問題に大して柔軟に対応し、効率的に開発を進めていくにあたっては、機械学習の経験豊富なエキスパートの存在が欠かせない。
もしこれらの条件を満たしているなら、是非ディープラーニングを使ってさまざまな分野で、パラダイムシフトにつながるようなイノベーションを起こしてほしい。
【参考文献】「日経エレクトロニクス2015年6月号」
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- AIを支えるハードウェアとライブラリ
- ニューラルネットワークのモデルのバリエーション
- GoogleとMicrosoftのAIプラットフォーム【前編】
- そもそもディープラーニングとは何か?
- GoogleとMicrosoftのAIプラットフォーム【後編】
- 大規模言語モデルの自然言語処理「Transformer」モデルの仕組み
- ハイプサイクルに登場する技術②ー エッジAIや組み込みAI、AIチップ
- FPGAのXilinxが年次カンファレンスを開催。データセンター、5G、自動運転にフォーカスしたキーノートを紹介
- de:code 2017セッションレポート:CNTKでディープラーニングを始めるには
- インテルがAIにフォーカスしたイベント「インテルAI Day」でPreferred Networksとの協業を発表