次世代コンピュータの課題は、自律的な認識とそれに基づく行動の決定。つまり未来を予想して対処すること。それに近づくチップをIBMが開発した。
ここ十数年ほどのプロセッサ技術の進歩を振り返ってみると、マルチコア技術や仮想化の技術が一般化し、普及したことがトピックとして挙げられるかもしれない。しかし、確かに「普及」という数の点では目を見はるものがあるが、それらの技術自体は、以前から存在していたものであり、既存技術の延長上にあってパラダイムを変えたとまではいえないかもしれない。
その点、Googleなどが先導した、問題を数万もの処理ユニットに分割し、並行に処理し、そしてその結果をまた1つに統合するというアイデアと、それを支える分散型の記憶システムは、ハードウェア的にはそれ以前と大きな断絶がないのに、パラダイムという点では大きく飛躍があるように思える。それらはクラウド技術の基盤ともなり、近年、最も影響力の大きかった一歩だと言わざるを得ないだろう。
次の一歩を考えるとどうだろうか。クラウドは膨大なデータを集積し、ネットワークによって結び付けられ、そこにさらにデータが刻一刻と追加され続けている。意図してそこから何かを見つけ出すことも非常に容易となっている。しかし、なかなかできていないのが、自律的な「認識」とそれに基づく「行動の決定」だろう。ある意味、それは「未来を予想して対処」することにつながる。
「未来を予想する」というコンピュータ・プログラムの成功例はすでにある。例えば「天気予報」だ。天気予報は、大量の測定データを境界条件として入力し、スーパーコンピュータを使ったシミュレーションによって数日といった近い将来に対しては、かなりいい線の未来予測をはじき出している。台風の進路予想など見れば、それはよく分かるだろう。その裏側では毎日何度も最新の測定値を使ったシミュレーションが繰り返され続けているわけだ。
この手の主として自然現象などを扱ったシミュレーション技術はかなりよいところまでいっているし、今後も進歩していくと思われるが弱点もある。予想のためにはモデルが必要であり、そのモデルが精度を保てる範囲にある限り予報が予報たり得るけれども、その範囲を超えてしまったら何の役にも立たないということだ。例えば気象予報では、数日程度の台風の進路は見事に予測できるが、半年先、1年先となるとなかなかそうは問屋が卸してくれない。
現状のコンピューティングのパラダイムでは、モデルが構築できてもカオス的な振る舞いをするような系についてはもちろん、モデルが構築できないような類の問題にはなかなかよい対処の方法がない。しかし、人間をとりまく問題にはそんな問題が非常に多く見られる。そんなコンピューティングでは対処しづらい問題にも、「最適解」ではないにせよ人間は自分の脳を使って何とか対処してしまっている。「認識し」「アクションをとった結果を予想し」「アクションを選択」できるわけだ。
そんな人間の脳に学ぼうという流れ、「ニューラル・コンピューティング」は、古くから研究されてきた。ソフトウェア上での実装も延々と行われてきている。あまり表面には現れないけれども、何か解きにくい問題に対処するときの「アルゴリズム」としてあちらこちらのソフトウェアの内部で使われているようだ。読者の中にも使っている人がいるかもしれない。
しかし、それがパラダイムを変えるほどの大きな流れとなり切れないのは、ニューラル・コンピューティングの部外者から見てみると、一言でいって「まどろっこしさ」があるからのように思われてならない。ニューロンやシナプスなどは、現在の逐次処理型のプロセッサ上では、あまり効率的に処理することができないからだ。
たとえれば、そこで行われていることは、デジタル回路を逐次処理型のプロセッサ(それ自体がデジタル回路であるが)上でシミュレーションしているのに近いように思われる。回路そのものは、本質的にパラレルなので、巨大なデジタル回路である逐次処理型プロセッサ上で処理しても、自身を構成するデジタル回路そのものの規模と速度に比べると些細な速度でしか行い得ない。この考え方のもともとがパラレルであり、データによって動的に変化する必要がある。
逐次処理型のプロセッサ上では計算時間やらリソースやらを消費するわりに、なかなかよい答えが出てこないことになる。逐次処理プロセッサを使う限り、ほかに逐次処理に向いたアルゴリズムがあるならばそっちを使って解いてしまう方が効率がよい。
そこを打破し、真の実力を発揮し、パラダイムを変えるような影響力を発揮するためには「ある適度の大きさと効率」が達成されないと駄目だと思う。ここでちょっといいニュースを目にした(IBMのニュースリリース「IBM Unveils Cognitive Computing Chips」。ごく控えめで淡々としたニュースリリースだが、IBMがニューロンに基づいた「認識」チップを作ったというものだ。「ちゃんとヤッテイル人がまだ居てよかったなぁ〜」というのが1つ。45nmのSOIプロセス上での実装である。なかなか大学の研究室などでは手が出ないクラスの実装で期待が持てる。
試作品は2種類あるが、いまのところ目を剥くほどの規模ではない。タイプの異なるシナプスを1ニューロンあたり256個もしくは1024個持つが、どちらもニューロン数は256個だという。この規模は現在も応用されているような「限定的な問題」に対処はできるだろうが、逐次処理型のパラダイムをひっくり返せるほどではない。もっともっと規模が必要だ。その規模として彼らが挙げている目標が具体的でよかった。「100億ニューロン、100兆シナプスを1キロワット、容積2リットル以下」である。これができたら人間などいらない?
日本では数少ないx86プロセッサのアーキテクト。某米国半導体メーカーで8bitと16bitの、日本のベンチャー企業でx86互換プロセッサの設計に従事する。その後、出版社の半導体事業部を経て、現在は某半導体メーカーでRISCプロセッサを中心とした開発を行っている。
「頭脳放談」
Copyright© Digital Advantage Corp. All Rights Reserved.