将棋と過学習

2017/05/13読み物

近年のコンピュータ将棋は機械学習やDeep Learningを取り入れて人間を超える棋力に到達し、さらに強くなりつづけている。機械学習をするときに気をつけないといけないのは過学習(学習した局面では正解を出せるが、それ以外では間違ってしまう)状態になることだ。Bonanzaの昔から、過学習に陥らずに適度に学習するためのノウハウが積み重ねられている。

人間も過学習?

人間は少ない局面から効率的に学習できるのだが、それでも昨今のコンピュータ将棋が学習する局面に比べると遥かに少ない。Ponanzaは1兆局面ほど学習したらしいが※1、人間ではせいぜい数十万対局(数千万局面相当?)ぐらいが限界ではなかろうか。まさに桁違いだ。アマチュアの私なぞは、さらに桁が下がって早指しネット将棋まで合わせても2000対局ぐらいだろうか。学習局面が少ない上に戦型も偏ってる(振り飛車党だし)ので、過学習に陥っていても不思議ではない。実際、そうなのではなかろうかと思っている。

※1 ponanzaは1兆局面を見てきた? | やねうら王 公式サイト

別の局面を与えてみる

以前、「駒落ち戦のすすめ(2) 実は上手の勉強になる」の記事で駒落ち上手を持つと強くなるかも、という話を書きました。駒落ち上手では四間飛車党が遭遇しなかった局面がいくらでも出てきます。四間飛車党はそもそも美濃に囲えないと困る……美濃に過学習していたのだと思います。

駒落ち上手のような普段とは違う戦型を指すのは、過学習を防ぐという意味で、実は遠回りのように見えて上達の要素の一つなのではないかと最近思っています。身近な例では、最近振り飛車党から居飛車党に転向した方が調子良さそうなのも、そのせいかもしれません。

居飛車党の方は駒落ち上手でもさほど違和感はないという話も聞きました。たしかに、横歩や相掛かりだと思えば似ているようなそうでないような。また、居飛車党の場合は横歩、相掛かり、矢倉、角換わり、対好形とさまざまな戦型に対応する必要があるので、過学習には陥りにくいような気がします。

別のゲームをやってみる

実は似て異なる局面だけではなく、似て異なるゲームをするのも過学習の対応になるのではないかと、最近思っています。囲碁とかチェスやチュンジーですね。

将棋ばかりやっていると、考えずに直感だけで指していると感じることがあります。もちろん考えなくても直感でわかることは大事だけど、考える力が落ちているんじゃないかと。似て異なるゲームをすると、全然知らないゲームであればあるほど頭を使って考える必要があり、脳の基礎体力の維持になるように思います (その意味では、長手数の詰将棋を解くのもいいのかもしれません)。

羽生三冠や森内九段がチェスを指したり、多くの棋士が囲碁も嗜むのは、もしかしたらそのような理由もあるのかも?

ということで、こんなサイトも作ってみました。将棋の合間にしか遊ばないので全然上達していないのですが、まあ気長に勉強しようと思っています。


読み物

Posted by