アンカテ このページをアンテナに追加 RSSフィード

2014-05-17

検索エンジンと将棋ソフトに見る計算馬力とのつきあい方

Webの検索エンジンと将棋の思考エンジンは似たような経緯で発展してきている。みんながどうやって場合分けを多くするか考えていた時に、逆の方向、つまり場合分けを少なくする方法で、大きなブレイクスルーが成し遂げられた。

Web上には、ニュース、マニュアル、企業の広告やPR、個人の日記など多種多様な文書があって、それぞれ作られ方も違うし、読む人が重視する特質も違う。だから、分類や検索をするのに、ジャンルごとに違う処理が必要だと思われていた。分野を限定すれば、ある程度機械的な処理が可能かもしれないが、当面それも無理なので、手作業で良質サイトのディレクトリが作られていた。

それに対し、グーグルのページランクは、全てのWeb文書を内容の区別なしにリンクのみで処理することで、機械的検索を実用化した。ここで重要なことは、文書の種類も区別しないし、文書間のリンクも、リンクする意図を一切考慮することなく全部一律に扱ったことだ。

将棋プログラムで、ボナンザが行なったことも、ある意味これと似ている。将棋は、戦形がいろいろあってそれぞれに評価基準が違う。同じ戦形でも、ゲームの進行状況によって同じような手がいい手になったり悪い手になったりする。ボナンザ以前のプログラムは、盤面や手を評価する基準をいかにきめ細かく分類するかの勝負だった。

ボナンザの革新は機会学習という手法を導入したことだと言われているが、学習において、過去の棋譜を細かく分類しないで、一括で大量に処理したことがポイントだと思う。

どちらのケースでも、場合分けを行なうために、人間のエキスパートの知識や判断基準を、どうやってコンピュータのアルゴリズムに移しかえたらいいか、みんなが頭を悩ませていたのだ。

人間は、そういう時、「ああそれは簡単で、こういう時はこうすればいい、ただ、こうこうこういう時だけは例外で」などとスラスラ言う。そういう説明を聞いていると、半分機械的で決まった手続きのように思えるのだが、実際は、人間はそこで、本人が思うよりはるかに複雑なことをやっていて、なかなかプログラムにするのに苦労する。

特に問題なのは「こういう場合はこうする」というルールのうちいくつかが、必ず矛盾していることだ。矛盾したルールがあっても人間は特に困らないでなんとかうまくやってしまうが、プログラムにするには、その「矛盾した複数のルールを処理するルール」がネックになって、なかなかうまく進まない。プログラムを作っても遅くなったりバグが取れなかったり、プログラムの外にある事前のルールの登録が難しすぎたりでなかなか実用化されなかった。

ボナンザの機械学習という方法とページランクは、どちらも、そういう複雑に見えるデータを全部一括のアルゴリズムで処理する。場合分けを少くすれば、コンピュータの処理は速くなるしプログラムの扱いも簡単になるのは誰にでもわかるが、そんな乱暴な方法でうまく行くと思う人はいなくて、一種の盲点になっていた。

ところが、どちらもやってみたらこれが予想以上にうまく行って、いっぺんでスタンダードになった。象徴的なのは、ボナンザ開発者の保木氏はそれまでの開発者と違って、将棋の初心者だったことだ。グーグルのラリー・ページも、Webについてよく知っている人というよりは、数学やプログラミングのエキスパートだ。グーグルは傲慢で無神経な会社と批判されることが多いが、創業者二人が、自分たちのユーザについてよくわかってなかったことが一因だろう。

今後も、いろいろな分野で「場合分けを少なくして処理できるデータ量を増やす方向への進化」が起こるだろう。それは多くの職業に大きな影響を与えると思われるが、これに対して、過小評価も過大評価もしないことが大事だと思う。

おそらく人間の抽象化能力は、ビッグデータよりずっと少ないデータ量に最適化されている。だから、そういうプログラムのうちいくつかは、直感的に予想されるよりはるかに賢く見える。

その賢さを「このプログラムは複雑な場合分けに応じて適切な判断をしている」ととらえると、実際以上に賢いものに見えてしまう。また、処理の中身を見て「実に乱暴に全てのケースを一括処理している」ことに気がつくと、「そんな方法でうまく行くわけがない」と思い、実際以上に馬鹿に見えてしまう。

意識しないと、この二つの極端な評価の間で人間は混乱してしまうのだと思う。

ボナンザとページランクが画期的に実用性を高めたことは間違いないが、場合分けが不要だと決まったわけではない。実際は、どちらものブレークスルーも進化の終わりに到達したわけではなく、逆に進化を加速している。それを出発点として、複雑になる方向にさらなる進化を遂げている。場合分けは計算馬力を使う前ではなく使った後に必要とされていて、そこにおいては、結局、対象領域のエキスパートのノウハウが必要とされているようにも見える。

コンピュータが賢いわけではなく、コンピュータのうまい使い方が発見されただけで、そこではたぶん、数学とプログラミングとdomain knowledgeの3つが対等に必要とされている。この3つの組み合わせの中での自分の立ち位置をずっと考えて続けていれば、仕事が無くなることはないだろう。

一日一チベットリンク「古地図」で習主席に「ギャフン」と言わせたメルケル|Foresight(フォーサイト)|会員制国際情報サイト

はてなユーザーのみコメントできます。はてなへログインもしくは新規登録をおこなってください。

トラックバック - http://d.hatena.ne.jp/essa/20140517/p1