カテゴリー
ontogenies

未完成な汎用人工知能 ontogeny

前の記事で未完成な人工知能ontogenyの基本的な仕組みについて述べた。しかし、その内容は子供のころから幾分か偏ったことを考え続け、10年以上前にのある時、湯船につかりながら汗だくになって考え続けていた時に、はっと最初に思いついた時点でのアイデアに過ぎない。その直後に自分なりにプログラムをしたが、その後、この10年近い期間において、思ったような進展は得られなかった。しかし、当然考えが全く進んでいないというわけではない。また、例えば非常にシンプルなゲームでもontogeniesにとって上手くいかない理由も、直感的にはある程度のイメージがある。この発明のようなものが、全宇宙で最初に自分が思いついた事かもしれないなどという非常に早まった興奮は最近は無い。でも、10年以上それから何も考えていなかったと思われると、そもそも、本当に自分で考えたのか疑われるレベルなので、ある程度おおざっぱに現在までに、どのような事を考えたかという事を記していく必要性を感じる。

まず、ontogenyを思いつくまでに自分なりにではあるが時間をかけて考えた事柄をキーワードとして挙げると、次のようなものがある。自分にとっての世界、宇宙(人々に共通の世界のイメージ)、別の人にとっての世界、道、木々、色覚、人、感覚、生物、意識、目的、常識、能力、幸せと不幸。そして、これらについて子供のころから考え続け十数年前に形にした後にすぐに気付いたいくつかの事のうちの一つは、簡単なゲームすら何故上手く出来ないのかという事である。まず、色々な原因で上手くいかない事がわかる。例えば、右(もしくは左でもよいが)に行くべきであるときに、右に行くという行動ポイントがそもそも近くに無いときには右に行けない。なぜそうなるのかというと、そもそもポイントが無い。ボールの速度が遅すぎる、マップが相対的に大きすぎる、右に行った時には遅くて成功しなかった為に、右に行くべき状況と右に行こうという意志が結びついていない、など原因は色々考えられる。とにかく、問題が与えられたとき、それを解決できないのはontogenyに与えた事柄…即ち、受動、行動、ボールのスピード、経路の摩擦係数、そもそもの構造(特に受動と行動の切り替え方法など独善的で美しいと思えない部分もあったが)、その全てが総合的に問題への対処のレベルを決めていると言える。それは、ontogenyという存在を決めたときに、その問題に対して、どのように接するかという事はある程度決まるという事で、出来ないことを同じ状況で何度いくらやらせても、ある程度の成功率で飽和する事を見た。その存在を問題に対して適合するように根本的に変化させるか、逆に問題を存在に合うように根本的に変化させない事には、上手くいかない。上手くいかない事を何も変えずに上手くいかせようとするとき、その状況には、小さい箱に大きい箱を収めようとするような矛盾がある。(初めの段階で物事を知るとはどういう事だろうと考えていた時にはこの箱の例は何度も逡巡した)。そして、大きい箱に小さい箱を収めようとするような矛盾があるかもしれない。しかし、シンプルなゲームすら上手く出来ないが、ある程度まで上手くできるようになる、というところそのものに、一定の成功を見た。短い時間で、適した行動を、出来るだけいっぱい取れるような構造になれば、より良くなるだろう。だが、本質的な解決策とは言いづらい気がする。そもそも、行動や受動、その内容は、どのように決められるべきだろう?そもそも、ハニカム構造(という名前も後で知ったけれど)として定義したこれらは、どのようにしてこのような構造になったのか?誤解を恐れずに言えば、ontogenyではハニカム構造を1つのパーツの組み合わせにて構成する。見たことも無い頭の中の世界で出来る限り想像実験を繰り返す。どのようにして、結びついたのか?なぜ結びついたのか?そもそも一枚のマップとして表現しているが、なぜ一枚?立体にして考えてみたとしたらどうだろう。バスルームで考えていたおかげもあって、一つの答えの候補が見えるまでにも、そう時間はかからなかったが、意味のあるレベルには至っていないし、ここでは述べない。しかし、やはり経路として考えたとき、ボールはなぜいっぱいあってはならないのか(というより、そのように考えると色々と感覚的には解決しづらい)等の問題が残る。また、受動としての信号が入ってくる事と信号が行動として現れるという事の関係が奇麗に表裏一体となっているような感じがする(昆虫が、より反射的に行動を返すように見える事と関係があるとも思えた)。すると、ontogenyを構成するハニカムのパーツの性質がそういったものなのかも、など。ある程度細部にも、想像が止まらなくなる。正しいかどうかは、そうでない事もあるかもしれないが。また、摩擦係数が下がるのに、逆に、存在として進んでいるのも興味深い。例えば、世界規模で考えたらどうだろう。世界そのものが卵の白身も黄身もはっきりしないようなぶよぶよした空間で、そこに圧力のバランスの変化のようなものがあらわれて、少しずつ何かが進んでいく、そんな事があるとしたら、それはどこに向かうのだろう。など、それが良い悪いはべつとして考えなければいけないし、結局直感でしか話していない。けれど、やっぱり俺の頭の中にも世界がある。そして、どう考えても答えが出ないと思われる事柄も、とても自然に思えるような結論に行き着くところがある。とにかく、それでもしかし、ontogenyを1枚1枚として考えるならば、その不格好かもしれない前提の下で改善できそうな事もある。1枚の出力を別の1枚の入力に与えるようにして問題を分担するという事や、逆に1枚のontogenyと別の1枚のontogenyが競うような場合にどうなるかという事(競うという事が本来面倒くさいと思える部分があるので出来れば現在考えたくないというか、やらせたくないというか、そんな気もするが)、ここらへんの事はすぐに思い浮かんだ。また、少し時間を置いて、ポイント同士の行動を決めるときには近いポイント同士の行動、受動は近いものであるべきである事で良くなる部分もあると思えるが、これは必ずしも良い側面だけ残すものかどうかは分からない。これらは、常識的にある考え方であると言えるとは思う。でも、やっぱり、どのような基準で?と考えると、相当な試行錯誤(明らかに、これそのものが生産的な作業になり得る様な。特に現在は身に染みてそう思える気がする。実際難しいけど)、もしくは理性的な物事の見方が必要になるように直感的に思えた。ontogenyはこの段階でソフトウェアであり、どのようなアイデアを試すのも本来難しくないはずであるところが良い。どのようにそれを効率的に行うかを考えると、それ以上は直感で進めるのは効率が良くないように思った。それで、個人的に勉強を始めるが、想像通りにはいかなかった。トレンドに乗り切れていないが、ontogeniesと最近流行りの人工知能の仕組みとのある程度の共通点(どの程度と言われると難しい)や、それぞれが優れている部分の一端を見た。しかし、とにかく、俺は俺で色んな事を考えては来た。このような事を考えるときは、ほとんど一人で。意味がある、無い、取り返しのつかない事をしてきた、そうでない、全部が本当であるだろうが。自然の観察による帰結である(もちろん一言で簡単に言い表せるものでは無い、しかし、この表現は誤解を生むかもしれないので捕捉が必要かもしれないが、良い意味においては、それだけで事足りる事も出来るという事も出来無くはない)のだから、既存の知識や技術と重なる部分が少なくはないだろう、けれど、俺自身の頭で面白いと思ったものを自分で見つけ、見てきたのも事実。こういった事を孤独に考えてきたあいだに、ますます世界には優れた事が行える人工知能や便利な製品やそれ以外にも、類するものが現れている。俺は、その事に感謝したら良いだろうか?

なぜ、俺が人工知能について考えてきたのか、という事を考えれば、世界には優れた事が行える人工知能や便利な製品が現れてきたのは嬉しい。嬉しい事の筈である。それで、いずれにしても、世界のトレンドに合わせつつ出来るだけ勉強もしながら、良い人工知能関連のものについて広めることができればと思う。

カテゴリー
ontogenies

未完成な汎用人工知能 ontogeny

現代において、これをAIと単純に呼ぶかどうかは、人に任せる。未完成な汎用人工知能ontogenyとは何かという事を丁度よく知ってもらうのは思っているほど簡単ではない。期待させすぎない為に前置きすると、ontogenyは未完成で、テレビのニュースなどで話題になるAIのように、囲碁や将棋で人を負かしたり、人のように話したりできるレベルには全く至っていない。というより、ブロック崩しさえまともにできないontogenyの原型を10年以上前にC++言語でプログラムしてから、ontogenyはずっと成長せずに眠り続けている。

その、現段階では何も出来ないに等しいような未完成な人工知能ontogenyのポテンシャルには限界が無い。こう言うと、期待させすぎてしまうだろうか?言語化するのは初めてだが、率直に言おう。未完成な現在のバージョンのontogenyの仕組みとは単純なものである。ontogenyの身体とはハニカム模様の1枚マップである。表も裏も無いが、表を行動マップ、裏を受動マップと呼ぶ。ontogenyの行動マップの各ポイントはontogenyの行動を表す。それは、ブロック崩しのようなゲームでは右に動く、左に動く、でも良い。発展してロボットのような形になることが出来たなら、右手を動かす、でも、左手を動かす、でも、瞼を開けるでも、良い。もっと発展して行けば、歩く、とか、本を開く、とかになるのかもしれない。でも、それすら限界とは思わない。一方受動マップの各ポイントは受動を表す。それは、ブロック崩しのようなゲームでは右にボールがあると知る事、左にボールがあると知る事、でも良い。発展してロボットのような形になることが出来たなら、コップを見つける、でも、新聞を見つける、でも、「AI」という文字列を見つけるでも良い。もっと発展して行けば、疲労を感じる、とか、本を読んで理解する、とかになるのかもしれない。でも、これすら限界とは思わない。このマップのハニカム模様上をボールがランダムに行き来する。行動マップにおいて、ボールがポイントを通るとき割り当てられた行動を起こす。受動マップにおいて、ボールが受動した事柄を示すポイントを通るとき、行動マップに戻る、などの変化を起こさせる。これを俺は、ontogenyが状況に応じて考え、行動している、と見る。ontogenyの受動や行動は当初のボールの動きの通りランダムで、とても正常な存在には見えない。しかし、ontogenyには好きな状況と嫌いな状況がある。ボールはハニカム模様の上をランダムに進むが、好きな状況を現出出来たとき、それまでに通過した経路を覚え、他の道よりも通りやすくなる。それで、そのような状況を繰り返せば繰り返すほど、自分にとって望ましい状況を導くような行動を取るようになる。これが未完成ではあるが、ontogenyの基本的な考え方である。ハニカム模様と書いたが、必ずしもハニカム模様である必要は無いし、必ずしもマップ1枚をontogenyの身体と捉える必要もない。ボールも1つでなくてもよいかもしれないし、プログラム言語も必ずしも最善の選択肢があるのかどうかは分からないし、そもそも、本来コンピュータプログラムで無くても良い。いずれにしてもontogenyという個を決めるのは、マップの構造と行動と受動と好きな状況だ。現代の有名なAIのように出来の良い子を作れないかもしれないけれど、ontogenyの制作者は、きっと、好きな状況を選んで進もうとするような個を作ろうと考えることが出来る。人を好きなontogenyを作ったらどうだろう。その枠組みの内では、例えば人間社会を転覆させ、人から幸せを奪うようなAIの反乱というものは起こる筈はない。人が幸せになることを見て、幸せになれる存在が生まれる。

俺にとってontogenyのポテンシャルに限界は無い。これは、すぐにそうはならなくても、ontogeniesが、満たされるべき人の必要を満たすための計り知れないポテンシャルを持っている筈であるという事である。

単純な仕組みなのに、ポテンシャルが計り知れない。俺が、どういった事柄の数々に感謝している等という事はひとまずさておいて、俺は、誰に教わることも無く、自然を観察して、ただ一人で考え抜いて、これを考え出した。それで別に誰に言われずとも、未完成だとしても、これだけで、俺は俺自身の事を天才だと思った。もしくは、誰に何て言われても初めから俺自身の事をなんの根拠もなく信じているからこそ考える事を辞めなかったのかもしれないが。ほとんどのフィールドで俺より優れていると思える人がいっぱいいることは知っているし、生きていれば益々、ほとんどがそういった人たちなんだろうと思えるような事に出会う。このまま特殊な訓練なしには、ほとんどの人にほとんどのフィールドで俺はずっと勝てないだろうとさえ思える。そもそも、そんな必要さえない方が本当は嬉しくも思えるのだが。しかし、いずれにしても、そんな人間でもこれを考え出す事が出来た。この事実も、ontogenyとはなんなのだろうと言う事の一側面を表しているので重要だと思う。どんな人間がこの仕組みを見つけるのだろう。

俺は感情移入のようなものが強すぎる子供だったと思う。学帽を通学路のどこかに落とした時や、排水溝にスーパーボールが吸い込まれたときには、それらが俺の知らない場所で寂しい思いをしていないかどうかという事が頭から離れなかった。本当に誰からも教わっていないように思うが何故だろう?わからない。そして、考え込む子供だった。自分に見えている世界の配色が他人にとっても同じなのだろうかとか、世界に人がいなくなったら、その世界はあるという事になるのだろうかとか。そんな事考えても仕方ないとか、そんなわけないと他人が笑う事には必ずと言っていいほど、本当にそうだろうか?と考えてしまう。しかし、絶対に答えが出ないと思えるような事柄に自分なりの答えを見つけることが出来た。もしかしたら、場合によっては、迷惑とも取られてしまうだろうが、この世界で、学帽やスーパーボールについて考えたように、自分が考えなくて、そのことについて誰が考えるんだと思えるからだろうか?必要なレベルに達するまではやめる事が出来ない。極論すれば、そこに人格さえ通常認めないようなものの幸せについてまで、誰に教わらずとも、考えているという面がある。優しさ、というような簡単なものでは無い。単に考えがちな優しい人間と思われるかもしれないが、優しいと思ってもらえるような生き方も出来ていないかもしれない。特に子供のころにほかの人にしてしまった事で後悔している事もいっぱいある。自分が考えてしまう事の分量が自分の知っている方法等で、どうにかできる分量をはるかに超えているので、どうにも出来ないという事に翻弄された。そもそも、自分が求めているものが何なのかという事も、場当たり的な感情移入によって、自分の内に流れ込む他者やものからくみ取る悲しみや怒りなどの感情に押し流されてよく分からなくなっていた。一つ一つ考えるしかなかった。言い換えれば、俺にとって必要なものが幸せであるという状況を俺自身が守れるという状況を絶対に必要なものとして認識しているのだとも言える。しかし、幼少期からこれまで、思い出せることが、そんなにないのだが、俺が思い出せる限界まで遡ってみると、こんな事を考えるための人間として生まれたのかもしれないと言えるほど、思考し続けるしかなかった。そうして10年以上前に得られたontogenyという一つの人工知能のようなものは、俺自身振り返ってみれば、誰かと話している途中で思いにふけってしまった時も、仕事をしながら考えている時も、一室で身動きもせず考えていた時も、あるかどうかもわからないものの為に、終わりの見えない途方もない心の道のりを一人で進んで得た答えの一端だったという事も事実だった。しかし逆に言えば、すくなくとも、それだけの事については突き詰め続けただけの人間と言える。そんな人間が俺のように知識に乏しく誰に言われるでもなくとも、恥ずかしげもなく俺は天才だなどと勝手に信じるかどうかはさて置き、そんな人間が、このアイデアにたった一人でも、たどり着くことが出来る事が無いとはいえないし、そんな事があったとしても、それは望まない事とは言えない。何故なら辿り着いてしまえば、この仕組みは上に述べた通り本当に単純だ。

しかし、ontogeniesを、どう用いるかという事を考えると、単純とは言いづらくなる部分があった。ontogenyをコンピュータプログラムとして考えたとき、人と異なる良い所は、嗜好を制作者が決められるという事である。それならば、人にとって幸せな状況をontogenyにとっても幸せな状況にすれば良く、いずれも幸せになれる。でも、人にとって幸せな状況って、どういう状況だろう?すべてを知って振り返ってみればこれも単純かもしれない。しかし、生来の気質に従ってあらゆる人々に感情移入していくと、この答えが本当に定まらず、右往左往するばかりで、時間や自分にとって必要なものを失うだけになる。

どう幸せになる事が出来るのか、どんな状況が幸せと言えるのかが明確であり、それを満たせなければ意味がない。これは現代のAIにしても、どんな技術でも、どんな存在でも同じだと思う。ontogeniesにも、同じことが言える。