コンピュータ将棋での機械学習

近年の将棋AIの飛躍的な発展の裏には「機械学習」という手法があると山本一成さんは指摘します。この手法のおかげでコンピュータが自分自身で将棋の知識を獲得できるようになったそうですが、これはいったいどういうことでしょうか。

 機械学習は、人間がどうやって学習しているかわからないけど、人間の真似ができるようにするコンピュータの技術だと言いました。

 厳密には、これは「教師あり学習」といいます。

 我々自身も先生の言うことを聞いて勉強していくことがありますよね。つまり「教師あり学習」という概念は機械学習に限らず、人間の学習にも適応されるのです。この関係性を図にして整理してみましょう。

図1−11 教師あり学習

 このように、教師あり学習というのは、人間にもコンピュータにも横たわる概念なんですね。

 ちなみに教師がない学習というのはあるのか、という疑問が出てくると思うのですが、それもいずれお話しするのでお待ちください。

 さて、それでは、コンピュータはどうやって人間を教師にして学習すればいいのでしょうか?

 将棋を例に考えてみましょう。  プロの対局した将棋の手順の記録を棋譜といいます。残念ながら、プロ棋士がその局面をよいと思っていたか、悪いと思っていたかの情報はありません。

 そういった情報があれば、現在の局面をプロ棋士がどれくらいよいと思っていたかの情報をもとに学習できるのですが……。

 しかし諦めてはいけません。プロ棋士が指した手という非常に重要な情報が残っています。当然ながらプロ棋士が指した手と、(指されなかった)それ以外の手があります。

 プロ棋士が指した手のあとの局面は、それ以外の手を指したあとの局面よりいい局面だという仮定はどうでしょうか?

図1-12 プロの指した手はほかの手よりもよい手の可能性が高い

 もちろんプロ棋士といえども、いつもいちばんいい手を指すわけではありません。

 しかしまだまだ弱かった当時のコンピュータから見て、プロ棋士の手は全部正解と思ってもほとんど間違いないはずです。

 ピアノの練習だって、プロレベルになるまでは、まず自分よりも上手なプロの先生の言うことを素直に聞くのが上達への近道でしょう。

 同じ理屈で、プロが指した手の局面のほうが、プロが指さなかったほかの手よりもよいものであると、コンピュータに機械学習をさせて訓練をします。

 そのように学習することで、プロ棋士と同じような手が自然と指せるようになるのです。これは決して丸暗記ではないですよね。

図1-13 コンピュータがプロと同じ手を指すよう機械学習で調整する

 プログラマがどのようにコンピュータに機械学習をさせているのか、もう少し具体的に説明しましょう。

 プロの棋譜は現在5万棋譜ほどの蓄積ありますが、これはすべてデジタル化されています。ほかの分野と比べるとそこまで巨大でもありませんが、ビッグデータと言えなくもない分量です。

 このデータは、図1-14のような形式になっています。機械学習をするうえでは、データがこのようにコンピュータに扱いやすい形式になっていることはとても大事です。


図1-14 デジタル化された棋譜のデータ

 このデジタル化された棋譜のデータから、コンピュータはプロ棋士がある場面でどの手を指したかを知るわけです。プロが指した正解の局面と、プロが指さなかった不正解の局面を比べて、どういった要素が異なっているか計算します。

 たとえばプロ棋士がある局面で駒Aと駒Bが取れる状況で、駒Aを取ったとします。

 その場合は問題の駒Aの値をより大きく、駒Bの値をより小さく調整すれば、コンピュータはプロと同じ手が指せるようになりそうですね(もちろん、この調整作業の裏には数学上の根拠があり、偏微分と呼ばれるテクニックが使われています)。

 値を修正したからといって、実際にコンピュータがプロと同じ手を指せるようになるとは限りません。値の調整が小さすぎることも、あるいは大きすぎる場合もあります。値を変更してしまったせいで、いままでプロと同じ手が指せていた別の局面で、正しい手が指せなくなることもザラです。

 つまりこの調整の本質は、あちらが立てばこちらが立たずのような状況で、いかに最大公約数的にプロと同じ手が指せるようにするかということです。

 こういった調整はコンピュータによって自動でおこなわれますが、ポナンザのように1億を超えるパラメータを調整するのは、コンピュータにとっても膨大な試行錯誤の繰り返しとなり、かなりの時間がかかります。私の研究の初期の時点では、かなりよいPCを使っても数か月ほど調整の時間がかかってしまいました。

 しかしその苦労が実り、最終的に(初期)ポナンザは、プロ棋士と同じ手が45%程度の確率で指せるようになりました。

機械学習の弱点と工夫
この続きは有料会員登録をすると
読むことができます。
cakes・note会員の方はここからログイン

1週間無料のお試し購読する

cakesは定額読み放題のコンテンツ配信サイトです。簡単なお手続きで、サイト内のすべての記事を読むことができます。cakesには他にも以下のような記事があります。

人気の連載

おすすめ記事

この連載について

初回を読む
人工知能はどのようにして「名人」を超えるのか?

山本一成

2016年、電王戦で5戦全勝した将棋AIポナンザ。開発者である山本一成さんは「知能とは何か?」「知性とは何か?」ということを何度も自問することになったそうです。そうすることで、逆に人間の知能がクリアに見えてきたと言います。この思考の結...もっと読む

この連載の人気記事

関連記事

関連キーワード

コメント

yaneuraou https://t.co/Qy8Y92bKmw このシリーズ、記事内容自体は大変面白いのだが、「概念を適応」とは言わない。「適応」(adapt)は形を変える場合に用いて、「概念」はターゲットに合わせて形を変えないからこの文脈では使えない。ここは「適用」(apply)が正しい。 3ヶ月前 replyretweetfavorite

RB31gencopa 「人間は・・・適切な一般化や隠れているノウハウを発見するのが得意です。」「しかし残念ながら 3ヶ月前 replyretweetfavorite

AI_m_lab この記事も一読の価値ありですね ▼|人工知能はどのようにして「名人」を超えるのか?… https://t.co/iCTVWFzz0i #機械学習 3ヶ月前 replyretweetfavorite