Ponanza Chainerについてのあれこれ

先にお断りしておきますが、コンピュータ将棋の開発もDeep Learningも専門分野ではないので、外野の素人が垂れ流してる妄想に過ぎません。

技術解説のつもりですが、どちらかというと自分の中の情報整理に近いです。むしろ、誰か詳しい人が書いてください!(俺が読みたい)

 

Ponanza Chainer

http://www2.computer-shogi.org/wcsc27/appeal/Ponanza_Chainer/Ponanza_Chainer.pdf

先週、世界コンピュータ将棋選手権(5月開催)のアピール文書が公開されました。

  1. 開発メンバー
  2. 開発アプローチ
  3. 演算リソース

その中でPonanza開発チームが上記全てに国内最高峰を取り揃えているという宣言に、ネット上が震撼しました。

 

 あんだけ強いソフトを作りながらも、毎回、大会前には「勝ちたい。でも強くならん」と呻いてる山本氏が、珍しく超強気な発言したのも納得です。

 

特にヤバいのが「Ponanza Chainer」って名前なんですわ。わからん人には全くわからんでしょうが、この響きが持つパワーワードっぷりが半端ないんです。そこが僅かでも伝わるのを今日のゴールと定めます。

 

深層学習と私

Ponanza Chainerを理解するのに避けられないのが深層学習です。ディープラーニングだの、畳み込みニューラルネットワークだの響きは色々ですが、「コンピュータが人間っぽく認識・判断出来る手法」とだけが理解ください。

 

そんな深層学習ですが、自分のいつもの悪い癖で新しい技術を試しては放り投げてるものの一つにそれも入ってます。2年前からちょっとかじってるんです、私。

 

2015年5月20日

kivantium.hateblo.jp

2015年2月21日

 

最終的にキャラ認識までは最低限動いたのに、Hue買わずにゆゆ式 Advent Calendar終わっちゃってお蔵入りになったんですけどね!!

そんなわけでChainer公開も2015年6月で色々と遊んでた時期なので、触りの部分だけは回したこともあるわけです。

 

Chainerについて

深層学習に基づく頭脳部分 = 曖昧な認識や判断が人間に近い形で出来てしまう人工知能ソフトと思ってください。

深層学習の理屈部分は説明しきれないので、このChainerを通すことで何が出来るのか、以下を見ていただくのが早いでしょう。

 

bohemia.hatenablog.com

qiita.com

qiita.com

要するに、極めて似た画像の判別、作風などの曖昧な要素の解釈、そして「それっぽい」画像の生成を、コンピュータが理解する領域に来つつあるわけです。

ネタが全部2次絵ネタに偏ってますが、畳み込みニューラルネットワークとの親和性がいいのが画像なので、しょうがない、しょうがない。

 

画像と局面と

さあ、本質に近付いてきました。ここからはかなり抽象的になってくるので、正確性は欠けてきます。あしからず。

 

 

さて、Ponanza Chainerのアピール文書に戻りましょう。
「一手も読まずに」――Chainerの恐ろしさが詰まっているのがこの部分でしょう。

今までの将棋ソフトは

  1. 局面を評価する
  2. 合法手(ルール上指せる手)を1手進めて、その先の局面を評価する
  3. その評価値がより高くなる手を絞り込む
  4. 2に戻る


と2→4を繰り返していって行き着いた先の評価値が最も高くなる手を「最善手」として選ぶ仕組みです。この時の絞り込み方や、局面評価の精度、そして計算能力にて競っていたわけです。

一方、Ponanza Chainerは2→4をすっ飛ばしていきなり「最善手」を選べるって言ってるんですね。恐ろしい恐ろしい。


もう少し、Ponanza Chainerのやってる事を掘り下げてみましょう。

「ここはこんな感じで塗ればいいのかな」みたいな曖昧な感覚を理解出来るChainerが、将棋の局面を画像として捉えたとします。
一松と十四松を見分けられるChainerですから、局面の僅かな差異も捉えられる事でしょう。そして、その局面でいきなり「最善手」っぽい手を提示してくるわけです。

これって、完全にプロ棋士がやってるアプローチなんですよ。アマチュアとプロ棋士の読みの広さと深さについて論文が出てまして、プロは一目で3手くらいまで有力な手を絞り込むんですよね。

https://www2.teu.ac.jp/gamelab/RESEARCH/SIG-2002-GI-7.pdf


これが出来るから、演算能力が劣る人間がコンピュータ将棋とも戦えてたと言っても過言ではないでしょう。
プロの解説でも頻繁に出てくる「指されてみればなるほど」という表現が示してるように、良い手が先に提示されれば、その良し悪しを判断するのは一気に容易になるはずです。

 

参照

codeiq.jp
このようにChainerは、人間側からはもはやわからない演算過程を経て、一足飛びに局面を理解しているんじゃないでしょうか。
3月のライオンでも、「ここに銀が残されてるのがそもそも気持ち悪い」みたいな感じで、零くんが局面判断をうまく言語化出来ないって場面がありました。
似た感じで、理由もわからずに最善手という結果だけが出力されてるはずです。 山本氏のコラムでも黒魔術って言ってますしね。

 

cakes.mu

 10年以上前にBonanzaが、逆に手の絞り込みをせず演算能力任せで読み進める「全幅探索」でブレイクスルーをもたらしたのと全く逆のアプローチで更なるブレイクスルーがもたらされたとしたら、コンピュータ将棋の奥深さに唸るしかありません。

 

抽象化と量子化

 

上の説明でフワッと「局面を画像として捉える」と表現しましたが、具体的に「何」をどう学習しているのかが
あくまで深層学習というのは手法であって、学習する対象が誤っていると、演算量だけが跳ね上がって、棋力は上がらないでしょうから。

 

blog.wktk.co.jp

実際、Chainerで書かれた例もありましたが、どうも組み合わせ爆発して演算量が発散し、学習が学習になってなかったようですし。

これはこのプログラムが悪いわけではなく、将棋みたいな局面情報の多いものに深層学習は向いてないよね、という一般的な認識の通りだと思います。

例えばAlphaGoは成功を収めましたが、囲碁は盤面こそ広いものの、白・黒・無の3色で塗りつぶせるので画像として取扱いやすいのは、後付けながらも納得いくところです。

 

cakes.mu

山本氏がこのタイミングでこんなコラムを書いてるのは、無視出来ないヒントだと思うんですよね。言語を画像として処理するなんて荒唐無稽な手段が実用化されているんなら、局面を画像として処理するのは現実的に思えます。

 

参考

yaneuraou.yaneu.com

実際には持ち駒やら成り駒やらでかなり多元的な画像になりそうですが、このままだと取扱いづらいはずです。 ここに対して、うまく抽象化(画像的な意味で)する手段を確立できたのか、「高火力コンピューティング」でねじ伏せてたら出来てしまったのかが気になるところです。

 

developer.smartnews.com

んで、ここ数ヶ月の情勢として、32bitの情報を、究極的には1bitで表現しても学習が成功するという話まで出てるんですね。

正直、局面の量子化をどうやったもんか想像もできませんが、KPPの次元下げに近いやり方とかできないんですかね?(雑

 

blog.yhat.com

cakes.mu

あとチェスの事例もちょっと調べてみましたが、こちらは駒が減っていくので将棋よりはだいぶ取り扱いやすそうな印象を受けます。まあ、深層学習については専門家ですら肌感覚が当てにならない世界ですけどね。

 

Chainerの開発元と羽生さん

併せて、本件とは直接関係ない部分についても下衆の勘繰りなどを。

business.nikkeibp.co.jp

書き忘れてましたが、Chainerは日本産なんです。それを送り出してるのがPreferred Network社です。アピール文書で開発メンバーに名を連ねているのも、Chainer開発陣にして、Preferred Network社の面々ですね。

 そんなPreferred Network社が、今年に入って羽生さんと対談記事組んでるんですよね。 時期的にもPonanza Chainerの存在が念頭になかったはずがありません。

 そうなると……究極の頂上決戦として、羽生さん対Ponanza Chainerが観たくなるじゃないですか!!!

 

現在、佐藤名人が最後の電王戦を戦っていますが、もはやPonanzaが強すぎて、「名人」が負けたというのに「やっぱりかー」と納得してしまっている自分がいます。こうなってくると、もはや精神的な納得のために「羽生さんと最強ソフトの対局を見たい」と思ってしまうのは私だけでしょうか?

 

おまけ:2ch名人 : 地球規模で考えるんだ

 

お願い

 こんな発言もあります。正直、この批判は的を射てると言わざるを得ません。 ここまで、Ponanzaの技術的アプローチってかなりブラックボックスのままなんですよね。

今回については、ソースコードの開示とは言いませんが、技術的なアプローチについては是非解説いただきたいな、と。

恐らく、今回は他をだいぶ突き放してコンピュータ将棋開発を焼野原にするんでしょうから、その先を芽吹かせる意味でもつまびらかにしてほしいな、と。

 

最後に

毎年数百ずつレーティング上げ続けている現状でこの先数年最強となるとレーティング5000とかもあり得るんじゃ?みたいな話も出ています。なんかもうドラゴンボールのような領域になりつつありますが、Ponanzaが強くなればなるほど、将棋の可能性も広がるわけです。

その先の地平に何が待っているのか、一将棋ファンとして胸を高鳴らせながらゴールデンウィークを迎えたいと思います。

 

はー、雑に書いたのに5000文字ですよorz

 

人工知能は人間を超えるか ディープラーニングの先にあるもの (角川EPUB選書)

人工知能は人間を超えるか ディープラーニングの先にあるもの (角川EPUB選書)