読者です 読者をやめる 読者になる 読者になる

いものやま。

雑多な知識の寄せ集め

『ロボットの心 7つの哲学物語』を読んでみた。

哲学 AI 読書

ここ数日、過去に書いた文章を引っ張り出してきてるけど、これも過去に書いたもの。

書いたのは2004年8月31日。


『ロボットの心 7つの哲学物語』(講談社現代新書、柴田正良 著)を読んでいてふと思ったことのメモ。

ロボットの心-7つの哲学物語 (講談社現代新書)

ロボットの心-7つの哲学物語 (講談社現代新書)

まだ読み途中なんだけど、予想以上に内容が深く、考えさせられる。

CLAMPの『ちょびっツ』から、最終的にロボットに「ココロ」が宿るか(宿ったか)どうかは「外側からは確かめられない」がゆえに、本質的にはロボットに「ココロ」が宿ったように『見なせるかどうか』がポイントになる(大切な『ココロ』。も参照)と思っていたのだけれど、最終的にはそこに行き着くとして、その手前にクリアしなければいけないことがたくさあることにビックリ。
確かに指摘されてみれば、本で紹介されている『フレーム問題』などは(現実世界でロボットを作るとなれば)かなり問題になる。(限られた世界――コンピュータ上での仮想人格であれば、問題にならないので、あまり考えなかった・・・)
そして、それを解決すべくの並列分散処理のアイディアとその成果も非常に興味深い。(数学的に見ると、直列逐次処理モデルは1次元の世界での和、差などを基礎として用意された関数(出力は常に1次元)を使って処理をしていくのに対して、並列分散処理モデルはm×n次元の行列を基礎として(この行列は、遺伝的なものと学習的なもので得られる)、その積で演算をしていく(出力はm次元ベクトルになる)、という感じなのかな?)

で、ふと思ったのは、曖昧な認識が得意の並列分散処理型で将棋をするロボットを作ったらどうなるかなぁ、ということ。(最終的に気になったのはここじゃないけど)
局面認識(形勢判断)をするには、細かいルールを定めてやる必要がある直列逐次方と違って、「確固たる根拠はなしに、パッと見で」形勢判断ができるはずだし、学習がちゃんと行われれば未知の局面でも強さを発揮できるはず。
ただ、その形勢判断の「学習」をするに――すなわち、どの局面が「良く」てどの局面が「悪い」のかを『判断』し、そして『フィードバック』させていくのかにおいて、それをどうやっていくのか、というのがまず気になった。
もちろん、そこでとられる方法は人間のそれと同じで、例えば本でこの局面はいい、とか、勝った/負けたという結果で、ここでこうやったから勝った/負けた、というのをフィードバックしていくことになると思う。
そうすれば、どんどん成長して、強くなっていくはずだ。

ここからが本題。
ところで、それを「将棋以外で適用」した場合にはどうなるのか。
すなわち、将棋の場合は『勝つ』『負ける』という結果と、そこに至るまでの過程を比較してフィードバックしていくことで成長できる。
そして、本によれば「認識を行動に結びつけたり、認識の正確さを得る(フィードバックの役割を果たす)ために、『感情』が存在する」となっている。
これはもっともだと思う。
けど、じゃあ『感情』――頭脳ゲーム(?)の将棋におけるは、結果と過程の比較という理論的なものだが――によって成長していくということは、逆に言うと、将棋というゲームにおける成長が(普通は)「より勝つようになる」と定まっているように、『こう成長していくべき』という成長の正しい方向は『感情』によってあらかじめ定められてしまっているのだろうかというのが気になったこと。

これは、別の言い方をすれば、『感情』を発するものは『正しい成長の方向』を知っていて、それにしたがって『感情』を発している、とも言えないだろうか?
ならば、その『正しい成長の方向』を定めているものは何なのか・・・

それはもちろん、「しかられた」とかの人為的なものであるかもしれないが、それ以外のものであるかもしれない。
あるいは、『正しい』かどうかは別にして、とりあえず『成長(もしくは『変化』)』を与え、自然淘汰なりによって残ってきたがゆえに『正しい』ものと見なせるのかもしれない。(つまり、論理で順序が逆転してしまっていただけ)

動物のことを考えれば後者が最有力だけれど、『感情』において突然変異が起こる、というのは想像しにくい・・・
どうなんだろう?


当時はニューラルネットワークのことをちゃんと勉強していなかったので、かなり変な記述もw
(並列分散処理モデルうんぬんと言ってるのは、ニューラルネットワークのこと)

ただ、将棋の学習に関する話は、強化学習の方法論に近いものを書いてて、面白い。
強化学習の関数近似ニューラルネットワークを使う、という考え方でなくて、ニューラルネットワークで認識した盤面の評価を行えるようにするために、勝ち/負けの情報を使おうとしているので、これはAlphaGoが打ち手ニューラルネットワークでたくさんの棋譜を生み出して、その棋譜を使って価値関数の学習を行ったのに発想は近い。

そして、肝心なのは本題の方。
強化学習において学習を行うためには、報酬が必要になってくる。
逆に言えば、報酬が与えられれば目的関数が定まるので、その報酬に応じて最適解が決まってくることになる。
では、それを人間の学習に当てはめた場合、どうなるのか、という指摘。
この指摘は、我ながら面白いと思う。
こういう指摘をしている人は、自分以外に見たことがないけど、いるのかな・・・?

今日はここまで!