TadaoYamaokaの開発日記

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

2022-06-01から1ヶ月間の記事一覧

nnue-pytorchを試す その2

前回、nnue-pytorchをWindowsとLinuxで動作確認した。今回は、前回説明したqsearchで動く局面を除外した場合としない場合で精度の比較を行った。 qsearch除外の実装 Stockfishのnnue-pytorchの--smart-fen-skippingは、学習の実行時に指し手が駒をとる手と王…

nnue-pytorchを試す

Stockfishで実装されたNNUEモデルをPyTorchで学習できるnnue-pytorchが、nodchip氏によって将棋のNNUE向けにポーティングされた。 GitHub - nodchip/nnue-pytorch at shogi.2022-05-23dlshogiの知識蒸留を試していることもあり、dlshogiのモデルを教師として…

dlshogiモデルの20ブロックから15ブロックへの知識蒸留 追試3

前回、知識蒸留を訓練データと教師モデルの損失の加重平均の定数αを0.5として実験を行った。 今回は、加重平均の重みを変えた場合、精度がどうなるか測定を行った。 測定条件 前回同様、20ブロックで生成した9.4千万局面(同一局面を平均化すると7千万局面)を…

dlshogiモデルの20ブロックから15ブロックへの知識蒸留 追試2

前回、知識蒸留を定義通りKLダイバージェンスを計算して実装したが、交差エントロピーを使用しても勾配は変わらないため、交差エントロピーで実装し直した。 交差エントロピーの方がPyTorchで用意されているメソッドが使用でき、実行時間も短くなる。 実装 i…

dlshogiモデルの20ブロックから15ブロックへの知識蒸留 追試

先日実験した20ブロックから15ブロックへの知識蒸留について、どれくらい強くなるか検証した。 検証項目 同一データを使用して学習した、20ブロックと、知識蒸留あり15ブロックのどちらが強いかを確認する。 比較のために、知識蒸留なしで学習した15ブロック…

WCSC32版dlshogiが公開しているモデルからどれくらい強くなっているか

第32回世界コンピュータ将棋選手権で優勝したdlshogi with HEROZが、第2回世界将棋AI電竜戦エキシビジョンバージョン(公開しているモデル)からどれくらい強くなっているかちゃんと測定していなかったので、測定した。 測定条件 dlshogiは2スレッド、1GPU(A10…

dlshogiモデルの20ブロックから15ブロックへの知識蒸留

dlshogiでは、10ブロックのモデルから始めて、15ブロック、20ブロックとモデルサイズを大きくしている。 ブロックが大きいほど、精度が高くなっており強さにも反映される。 第32回世界コンピュータ将棋選手権のdlshogiでは20ブロックのモデルを採用している…

dlshogiをVisual Studio 2022+CUDA11.6+cuDNN8.4+TensorRT8.4に移行

Visual Studio 2022が去年の11月にリリースされたが、CUDAが対応するまで移行を控えていた。 1月にCUDA 11.6がリリースされてVisual Studio 2022に対応したが、cuDNNとTensorRTがCUDA11.6に対応したバージョンがリリースされていなかったので、移行できずに…

HRNetによる顔のランドマーク検出

写真からランドマークの座標を検出する方法を調べている。以前に、マンガのキャラクターの顔に対して、畳み込みニューラルネットワークから座標を直接回帰する方法を試したことがあったが、それなりに検出できていた。 DCNNによるマンガキャラクターの顔パー…