スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

重大な勘違い?

今まで考えていたインフラと、人工知能関連の話の間に、何か重大な勘違いがあったかもしれない。
まだ整理し切れてないけれど、書き途中のトピックも載せて見る。

**何を思って論文を調べているのか

以前調べた論文では、
「提案されたモデルに一連のパターン候補――系統樹、線形順序、多次元空間、環、順位制、クリークなどにデータを流し込み、データに最も適合する関係性の型を判定する」
という部分で、汎用的なデータマイニング、メタコンピューティング的な何かに惹かれたんだと思う。

今自分が感じているのは、
今日の「人工知能的な分野」とされている様々な取り組みは、それぞれの方法がある分野における局所最適解のようなソリューションになりはしても、それぞれ単体の方法では本来目指している強い「人工知能」のようなものにはなりえないのだと思う。

だって、実際うまくいった例がないんだもの。
ローブナー賞を取っているプログラムですら、残念な事に実生活に密着したファンクションと結びついて有用な機能を提供しているわけではない。

それに、既存の人工知能ぽいソフトウェアは、いずれも稼働時間が極端に短い。
人間の子供ほど長い時間学習を続けて定量的な出力を出しているモノはそうはないのではないだろうか。

また、40億以上のオブジェクトを並列動作させ、長期間活動させて定量的な出力を得ようとしたと言う話も見たことが無い。

単に知らないだけだけれども、それで何か面白いことが起きたという話も今のところ見かけない。
Earlangなどはその良いテストヘッドになりそうだけれど…まぁ40億のHelloWorldを持ったオブジェクト作ったらどうなるか一度試してみないことにはなんとも言えない。

見た目だけなら殆どヒューマノイド的なモノは既に産総研が作ったけれど、肝心の頭の中身は相変わらず人間がリモコンを握っている。


だから、それぞれの突出した「人工知能的な分野」に進むより、もっとメタコンピューティング的な、もう少しモノを組み合わせるなり、あるいは汎用的なデータマイニング(構造パターン分析?この辺も曖昧で…)のような手法を取るなり、といったような方向を勉強してみたい。

もちろんそれぞれの細かい分野は一通りさらう必要があるだろうけれど、それはそれぞれの分野をチューニングしていくようなリサーチの仕方ではなくて、あくまでも使い方とそれぞれの意味を知るという点にとどめたいと思う。
あるいは、もしかしたらその過程で何か面白いものが見つかるのかもしれない。


---- ここから非常にあやしい -----

人間は非同期な超分散処理のプラットフォームである。
非同期処理は、同期処理の上で一応シミュレート可能なはず。

理由:
* ハードウェアが同期処理を取っている以上、非同期はシミュレートである
* ハードウェアが同期を取る処理である以上、その上にソフトウェアで同期を取る処理を行うレイヤがあっても、その上に非同期をシミュレートするレイヤを展開可能である。

人間が非同期の分散処理プラットフォームならば、コンピュータ的には働くプログラムは当然パラレル(並列)であることが必要であると考える。

ここで、「強い人工知能」が働く仕組みを考えたとき、人工知能とは一種の仮想化されたレイヤの上で動く、一定の領域を持った「式」での表現が可能なのではないかと思う。

仕組みの根底は非常に単純な数式になりそうだけれど…この辺はまだもやもやしてる。

命題として、
「必要な計算リソースを、必要なだけ提供されるメモリ空間Aがあったとして、そこで実装された強い人工知能が稼動する」
と考えたら、少なくともその要素として

* メモリ空間Aに「強い人工知能」のための領域Dを持つ
* ある「強い人工知能」は自身に関連したサブ領域をD内に持つ
* それぞれの計算は非同期に生じる
* 領域Dから離れたサブ領域は、領域Dにおける「強い人工知能」の処理と相関を持たない
* 定量的な出力とは、出力のための領域OUTに集約されてある一定時間内にまとまって得られたものである。

実際はそれぞれが非同期に写像を取ったり、領域間で連携(接続)や領域自体の成長などが考えられる。
メモリ空間だと分かりづらいなぁ。
要は線形台数と応用解析がごっちゃになったような状態。
単位メモリあたりのそれぞれの計算は線形台数の行列のよう(当然それぞれは線形独立)だし、領域間の関係は複素関数のようだ。(実際に内包されていなくても、計算の末尾にアドレス解決を入れればもう物理的な場所は関係なくなる)
非同期とはいえ線形的な構造を取れれば、処理の予測や産業連関的なこと、定理証明にタスク間連携を取るなど何かありそう。


グリッドやコンカレント(並行)インフラを調べているのは、つまり、上の命題で言う「必要な計算リソースを、必要なだけ」ロードバランシングされる環境 = 人工知能のためのレイヤを考えてのことだ。

計算のためのコンポーネント(要素というかモジュールと言うか)それぞれの負荷は大分違うにしても、いくら非同期とはいえ定量的な出力を得るためには最終的な旗振り役が必要だ。
そのためのコンカレントなインフラで、これは非同期処理のための一種の仮想化であると考える。

下はコンカレントで上はパラレルなインフラの例としては、今のクラウド・コンピューティングはOS環境ですら仮想化したイメージをリソースプールに動的にロードすることによってユーザに提供(Amazon EC2など)している。
ユーザは、それぞれ任意のタイミングでOSのイメージをクラウド上に展開するが、その下で動いているハードウェアの連携は、グリッドコンピューティング的なものに支えられているのだ。


そしてまた、このインフラが提供する仮想化のレイヤの機能は出来る限りプラットフォームに依存する形ではいけないのだと思う。
レイヤは、プラットフォーム間の違いを吸収できなければならない一方で、スケールアップ・スケールダウンの妨げになってはならない。
コンピュータ・ソフトウェアの強いところは、リソースが許す限りいくらでも拡張が可能なこと。
その強みを抑える必要は無いと思う。

そしてこのレイヤに求められる仕様はシビアで、文字通り計算機のあらゆるリソースへの最大限のアクセスが可能でなければならないと思う。
そのためには、プログラミング言語間の違いを超えなければならないし、必要なら外部から実行したりラッパーを挟んででもその機能を引っ張ってこれるようでなければならない。
その試みは、去年CASIOPEAというjavaのOSモドキを作って、予め定義していないクラスのメソッド、インターフェースの機能をJVMの実行中にロードして、javaの型制約に縛られずに引っ張ってこようとした(ある程度はうまくいったが、完全ではない)事で何とかしてみようとしたことがあった。
何でjavaかというと、単に様々な言語の技術をうまくバインドするために都合が良いだけ。
その点ではC#も有りかもしれないが、制約が強いモノの上により自由なレイヤを被せるほうが安全な気がする。


いずれにせよ、何らかの形で人工知能が実装されるとしたら、今自分達が使っているコンピュータの仕様に新しいレイヤを重ねるような形になるのではないかと思う。

過去に、Unixの次を目指したPlan9というOSがあったけれど、今やその機能は既存のOSに新しいレイヤとして取り込まれただけで代替されてしまった。
だから、わざわざ既存のコンピュータ環境の一番下の層を置き換える様とするような事をしても、パフォーマンスの改善や構造の美しさを得たところで、極論を言えばWindowsを置き換えるほどの市民権を得ることが出来るとは思えない。
それが出来るとしたら、今までのモノとは動作概念が全く異なるプラットフォームが出た場合のみ。

フォン・ノイマンコンピュータを捨てればいいのかしら。

…フォン・ノイマン型コンピュータを捨てる程の、余りあるメリットがあるとしたら何だろうね。


結局、色々複雑な事がインフラ的なレイヤとして存在はするのだけれど、そのレイヤの個々のコンポーネントは間違いなく独立して然るべきだし、その上で動く人工知能のプログラムは非常にコンパクトな数式に収まるのではないかと踏んでいる。

もしかしたら、人工知能は一種のネットワークプロトコルなのかもしれない。
あるいは、物事の自動化を推し進めた究極的に行き着く先のインターフェースなのだと思う。

---- ここまで非常に怪しい ----

結局のところ、計算リソースが問題の本質じゃない。
データやパターンの解析から何らかの構造を導き出すなど、非同期に解析した上での状態変化の方が問題。

何より、計算時間がかかろうともある程度頭の良い人工知能ならば、コンピュータのコントローラが人間と同じ数だけあれば(キーボード、マウス)それ以上の拡張は必要ないのかもしれない。
あらゆるローカルリソースへアクセス可能なのはアドバンテージとしては有効だけれども、必須ではないのかもしれない。

バインドとして様々な機能へのアクセスする余地を残すことはプラットフォームとして非常に重要だけれども、全部へのアクセスは時間的に厳しい気がする。

この辺が何かおかしいな。
先ほどもこの記事書いていて、コンカレント(並列)とパラレル(並行)がごっちゃになっていたし。
言葉の使い方も相当気をつけてみたつもりだけれど、前提が間違ってそうだし、定義にせよ何にせよ、話がうまくまとまりきらない辺り半人前以下ですぉー…
スポンサーサイト

Comment

(編集・削除用)
管理者にだけ表示を許可

Trackback

URL
http://isle2.blog75.fc2.com/tb.php/43-df29716c
この記事にトラックバック(FC2Blog User)

カウンター

プロフィール

Hatabon

Author:Hatabon
日々精進。
基本的に管理人はゆるやかな人です。
コメントへの返信もゆるやかです。

Twitter on FC2

最新記事

最新コメント

月別アーカイブ

カテゴリ

検索フォーム

全記事表示リンク

RSSリンクの表示

リンク

  • pagetop
Copyright © Hatabon
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。