クラウド画像認識によるOCR(日本語)を比較してみた

昨日、ちょっとした依頼があり、レシートや通帳の画像からテキスト化の可能性を検討するためにクラウドOCRの性能を比較してみた。

 ここでクラウドOCRの比較といっても、それほど多くのサービスがあるわけではなく、お決まりのAIによる画像認識サービスの延長のOCRである。ということでメジャーな以下のサービスを試した。

 ・Microsoft Azure Cognitive Services Computer Vision API

 ・Google Drive のgoogle docs生成

本来はどちらもAPIで試すべきであるが、手軽に試してみたかったのでGoogleは手軽に、Azureのデモはocr_V2.0のプレビューということで日本語対応はしていないようであったためocr_v1.0を呼ぶコードを簡単につくり試した。

結論から言うと、当初期待した以上の認識精度を双方ともに出力できることがわかった。Googleの方が、通帳のような画像のサイズに比較して文字が小さい、印字が薄い、といった悪条件の画像においても安定した精度を維持していると見られる。Googleの優位点は、悪条件の場合、自動で画像を部分的に拡大して文字認識をしている点と考えられる。出力された文字のフォントサイズがばらばらで印字が薄い文字については、異常に大きなフォントサイズで出力されているためそのように考えた。AzureのV2.0ではどれぐらいこの点について改善されるか期待したい。

 レシートについては、大手コンビニ3社のレシートにおいて試したが、商品コードや合計金額、消費税、釣り、ポイントカードのポイントなどの数字についてはほぼ正確に認識できた。

 しかし、どちらのサービスも認識精度が極端に悪かったのは、半角カナ文字である。特に濁音や撥音の表記があると高い割合で誤認識をしている。漢字カナ交じり文では半角カナの後の全角漢字についても誤認識する傾向が高い。さらに、画像サイズに対して文字サイズが小さくなり、印字が薄くなると認識すらしない場合があった。リアルのビジネスの世界では半角カナはスペースを取らず情報を詰め込めるため、まだまだ多用される傾向があるため、クラウド画像認識によるOCRの普及は、この点をどの様にして改善するかが課題である。数字認識の課題としては桁区切り,の誤認識である、特に文字サイズが小さくなると発生しやすくなる傾向がある。

 評価後の感想としては、AIの適用全般に言えることだが、クリティカルなデータへの適用はまだ課題が多いが、それ以外の作業効率を高める補助機能としては十分使えるように成長しつつあると感じた。出力は認識単語単位に位置座標付きので出力されるのでレイアウト処理のプログラムは別途開発する必要があるが、サイトのスキャルピングや、多少のゴミが許容する大量のデータを簡単に収集したい場合には使えるサービスである。

無料オンライン講座の学生、 機械学習のベンチマークで グーグルの研究者に勝つ(MIT Tech Reviewより)

この記事によると、

「機械学習の無料オンライン課程を運営している小規模な組織であるファスト・ドット・エーアイ(Fast.ai)の学生が最近、グーグルの研究者が開発したコードを凌ぐ人工知能(AI)アルゴリズムを開発した。潤沢な経営資源を擁する企業しか高度なAI研究はできないかのように思われている中で、ファスト・ドット・エーアイの成功は重要だ。」

ということである。AI開発には資金がかかるため、日本企業のような小額投資では難しいと考えていたが、モチベーションがあればまだ勝てるチャンスはあるということだろうか。記事を読む限りでは、この学生達は特別新しいアルゴリズムを開発したわけではなく、通常の研究者がやってみようとは思わない”大量の単純作業”をこなすことで実現したらしい。例えば、”訓練用アルゴリズムに入力された画像が正しく切り取られたかどうかを確認するタスクなど”ということである。

 学生達のモチベーションは、データサイエンティストになって起業する、または高額の報酬を得るということであろうから、この結果は大いに刺激になったであろうと考える。

ディープラーニング転移学習(CNN)におけるグレースケール画像の取扱い(メモ)

通常のCNNRGBの3チャンネル入力で設計されている。

データ画像がグレースケールの場合どうネットワークを構築し入力するかというのが検討課題となる。本来であればグレースケールでオリジナルのCNNを設計すべきである。しかし、転移学習をしたい場合どうするか?

CNNのRGBの3チャンネルにグレースケールのデータを入力する方法が2通り考えられる。

① RGBのどれかの1チャンネルに0〜1の間の数値に正規化したグレースケールデータを入力し、残りの2チャンネルの値は0とする。

② RGBの3チャンネルに0〜1の間の数値に正規化したグレースケールデータの同じ値を入力する。

①と②学習精度の違いを確認するために、同じグレースケールデータを用いてそれぞれ学習を実施し認識精度を比較すると①>② となった。

また、別にカラー画像を画像加工ソフトを用いグレースケール変換を実施し、カラー画像データでの学習後の認識精度とグレースケール画像データでの学習後の認識精度を比較すると、グレースケール画像の方が悪くなった。

 一般的には、カラー画像のグレースケール変換は人間の視覚の感覚に合わせて、R,G,Bを重み付けした線形和で変換する。

 つまり、カラーからグレースケール変換すると情報は意図的に圧縮されてしまう。

「ディープラーニング・ビジネス」に対する違和感

ディープラーニング・ビジネスで「世界で勝てる感じはしない」

今月に入って、いつからかネット記事の見出しやFacebookの投稿に上記の日経XTrendへのリンクが目立っている。現在の日本のメディアでは、日本礼賛か日本落日のどちらかの記事が注目を引くということもあり、なかなかセンセーショナルな見出しである。それ以外にも、どこかの大学の特任教授による、「AIビジネスではもう儲からない」などとのFacebookへの投稿もあり、バズワードがパスワードとしての役割を終了するのが間近という雰囲気も醸し出している。

個人的には、この「ディープラーニング・ビジネス」というバズワード感いっぱいの言葉には非常に違和感を感じている。この発言したのは東京大学松尾准教授である。松尾氏はディープラーニングの第一人者ではあるが、企業側の人間ではないので、ディープラーニング自体がビジネスの対象になると考えるのも仕方がないが、そうではないと私は考える。ディープラーニング自体はデータから学習アルゴリズムだけであり、実際に価値を持つのはデータとその学習によって得られる新規機能であり、精度向上による高付加価値である。そもそも世界中のビジネスでAIが注目されているのはAI技術単体ではなく、既存のコアビジネスがAIによってどれだけ高付加価値、高度化、効率化されるかという面を有しているからである。正確に言うならば、「ディープラーニングによるブレイクスルーや、付加価値向上は、海外に比べて日本は遅れている感じがする。」と表現するのが良いのではないだろうか。

ディープラーニングという技術そのものを売り物として提供することは米国でもあまりビジネス化されていない(一部PaaSクラウドではある)。あえて言うならばディープラーニングではないがAI技術という意味ではIBMのWatsonがそれに該当するかもしれない。WatsonはAI技術のプラットフォームを提供するサービス・ビジネスである。ただし、Watonはディープラーニング以前のOld Style AIであり、IBMにとっての稼ぎどころは顧客向けにWatsonを仕立てるコンサルティングサービスである。では、米国やその他の国で話題になっているAIとビジネスとの関係は何であるのか、というと、これらの国ではAI技術は元からあるコアビジネスを高効率化したり、新サービスを支える技術して利用されているのがほとんどである。特に、AIに対する投資額が大きい、Google,Microsoft,Facebook,Amazonからもその傾向が読み取れる。

Googleは、AI技術を駆使しコアビジネスである広告表示の最適化の精度を向上させ、コンバージェントレートを上げている。また、検索機能、翻訳機能の精度向上にもAI技術を用いており、その結果としてポータルサイトとしての優位性ではダントツのトップになっている。GoogleはCloudサービスにおいても、画像解析APIや音声認識APIなど内部で活用している機能をAPIとしてサービス化しクラウドの付加価値を向上させている。

Microsoftは、WindowsへCortanaという音声認識機能を追加し、Skypeへ機械翻訳機能を追加し、PowerPointへの機械翻訳プラグイン追加など従来のコア製品群の高付加価値化にAI技術を活用している。また、次世代のコアビジネスと位置づけているAzure(クラウド)にもCognitive Servicesとして、顔認証API,音声認識API,画像認識API,など様々なAI技術を用いたサービスを追加している。

Facebookは2013年にFace.comというStartupを買収するなど顔認識技術に力を入れ、その成果がFacebook内での画像における自動顔識別機能につながっている。また、Google同様に広告表示の最適化にAI技術が活用されていると推測される。

Amazonは、従来からの機能であるユーザに対する商品レコメンド機能は代表的なAI技術の成果であり、先進的な取り組みである無人店舗AmazonGOを実現するためのカメラ画像認識や、AIスピーカーであるAmazon Echoを実現している音声認識、音声合成技術もAI技術である。

これらの例でわかるように現時点では、AI技術自体はツールであり、コアビジネスを支える重要な機能である。したがって、世界的に見れば単体でビジネスになるということは少ないと考える。

つまり、ビジネスへAI技術の導入に積極的に取り組みべきなのは、従来産業の研究開発部門なのである。これまでの技術で不可能であった問題点がAIによりブレイクスルーできる可能性があるか否かを早急に検討、投資し、自社の競争力を向上させるべきなのである。

ただし、AI研究に関する日本の優位性については様々な専門家が訴えているように危機的状況であることに変わりはない。その意味においても、ビジネスにおいて余力がある企業はコアビジネスを強化するためにもAIの研究開発に投資を集中すべきと考える。

 

AIとアルゴリズム

近年、AIがめざましい進展をみせているが、その背景は機械学習によって自ら能力を獲得できるようになりつつあるからである。ここでは、その機械学習を実現するためにデータと同じぐらい重要になるアルゴリズムについて解説する。

 

  • アルゴリズムとは

AIとは何であるかという説明は昨今、様々な媒体で説明されているのでここでは省くことにする。では、アルゴリズムとは何であるか、Wikipediaでアルゴリズムと検索すると「アルゴリズム(英: algorithm)とは、数学、コンピューティング、言語学、あるいは関連する分野において、問題を解くための手順を定式化した形で表現したものを言う。算法と訳されることもある。「問題」はその「解」を持っているが、アルゴリズムは正しくその解を得るための具体的手順および根拠を与える。さらに多くの場合において効率性が重要となる。」と記載されている。簡単にいうと設定された問題を解くための手順を数学的に表現したものである。AIのアルゴリズムというのは、人間の考え方や能力をコンピュータ・ソフトウェアを用いて模擬するために数学的に表現された手順であるといえる。

 

  • 脳が実現している知能

一口に知能といっても細分化の仕方によって様々な機能に分かれ、例えば判断、推論、予測、行動計画などに分類されるが、これらの機能の元になっているのは感覚器からの刺激に対する認識機能である。感覚器による正確な現状認識なくして、推論も予測も行動計画も間違ったものになってしまうということは理解できるだろう。近年、AIの進歩がいちじるしいのは、画像や音声といった人間の感覚器に相当するセンサーで検出した情報を正確に解析、認識できる技術の精度が向上しているからである。以降、この認識がどのように行われているかに着目する。

 

  • パターン認識と写像

人間の認識機能の多くは、一般的にパターン認識と呼ばれる技術に相当する。パターン認識とは、入力があって、その入力が何に相当するかを認識(出力)する機能である。同じ内容を数学的に表現すると、入力パターンをxとすると、認識結果はyに相当し、その関係はx空間に含まれるどの集合にyが含まれるかということを認識することに相当する。

我々人間の脳でもこのパターン認識という機能が実現されていると考えられている。たとえば、人間が画像を見た時、網膜には約1億3000万の受容体が並んでおり、受容体で感じた光の信号は約100万の視神経で脳に伝達される。それぞれの光の信号は画像のそれぞれの部分の光の明るさや色彩を信号(x)として感じる。信号(x)は、約140億個の脳神経(ニューロン)によって構成される大脳新皮質に伝わり、多くのニューロンを次々と伝搬し、その過程で、その物体を区別するための情報である「特徴量」が抽出される。人間は「特徴量」を用いて、その画像内の対象が特徴量空間のどの領域に属するかを認識し、その領域に割り当てられた対象名(y)を思い浮かべることができる。それが脳の認識機能の概要である。また、「特徴量」とは画像であれば対象を分類する上で他の対象と異なる形状や色の情報量である。

 

  • 「機械学習」の仕組み

認識についての詳細説明に入る。ここではわかりやすくするために信号(x)の全てが特徴量(x)であるとする。認識とは、その対象の特徴量(x)が特徴量空間のどの領域に位置するかを求め、それに対応する対象名(y)を求めることである。そのためには、特徴量空間を対象単位に分割する識別面f(x)を求める必要がある。人間は、様々な経験に基づき脳でその識別面を獲得しており、その脳の働きを「学習」と呼んでいる。また、コンピュータが、経験に相当する「データ」という情報と脳の処理に相当する「アルゴリズム」という手順で識別面を決定することを「機械学習」を呼ぶ。

アルゴリズムはどのようにして特徴量と対象の識別面を決定するのであろうか、数学的に識別面は様々な形式が考えられる。ここではわかりやすく、面ではなく特徴量x1,x2で定義される平面を2つに分割する直線を考える。一般的にこの直線を表す数式は関数x2=ax1+bと表現される。aは直線の傾き、bはy軸の切片と呼ばれる。この関数は学習アルゴリズムで決定される。

具体的に学習で決定すべき要素は、以下の2点になる。

・関数の形態(境界が必ず直線または平面とは限らない)

・関数のパラメータ(上記では傾きや切片に相当)

1点目の関数の形態は、平面(直線を含む)を表現する線形関数とそれ以外の非線形関数の2つがあるが数学的には線形関数が見通しよく、過去のアルゴリズム研究の蓄積が多いため多くの機械学習アルゴリズムでは線形関数を仮定している。したがって、機械学習アルゴリズムの働きは2点目にある、関数のパラメータを決定する、ということに集約される。

上記の数式のパラメータa,bは中学校の数学の問題にあるように線上の2点が与えられれば容易に求めることができる。しかし、現実問題ではそのような点が与えられることはない。また、犬の中にも、明らかな犬の特徴を有している犬もいれば、耳が立って尖っているというように、ある特徴量で見れば猫の特徴に近い犬もいる。また猫についてもその逆もある。つまり、特徴量で定義されるその境界は明確でないということである。機械学習はその境界を定義するパラメータを全データに基づき確率統計的にもっともらしい数値をアルゴリズムにより算出する。したがって、認識の精度を向上させるにはあいまいな境界に近い特徴量に関するデータを数多く必要とし、データを収集する際に重要となるのが特徴量である。特徴となる項目については機械学習では人間が定義する必要がある。機械学習では収集したデータから人間が特徴量を抽出し、特徴量と分類の境界の関係が線形関数であるという仮定のもとでアルゴリズムにより確率統計的にもっともらしいパラメータを求める、とまとめることができる。

 

  • 深層学習アルゴリズムの特徴

従来の機械学習アルゴリズムはある程度の精度でのパターン認識を実現可能としてきたが、人間と比較して細部において誤認識することが知られてきた。また、特徴量を設計者である人間が的確に選定する必要があり、選定される特徴量の妥当性によっても認識精度が左右されてきた。これらの問題をブレイクスルーしたテクノロジーが深層学習である。深層学習は機械学習の一手法であり、アルゴリズムの中心に脳神経の動作を模したニューロンモデルを多数、階層ネットワーク的に接続したニューラルネットワークを持つことを特徴としている。深層学習によって、従来の多くの機械学習が有していた、線形関数の仮定と、人間による特徴量の抽出という2つの要素を、アルゴリズムが適切に決定することが可能となるため、より高精度なパターン認識が可能になった。関数の形態については、多数の非線形素子を階層的に接続することで任意の非線形関数を近似することが可能であることが数学的に知られているため、非線形の動作をするニューロンを数多く接続したニューラルネットワークを用いた深層学習により、様々な形状の境界を獲得可能となった。また、特徴量については学習の過程でアルゴリズムが自動で分類に必要な特徴に対しデータの中から重みをつけ重要視するため人間が誤って特徴量を設定することはない。

一方で深層学習は、パターン認識に必要なほとんどのパラメータをデータによって決定するため精度を高めるためには従来の機械学習アルゴリズムに比較し、より大量のデータが必要とである。また、従来の機械学習アルゴリズムに比較して、学習に必要な計算量が多くなるため時間短縮を目的として同じ階層の多数の素子の処理計算を同時並行に計算することが可能なGPU(グラフィカル処理ユニット)のような並列計算機構が必要である。

 

  • まとめ

AIの中心となる認識機能は、認識に必要な領域境界を定めるパラメータを機械学習や深層学習のアルゴリズムによって大量のデータから獲得することで、実現される。これらのアルゴリズムを進化させるべく世界中で多くの研究が行われることで驚くべきスピードでAIが利用可能な範囲は広がりつつある。

 

 

<参考>

Wikipedia-アルゴリズム

https://ja.wikipedia.org/wiki/アルゴリズム

カラー版  神経科学―脳の探求』(ベアーコノーズパラディーソ著)

神経回路網の数理―脳の情報処理様式』(甘利俊一著)

深層学習(機械学習プロフェッショナルシリーズ)』(岡谷貴之著)

あなたはAIを歓迎しますか?

先日も投稿したが、2018年はAIが身近に活用されるか否かの鍵になる年だと考える。

AIの活用については、それまで人間が担っていた仕事がAIに置き換えられるため、「機械との競争」と言われており、その影響を危惧する人はAIの活用に否定的な発言をしている人もいる。その考えには国によって異なり、それぞれの事情が垣間見える。

それらについて解説した記事がMITレビューに紹介されていた。記事によるとスウェーデンでは、社会保障やセーフティーネットがあるため現在の仕事がAIに代わられても新技術適応への教育も含め国が整備してくれるので、国民の8割がAIによる自動化に対し拒否感はなくそれで国が強くなれば良いと考えているということである。それに比較し、アメリカではセーフティーネットが弱いため、変化を嫌い、AIによる自動化に対し否定的な考えの国民が多いようだ。

日本はというと、平成28年度版 情報通信白書によると、「好ましくない」に近い考えは2割以下だったということである。しかし、5割近くは「どちらにもあてはまらない」ということであり、肯定というわけではなく、大半は「様子見」または「興味がない」、「良く理解していない」ということかと考えらる。もっと、差し迫った状況にならないと判断できないということであろうか、これも日本の国民性を表している結果かと思う。

あなたはどう思います?

 

 

 

 

「自動化は怖くない」スウェーデン労働者の8割がAIを歓迎

While U.S. Workers Fear Automation, Swedish Employees Welcome It

技術の進化は想像以上に加速している

前回の記事で、ついに”AIによって職を失う”ということが現実味を帯びてきたという内容を記載した。これは、世間一般に考えられているよりも、かなり速いタイミングで現実味を帯びてきていると言える。世界中で技術の開発競争が行われており、その結果だとも言える。

本日、その進化速度が更に速くなると思われるニユースが海外から入った。半年に一度6月、11月に行われているスーパーコンピュータのランキング「Top500」でこの11月に日本のベンチャー企業であるPEZY COMPUTERが開発した暁光(ぎょうこう)が世界で4位の計算速度になったということである。当然、日本では1位の計算性能である。おそらく、消費電力あたりの性能では世界1位になるのは確実であると思われる。

PEZY COMPUTERがスーパーコンピュータの開発を開始したのが2014年であるから、わずか3年強で世界有数の計算処理性能を有するスーパーコンピュータを開発したわけである。

これは、優秀な頭脳に、機会や資金、メンバー等のリソースを投入すれば、これまでの常識を遥かに凌ぐスピードで技術革新が可能となる例の一つとも言える。

他の例では、AlphaGOを開発し、直近では教師あり学習なしでそのAlphaGOを簡単に超越するAlphaGO Zeroを開発してしまったDeepMindもその一つである。

このような動きが世界中、特に、米中で活発に進められており、いつ我々の生活を大きく変える技術革新が行われるかわからないという今の世の中である。

スパコン世界ランキング、日本のベンチャーが4位に躍進 海洋研究開発機構の「暁光」

http://www.sankei.com/economy/news/171113/ecn1711130024-n1.html

 

ついに始まったAIとの競争

ここ数年、”AIによって奪われる職業”などの議論で盛んになっていたAIとの競争の可能性だが、ここ最近の国内の新聞記事やMIT Tech Reviewなどを見ると、ついに始まったなという感じを禁じ得ない。しかも、過去の経済の不景気では雇用に対する影響が少なかった、銀行業界やIT業界に先に影響がでつつあるというのが特筆すべきである。ある意味、この業界はAI技術に関する情報を数多く有しているため、その経営層はその可能性にかけていち早く競争に強い体力をつけてしまおうという戦略かもしれない。

3銀行大リストラ時代 3.2万人分業務削減へ

https://www.nikkei.com/article/DGXMZO22847550Y7A021C1EA3000/

 

「AIはすでに仕事を奪っている」、元グーグルの中国トップが明言」

講演者の一部は、AIが新しいビジネスや産業を生み出し、破壊する以上に多くの雇用を創出すると考えている。だが、李CEOはそのような楽観的な意見に賛同しない。

「多くの楽観主義者は、技術革命によってなくなる仕事があれば、新しく生まれる仕事もあるだろうと話します。AIによって雇用が創出される場所もあるでしょうが、それは例外だというのが私の意見です」。

Is Technology About to Decimate White-Collar Work?

自動化で沈みゆくインド、IT業界が斜陽産業になる日

IT産業を調査しているHfS研究所の2016年の予想によれば、インドでは2021年までに自動化によって48万人の雇用が失われるという。インフォシスのビシャル・シッカCEO(最高経営責任者)は今年3月、「座していたら、私たちの仕事は間違いなく人工知能(AI)に乗っ取られてしまう。これからの10年、いやもしかするとそれ以内に、現在の仕事の6割から7割はAIに取って代わられるだろう。そうならないためには自己改革を続けるしかない」と語った(シッカCEOは8月に辞職した)。

India Warily Eyes AI

 

AI研究に求められていること

このブログのタイトルにもなっている「シンギュラリティ」は、2045年に来るとアメリカの未来学者レイ・カーツワイルが著書で書いてからもう10年以上経っている。

最近、AIブームということもありメディアで”AI”という言葉を見聞きしない日はない。弊社もAIの事業を展開する企業としてはこの分野が注目されるのは非常に嬉しい(投資が増えるともっと嬉しい)。

しかし、一方で昨今の2045年までのタイムスパンを考慮しない過剰なまでの期待感には違和感を感じてもいる。国でもあと数年で、自ら人間に質問ができるAIを開発するという計画がでてきている。様々なセンサーが発達してきているので、カメラやマイクで人間の表情や声の変化を計測し、AIで感情を認識することは可能と思われる。ただ、状況に合わせた言葉を生成するのはかなり難しいのではないかと考える。現在のいわゆるチャットボットは、相手の言葉をテキストに変換し、その中のキーワードを抽出し、そのキーワードと関連性が強い、会話パターンをあらかじめ登録されたデータから選択し、返事として返す、というのが一般的な流れである。各社のAI技術の見せ所は、キーワード抽出から関連性が強い会話パターンの選択までである。特に難しいのが、”あらかじめ登録されたデータ”ではなく、人間のように”都度、その場の状況に合わせて会話パターンを生成する”という流れである。

これは2つの面で難しい

ひとつめは、返事の方針というか、何を相手に話すかの判断である。これは”話す”という動作とは別の判断であり、通常の人間であれば、

・相手の現在の感情判断(表情や声、動作で認識)

・それまで文脈、経緯

を参照し

・話の内容を理解し

・相手の目的を察し

・自分の利害関係を判断し

・適切な返答や問いかけを抽出する

という流れを瞬時に無意識に実行している。

このようなことは、その人間の経験にも依存しており、AIに代替させる場合、どのようなレベルを期待するかということを定める必要がある。また、そもそも現在のAI技術がこのような多様・多面的な判断をできるようになるために、どれだけの学習データと学習時間が必要になるか、パターンマッチングだけで良いのか、学習可能なのかということについては不明な状況である。

2番目は、判断結果をどのような文として表現するかという問題である。この辺りは、現在でも、RNN(リカレントニューラルネットワーク)というAI技術を用い、自動で文を生成する研究開発が進んでいるが、精度という面についてはまだまだである。しかし、こちらについては人間についても、判断結果と文のパターンマッチッグとおおよそ考えられるため判断結果に対応した学習コーパスが揃えば時間が解決すると予想される。

上記をもっと端的に言うと、現在のAIは”認識”することには長けてきたが、”理解”するには、まだ不十分であると言える。(この違いについては次回に記載する。)

本日のMITレビューの記事に、米国スタンフォード大学の人工知能研究所の所長からGoogleの研究者に転身した研究者のコメントがあり、そのコメントが上記と同様の現在のAI研究の方向性を示している。一部抜粋を掲載する。

——AIをより人間中心にするにはどのようにすればよいでしょう?

「現在のAIの定義とは、部屋が燃えていても完璧にチェスを指せる機械である」という、70年代に書かれた素晴らしい名言があります。これはAIの限界をとてもよく言い当てています。次世代AI研究で浮かび上がってくるのは、より有用で便利な機械を作ろうとすれば、文脈の理解に立ち戻る必要がある、ということです。知識の抽出と推論の強化に着手しなければなりません。これが何より重要な段階なのです。

Put Humans at the Center of AI

「機械に言葉を教えたいならゲームの世界に放り込めばいい」について(その2)

2017.08.25のMIT Tech Reviewの記事「機械に言葉を教えたいならゲームの世界に放り込めばいい」という記事についてのその2を記述する。

個々のパターンだけを正確に獲得するではなく、自ら様々な必要なパターンを試行錯誤により獲得するには、学習を通じて手段、プランを自ら考えられるようにする必要がある。そのためには教師付き学習ではなく、強化学習が適切である。

AlphaGOも要となっているのはDeep Mind社が研究開発したDeep Q-Network(DQN)と呼ばれる強化学習アルゴリズムである。

強化学習は教師付き学習のように正解を与えるのではなく、規定された環境(例:ゲーム)内でエージェントと呼ばれるAI(例:ゲームであればplayer)に様々な振る舞いをさせ、その結果評価に対しインセンティブ(例:ゲームであればポイント)を与える。学習アルゴリズムはある期間それを繰り返した後、トータルのインセンティブを最大にするようにパラメータをチューニングすることでその環境内部の振る舞い(例:ルールに沿ってポイントを最大にするテクニック、コマンド)を学習・獲得するものである。与えられた環境にて経験を通じて最適な行動ができるようにパラメータを学習によってチューニングするということである。

教師付き学習と異なる点は、予め準備した学習すべき入出力のデータセットにとらわれない学習ができるということである。もし、教師付き学習で同様の学習をするとすれば、ゲームの動作パターンと、それに対応するべきPlayerの動きのパターン(しかも時系列パターン!!)をすべて網羅したデータセットを構築する必要があり大変な労力になる。

ただし、強化学習の場合は、学習する環境に依存するため、その環境をどう規定するかというのが鍵になる。例えば囲碁では、その囲碁の空間とそれぞれの時点での勝ち負けという最低限のルールは規定する必要がある。研究目的でいくつかのゲームのプラットフォームがOpenAI Gymとして公開されている。

長々と前置きを書いてきたが、この研究では、ゲーム空間を3Dし、リアルの空間に近づけているということと、エージェントが自分の行動を判断するのではなく、人間が行動を判断し、その判断に沿って行動するようにエージェントに「言語」で命令するのである。したがって、強化学習でエージェントが学習するのは「言語」とその言葉が指す「行動」の関係である。「少し右」と言った場合、「少し」の意味・程度と「右」の意味・内容を学習していくことになる。

汎用AIの開発にはロボットのような身体性が必要と言われているが、この研究ではバーチャルの世界で「言語」の意味と「行動」を結びつける学習の可能性を言及している点で非常に将来性が高いと考える。