Easy Shogi WCSC32 アピール文書 2022.3.30 記 高原 順弥 使用言語:Python 使用ライブラリ:tensorflow(デイープラーニングフレームワーク), cshogi(学習データ作成時・対局時に利用 ※参考1) プロ棋士の谷合廣紀氏のbert-mctsに触発され(※参考2)、深層学習における自然言語処理の枠組みの活用に挑戦します。 2つのNN設計により、自然言語処理のテキスト分類を将棋に適用します。 NNへの入力に応じ重みを付けるself-attentionの仕組みに興味を持ち、transformerモデルを利用しました。※参考3,4 ・policy network プロ棋士が対局中に棋譜用紙を見る行為から着想を得て、ニューラルネットワークへの入力は初手から現局面までの棋譜符号を用います。 プロ棋士は盤面だけではなく、棋譜からも対局の流れを読み取り、戦略を立てているのではという仮説・ロマンを立てました。 棋譜の指し手一つを自然言語処理での単語として扱い、棋譜を単語が時系列に並ぶ文章として扱います。 棋譜符号を数値化し、ベクトルの前方をゼロ埋めし、256で固定長としました。 分類問題の推論として、次の単語を示します。 ・value network 盤面の升目に入る駒を単語として扱い、1つの局面を95個の単語からなる文章として扱います。※参考2 升目の端から持ち駒まで、架空の時間軸に沿った文章といえるでしょうか。 回帰問題の推論として、出力は1つのスカラー値を示します。 ・探索(?) policy networkの出力の最大値が、設定値以上なら、即採用しvalue networkを用いず指し手を決定します。 設定値以下の場合、2手先の局面をvalue networkで評価し、指し手を決定します。 2つのネットワークを用いたmctsを用いる可能性もあります。 ・最後に まだまだ弱いですが楽しみます! よろしくお願いします! 参考 1.https://github.com/TadaoYamaoka/cshogi 2.https://github.com/nyoki-mtl/bert-mcts-youtube 3.https://www.tensorflow.org/text/tutorials/nmt_with_attention 4.https://keras.io/examples/nlp/text_classification_with_transformer/