TadaoYamaokaの開発日記

個人開発しているスマホアプリや将棋AIの開発ネタを中心に書いていきます。

2024-05-01から1ヶ月間の記事一覧

大規模言語モデルで将棋AIを作る その4(ResNetの特徴マップ)

前回までは、ネットワーク全体をTransformerで構成したところ、ResNetと比較して精度が上がらないという結果になった。今回は、ResNetとTransformerを組み合わせて、初めにResNetで特徴マップを作成した後、その特徴マップを座標ごとに分割しトークンとして…

大規模言語モデルで将棋AIを作る その3(出力層の構成)

前回、単純なTransformerで学習を試した。 出力層を全てのトークンの全結合としていたため、パラメータ数の半分近くを占めており効率が悪かった。 今回は、出力層の全結合の前に、カーネルサイズ1の畳み込み層を追加することで、チャンネル方向に圧縮を行い…

大規模言語モデルで将棋AIを作る その2(入力特徴量)

前回の続き。今回は、入力特徴量の作成処理を実装し、ベースラインとして単純なTransformerモデルを学習させた。 入力特徴量 盤上の駒と駒の種類ごとの効き、効き数、持ち駒、王手をトークンに埋め込んで表現する。 盤 盤上の駒は、各マスを1トークンに対応…

【読書ノート】カスタマーサクセス――サブスクリプション時代に求められる「顧客の成功」10の原則

書籍「カスタマーサクセス――サブスクリプション時代に求められる「顧客の成功」10の原則」を読んだので内容をまとめる。 以下の内容は、ほとんどClaude3 Opusを使用して作成している。 序文 序文の要約: カスタマーサクセスとは、顧客の成功を最優先し、そ…

dlshogiのPyTorch Lightning対応 その5(DDPの課題)

PyTorch Lightningに対応させたdlshogiで、並列(DDP)で学習するといくつか問題が発生したため、対処した。 保存したモデルが壊れる on_train_endで、モデルを保存していたが、マルチGPUで実行している場合、並列処理用の各プロセスでon_train_endが実行され…

第34回世界コンピュータ将棋選手権 結果報告

5/3~5/5に開催された第34回世界コンピュータ将棋選手権にHEROZチームとして、「dlshogi with HEROZ」というプログラム名で参加しました。 大会の概要 世界コンピュータ将棋選手権は、1990年より毎年開催されている歴史のあるコンピュータ将棋の大会です。 …