2018年8月30日木曜日

AIチップの過去・現在・未来

 近頃では人工知能(AI)がしばしばニュースで取り上げられています。AIは医療診断、化学物質の合成、人混みの中での犯罪者の顔認識、車の運転、芸術作品の創造にすら活用されています。AIが人間に代わって何でもやっているところを見ていると、AIにできないことは何一つなく、私たちの仕事がなくなるのは時間の問題であるように思えてくることもあります。
 AI技術の発端を理解するために、このコラムでは今日に至るまでのその進化の過程を時系列に沿って見ていきます。また、AIチップの現状を踏まえ、先進運転支援システム(ADAS)や自動運転車の実現によって私たちの日々の生活を大きく変えるにはAIチップに何が必要なのかを考えていきます。まずはAIの歴史から見ていきましょう。AIはその進化の過程で、より特化された技術に形を変えていきます。プログラミングではなく体験学習に基づく意思決定を軸としたそれらの技術はマシンラーニングと呼ばれました。そして次にこのマシンラーニングを土台として生まれたのが、データをより深く理解させるためにアルゴリズムをいくつも重ねたディープラーニングです。
 

図1:マシンラーニングからディープラーニングへと進化してきたAI 出典:Nvidia
AIのルーツ
 「Artificial Intelligence(人工知能)」という言葉は、科学者のジョン・マッカーシー、クロード・シャノン、マーヴィン・ミンスキーらによって1956年のダートマス会議で初めて使用されました。1950年代の終わりごろにはアーサー・サミュエルが、自らの間違いから学ぶことができ、チェッカープログラムの作成者よりもうまくプレイできるようにさえなるプログラムに「マシンラーニング」という言葉を使いました。コンピュータ技術が急速に発展したこの時代の楽観的環境を思えば、AIはすぐに「完成」するだろうと研究者らが考えたのも無理はありません。科学者たちは、人間の脳の働きを模した計算によって現実世界の問題を解決できるのかどうかを調査し、そこで「ニューラルネットワーク」という概念を生みだしました。1970年、マーヴィン・ミンスキーはライフ誌にこう語っています。「3〜8年後には、平均的な人間の一般的知能を持つマシンが登場するだろう」
 1980年代までには、AIは研究室を出て商用化され、一大投資ブームを巻き起こしました。1980年代終わりにAIテックバブルがついにはじけると、AIは再び研究の世界に舞い戻り、科学者たちは引き続きその可能性を探りました。業界ウォッチャーたちはAIを「時代を先取りした技術」、あるいは「永遠にやってこない未来の技術」と呼びました。商用開発に再び火がつくまでには「AI冬の時代」といわれる長い停滞期があったのです。
 

図2:AI年表 出典:https://i2.wp.com/sitn.hms.harvard.edu/wp-content/uploads/2017/08/Anyoha-SITN-Figure-2-AI-timeline-2.jpg
 1986年、ジェフリー・ヒントンは同僚たちと共に、バックプロパゲーション(誤差逆伝搬法)と呼ばれるアルゴリズムを使用してマルチレイヤー、すなわち「深層」ニューラルネットワークのパフォーマンスを劇的に向上させる方法を説明した画期的論文を発表しました。1989年、当時ベル研究所にいたヤン・ルカンと他の研究者らは、手書きの郵便番号を認識するよう訓練できるニューラルネットワークを作成し、この新技術を現実世界で応用できることを実証しました。このとき彼らがディープラーニング畳み込みニューラルネットワーク(CNN)を訓練するのに要した期間はわずか3日でした。そこから一足飛んだ2009年、スタンフォード大学のラヤト・ライナ、アーナンド・マドハヴァン、アンドリュー・ウは共同で、ディープラーニングにおいては近代GPUがマルチコアCPUの計算能力をはるかにしのぐことを説いた論文を発表しました。ここから再びAIブームに火がつきます。
AIチップの実用化に向けて
 近頃これほどAIが話題に上っているのはなぜなのでしょう? このテクノロジーが著しく発展する環境が整ってきたことで、現実世界の問題解決に幅広く役立てられると考える人々が増えているからです。今日ではインターネットによって提供されているインフラのおかげで、世界中の研究者たちが新しいアルゴリズムやソリューションの創造に必要な計算能力、大規模データ、高速通信にアクセスできます。例えば、自動車業界がAI技術に莫大な研究開発費を投じているのは、マシンラーニングによって自動運転などの非常に複雑なタスクを処理できる可能性があるからです。
 AIチップ設計における最重要課題の一つは全てを集約させることです。ここで言っているのは多種多様なハードウェアアクセラレータを用いてディープラーニングが実装される大規模カスタムSoC(システムオンチップ)のことです。自動車業界の厳格な安全・信頼性要求を考えればなおさらのこと、AIチップの設計は極めて難しいことに違いありません。しかし、AIチップがプロセッシング、メモリ、I/O、インターコネクト技術といった面でいくつか新しいソリューションを取り入れた単なるチップにすぎないのもまた事実です。
 新たにIC設計に乗り出したGoogleやTesla、さらにはAIMotiveやHorizon RoboticsといったAIチップベンチャー企業は、ディープラーニングの計算の複雑さについては豊富な知識を持っているものの、こうした最先端SoCを開発するにあたってはいくつもの厳しい試練に直面する可能性があります。これら新規参入プレイヤーができるだけ短期間で実用的なチップを開発できるようにする上では、コンフィギュラブルなインターコネクトIPが重要な役割を果たすと考えられます。
 

図3:GoogleのTSU(Tensor Processing Unit)に見るAIチップの構成
 例えば、画像解析による路側物体検出、分類を行う、車のフロントカメラ向けのディープラーニングアクセラレーターを搭載したAIチップについて考えてみましょう。最大帯域幅を確保するために各AIチップに固有のメモリアクセスプロファイルが割り当てられています。パフォーマンス目標を満たす必要があるときはオンチップインターコネクトへのデータフローを最適化して広帯域パスを確保しなければなりませんが、可能な場合は狭いパスを割り当てることによって面積、コスト、消費電力を最適化することができます。より高度なAIアルゴリズムを念頭に置けば各接続も最適化する必要があります。さらに付け加えれば、新しいAIアルゴリズムは毎日生みだされています。ある意味、今日のディープラーニングチップはバナナのようなもので、自分のAIチップに腐ったバナナを、つまり古いアルゴリズムを入れたい人などいないわけです。他の多くの半導体製品と比べてみても、こうした最先端チップでは製品化期間がいっそう重要な意味を持ってくるのです。
AIの未来
 ディープラーニングとニューラルネットワークによってAI技術は急速な進歩を遂げていますが、AIの究極の形を実現しようと思ったら根本的に異なるアプローチが必要になってくると考えている研究者たちは大勢います。大半のAIチップは、ルカンやヒントンらによって10年以上も前に発表された概念を絶えず改良してきたものに基づいて設計されており、たとえこのルートに沿って指数関数的な進歩が見られたとしても人間のように考えられるAIを実現できることは到底期待できないからです。
 今日私たちが知っているAIは、1つのタスクについてやっとのことで習得したディープラーニングを別の新しいタスクに適用することができません。また、ニューラルネットワークには、予備知識あるいは「アップvsダウン」や「子供には親がいる」というようなルールをうまく組み込むための方法がありません。さらに、人間は記憶に残るたった一度の経験で「熱いストーブには触ってはいけない」ことを学習できるのに対し、ニューラルネットワークに基づくAIに学習させるためには膨大な例が必要となります。大量のデータセットを使うことなく現在のAI技術をさまざまな問題にどう適用していけるのかは依然としてはっきりしていません。
 今のところAIチップは標準的な人間に比べてそう賢いわけではありませんが、それ自体が賢いことは確かであり、この先ますます賢くなっていくことはまず間違いないでしょう。AIチップが半導体プロセス技術、コンピュータアーキテクチャ、SoC設計の進歩を促すことによって処理能力が格段に上がれば、次世代AIアルゴリズムが登場するのもそう遠いことではないでしょう。また同時に、それら新しいAIチップの独自ハードウェアアクセラレーターにディープラーニングに必要なデータストリームを絶えず供給するためには、高度なメモリシステムとオンチップインターコネクトアーキテクチャが必要不可欠だと言えます。

0 件のコメント:

コメントを投稿