dlshogi の検索結果:

CoreMLの実験(dGPU無い勢)

…これでpython-dlshogi2なども動きます。 README.md · GitHub --- 追記2(03/07): 上記のPyPIのonnxruntimeですが更新が止まっています。 理由は明白で本家がCoreMLにデフォルト対応したそうです。普通にonnxruntime入れるとCoreML Execution Providerが使えます。 Please release 1.17.0 · Issue #16 · cansik/onnxruntime-silicon ·…

将棋界の大谷翔平

…るのが,やねうら王,dlshogi,AobaZero,python-shogi,cshogiなど,口頭レベルでの修正提案などを含めると確かに多くのチームの底上げに貢献した気がする。コンペで勝つのが目的ではなく技術的な共有による全体の底上げが学者の本分と思うので特別なことをしているつもりはない。 集計が遅れているが先日の第4回電竜戦本戦はとても底上げ感が強くA級,B級はもちろんC級上位ですら人間を遥かに凌駕するレベルになっている。技術の普及・一般化とは恐ろしい速度である。 オチ…

APUでDirectML

…が多いpython-dlshogi2ですが GitHub - TadaoYamaoka/python-dlshogi2 こいつもonnxruntime-directmlで動きます。 onnx_player.pyのここだけ変更すれば終わりです。 DirectMLに関してはiGPUとdGPUの両方があれば選択的に使えるのでオプション有効にしてあります。(それとCPUも) # モデルのロード def load_model(self): if self.gpu_id >= 0: se…

囲碁将棋近況(2023年7月)

…デル+python-dlshogi2+onnxruntime-directmlです。 概ね想定内と言う感じでしょうか。 ちなみにRyzen 7 5700GでKristallweizenを放り込むと4100ほどになりますので伊達にZen3じゃないですね。(ただしA520チップセット+DDR4-2133の色々流用構成) 内蔵GPUに全負荷かけるのが無駄なのが分かると思います。 話は変わりますが,Arc A750が廉価販売されるらしいのでインテルGPUもブレイクするかもしれません。…

floodgateのユニーク局面数(Aperyの初期局面の話)

… このファイル,後のdlshogiにおいても初期局面として使われることになる。 将棋AIの進捗 その19(初期局面集) - TadaoYamaokaの開発日記 二番絞りも強化学習過程において利用しているが,そもそも手段を選ばないで最高精度を目指すというコンセプトのためあまり深く考えていなかった。今回諸事情で平岡さんに確認を行ったところfloodgate棋譜由来と記憶しているとのことであった。 ということでfloodgateにおける古いユニーク局面を評価することにした。 計測に…

小さなことからコツコツと(二番絞り近況)

…持っていく。これ以降dlshogiにも色々と貢献することになる。 2018年5月Hefeweizen世界選手権準優勝 まぁ,まぐれっぽいですよね。検証するのに随分と時間かかりました。 5手予測で95%以上の予測的中率はMulti Ponderシステムの肝です。 2019年5月Kristallweizen世界選手権準優勝 このときのプレッシャーというか鬼気迫る周りの圧が凄かったです。前年は気楽だったんですがねぇ。このKristallweizen,オーパーツのようで現行でも問題な…

二番絞りの精度の話(2022年版)

…duckが居ます。 dlshogi_pre32_p1やDLSuisho0も同様な試みっぽいですが、レート差は100以上ありますね。 15年ほど前ですが初参加優勝したBonanzaの初期バージョンがこのくらいのレーティングとの話もあります。アマ高段者クラスと言って良いんでしょうか。 全くの探索なしでここまで来たと言うことです。隔世の感がありますし、そもそも探索なしって意味わかりませんよね。 無探索で100万局面探索に一発入るのね。>nibanshibori_1p vs. Kri…

電竜戦TSEC3予選の結果

…ル進出です。 上にはdlshogiと水匠ですが、A100x8とc6a.metalですのでモンスターマシンですね。 M1白ビールは2019年に公開して連盟モバイルや毎日新聞Youtube、朝日新聞Youtube、もちろんニコ生将棋などでも利用されている例のアレです。このBlogでも紹介しましたが、M1搭載のMacBook Airでエントリーしました。以下にありますが、実質4コアの省電力PCでファンレスのため高負荷の連続運転にはやや不安がありました。 無事13位で完走したようなの…

将棋の神様

…を頂いた。今年優勝のdlshogiが同手法を実装して時間を削ってきたのには苦笑いしか出ない。 探索の神、評価の神、時間の神と三柱考えて、時間の神を奉ったのが2018年。 その後スクラッチで探索実装などを試みたのが2019年。無限の時間(とメモリ)があれば答えが出る。 究極の評価関数を志したのが2020年である。これが二番絞り。 主流の自己強化学習にこだわらず手段を選ばないことを銘打って製作開始したものであるが、一応世界トップクラスを自負している。 Kristallweizen…

第32回世界コンピュータ将棋選手権

…きました。 GCT、dlshogi、二番絞りの比較 - TadaoYamaokaの開発日記 明白にGCT, dlshogi, 二番絞りの順になっています。しかしながら,電竜戦では二番絞りが遥かに劣るスペックの計算機でdlshogiに中盤から逆転で勝っています。二番絞りの方が弱いとは思っていませんし,うちで計測したのはもっと長時間戦をやっており明白に二番絞りの方が優勢です。 ということで,探索時間・深さで優劣は変わります。 それでは選手権用にどれを選ぶかと言う問題になりますが,…

AobaZeroで遊ぼう20(バージョン32リリース記念編)

…ルネットワーク構造をdlshogiに寄せる大幅な変更。末端での三手詰み探索。 2022年3月 v30 softmax温度やKL情報量に関するパラメータ変更。 2022年4月 v32 ノード展開時の初期勝率変更。詰み探索の強化(増加) バージョン番号が変わったのとそれをエンジン名で返すようになったので使い勝手がよくなりました。 また、v28でニューラルネットワーク構造が大幅に変わりましたので棋風が一変です。末端での詰み探索が入りましたのでCPU負荷が一気に増えています。マシン次…

minmaxとMCTS

…る。 python-dlshogi2で遊ぼう - 48's diary 強い将棋ソフトの創りかた(その2) - 48's diary これらはもちろんPV-MCTS型の探索なのだが,一度簡単にこの評価モデルでMINMAX法を使ってみた。 αβと言いたいところだが,実際GPUを使ったバッチ処理だと一局面ずつ評価するより多少無駄でも多くの局面を一気に評価した方が高速に処理可能であるためバッチ評価する完全なMINMAX法を実装した。 で,結果floodgateに放り込んだところ,一…

Windows11導入(個人メモ)

…L2+Dockerでdlshogiを動かす - TadaoYamaokaの日記 Windows11+WSL2+Dockerでdlshogiを動かす 続き - TadaoYamaokaの日記 一般向けドライバがWSL対応したとの話とCUDA旧バージョンで遅くなったとの話がリンクしているようなので,CUDAの方を上げるのもいいが,この際WSL導入もいいかもしれないと一台だけWindows11のCUDA環境を構築しようとしている。 (バックアップも取らず進めた)Windows11へ…

強い将棋ソフトの創りかた(その3,GPU選定編)

…前半のpython-dlshogi2の学習 floodgateの一年分のデータを使った深層学習ですね。 Google Colabで大当たり(V100)を引いたら数時間ですが,手元にGTX1060でもあれば一晩で終わります。無料Colabレベルでも時間の問題です。GPUは無いと厳しいですね。 懐かしいレベルですが,これ2017年の私のネタ通りですね。 chainerも入れてみた - 48's diary 当時プロ棋士の棋譜を使った山岡さんに対して私がfloodgate棋譜一年分…

強い将棋ソフトの創りかた(その2)

…ておきます。 後半のdlshogiの学習の部分ですが,加納さんは限られたリソースで学習できるように教師データを分割してスクリプトで連続学習できるようにしています。 加納さんはColabでもシェルスクリプトを使うスタイルですが,私のWindows主な環境とは違います。 そもそも学習をPythonでやってるので皆環境は整っているはずということで,シェルスクリプトをPythonに書き換えてみました。学習部を呼ぶところをモジュール呼びにしていたのですが,これだとログファイルが更新され…

AMPとTensorRT

…が実現されています。dlshogi用は昨年夏私が書きましたが,私がやらなくても山岡さんがやってたと思ってます。 dlshogiのautomatic mixed precision対応 - TadaoYamaokaの日記 python-dlshogi2の方にもプルリクを送っておきましたが,こちらは書籍記載事項との兼ね合いもありどういう扱いになるか山岡さんにお任せです。 AMP対応 by bleu48 · Pull Request #4 · TadaoYamaoka/python…

強い将棋ソフトの創りかた

…後半から加速と言うかdlshogi本体に話題が飛びますね。これは予想以上に踏み込んでいます。前書籍に無かった加納さんパートという感じですね。 ただ,前から読んだ人がどこまで理解してここまで到達するのかやや心配なペースです。 同じ厚みの上下巻にした方が良いくらいの濃密さで,恐らく初学者には行間を埋めるのが難しいのではないかと思うくらいです。 ただ,出版の都合もあってこういうまとめとなったのだと認識しております。 適当に個人的なことを言っておくと,所謂PV-MCTSの仕組みは一通…

python-dlshogi2で遊ぼう

…先に届くでしょう。 dlshogiに関しては私は2017年からの交流で,同人誌もすべて目を通しています。 今年6月段階で以下の予想を立てていますがほぼ的中と言っていいでしょう。 bleu48.hatenablog.com 前の版ではchainerを使って,同人誌ではTensorflowを使っていましたがやっとPytorchです。盤面管理もcshogiなので相当高速化されます。上記予測ではonnxruntimeを使うと書きましたが,第二版はニューラルネットワークモデルへの入力特…

第2回電竜戦本戦の様相

…はじめ,前評判の高いdlshogi,選手権2位のPALと深層学習系が活躍するのでしょうか。 うちも二番絞りをエントリーさせておりますが,選手権からの上積みがあまりないのでどのくらいのものか半信半疑です。 春のコンピュータ将棋選手権と異なり,人間や合議のエントリーが許されており,本大会もあきらっぺさんやSugarさんなどが人間独りで参加されていたり,チームVtuberが中継しながらリレーなのか合議なのか分かりませんが人間のチームとしてエントリーです。 大人気ないモンスタースペッ…

将棋の深層学習の歴史(私的集計2021秋)

…のひとつが山岡さんのdlshogi。 4月にはchainerで山岡さんの当時一致率より随分向上した旨blogで報告し,山岡さんにフィードバックした。以後相互にblog参照する程度の関係に。 chainerも入れてみた - 48's diary この時点ではまだelmoが優勝する選手権よりも私が参加する電王トーナメントよりずっと前。 4月か5月の頃には独自のエンジンでfloodgateでレーティングが付く程度にはなっていた。 将棋AIの続き - 48's diary 5月選手権…

二番絞りの計測集計(第31回選手権分)

…に二番絞りの計測中にdlshogiの新しいバージョンが公開されたのでついでに計測しておいた。気づいた人も多いかもしれない。 ELOレーティングは相対的な強さであるが乗数で効くので原理的に震度や音量などと同じく対数スケールである。横軸は評価関数をコールする回数を4倍ずつにしてあるのでこちらもほぼ対数スケールである。概ね線形なので安心した。 それと,二番絞りの現状としてdlshogiに対してwcsc31時点であったアドバンテージはほぼ無くなったと言ってよい。 選手権段階では一応リ…

電竜戦の余興

…補足しております。 dlshogiのデビューは第5回電王トーナメント(2017年秋)です。 鵺(NNUE)は同大会エントリーしていましたがキャンセルしています。 リンク切れしていますが,アピール文のファイルは残っているようです。 https://denou.jp/tournament2017/img/pr/nue.pdf そして,NNUEの大会デビューは第28回世界選手権(2018年春)で,大会中にGithubに公開されました。大会中にダウンロードして遊んだ記憶があります。 …

cshogiもdlshogiだ

前回dlshogiがPyPIに登録されてインストールが楽になった件を書いた。 bleu48.hatenablog.com ところが,5日ほど前に以下のようなコミットがあって,更にバージョン番号確定してPyPIに上がっている。 github.com 完全に機能被りである。 個人的には欲しい機能であったので勝手に実装していたものがあったが,当然汎用ライブラリに積むものじゃないのでプルリク送ったところで蹴られると思っていた。 何がしたいのか若干不明であったが,これはdlshogi内…

dlshogiがPyPIに登録された

…ablog.com dlshogiの環境構築は初心者には結構難しい。 今回そのうち一番面倒なboostを扱う部分が不要になるので大きな変更である。 私のところは以前からWindowsメインなので何度か書いてるがざっくり一から説明しておこう。 Visual Studioを入れる。コミュニティ版で良い。開発しない人は要らないかも。どうせ使うならCUDAより先に入れて置かないと二度手間になる。オプションとしてはC++だけビルドできればいい。 CUDAを入れる。PyTorchで学習さ…

非GPU勢DL組

…の群ですが,これらはdlshogiおよび二番絞りのモデルをFukauraOu(dlshogiクローン)のMKLビルドで走らせたものです。CPUビルドは全CPUを使ってしまうのでMKLで使用スレッドを絞っています。探索スレッド1,評価バッチサイズ1です。 dlshogi_wcsc31_4t dlshogi_wcsc31_1t nibanshibori_wcsc31_1t 最初に走らせたのはdlshogi_wcsc31_4tでした。旧世代の4コアのCPUで10ブロックのモデルが1…

酔猿の件(電竜戦予行5の顛末)

…フラとして用いているdlshogiですが,指し手生成や局面データ構造の部分はAperyから流用されています。そこでバックポートを試みました。 考えたことは単純です。 二番絞りの逆ですね。最新の深層強化学習で生成した教師データを今やクラシックと言える三駒関係のモデルに適用するとどうなるかという実験です。 AperyのソースをダウンロードしてきてLEARNオプションを有効にしてビルドするくらいのことですので技術的にも簡単ですし,数億局面のデータも一晩くらいで学習を終えました。 簡…

選手権の準備その2

…層学習部は山岡さんがdlshogiを始めたのとほぼ同時期に私も独自に始めたエンジンがスタート地点です。既に独自改造していたものに適当な教師データを食わせることで従来無い中途半端なものが生成できれば御の字との考えでした。終盤弱く頓死するとか,見たことのないような戦型が得意とか,考慮時間を使うのに弱いとか何か違えばテスト用には有用だろうとのことです。もちろんスコア付け,組み合わせ抽選などの工程で不具合が無いか実時間でどのくらいかとの計測が重要ですからね。 比較的小規模な学習モデル…

二番絞り近況(2021年3月)

…した。10ブロックのdlshogiやGCT相手でもこの低ノードレンジでは優位に戦えます。 15ブロックは非常に良い成功例になりました。20ブロックの二番絞りに遜色ないというかむしろ強いかもしれません。floodgateにて2080Tiでレート4000超えですのでトップクラスでしょうかね。 今絞り中なのが40ブロックです。教師データ全部で2億強ありますが,40ブロックになるとこれを1エポック回すのに4日くらいかかります。 5エポック,6エポック目のものがfloodgateにてR…

PV-MCTSの最大の利点について

…と空いたからGCTとdlshogi相手に二番絞りが戦ってみた。エンジンは共通ちょい前に手元でビルドしたもの,時間は15分5秒のフィッシャールール。2勝1敗1分でした。(引き分けはGCT先手) #ある程度時間があると弱いわけないんよね — 48 (@bleu48) 2020年12月9日 特にfloodgateに流していた時に松下さんの定跡生成ネタと時期がかぶったので、同じ局面で全く同じ手を繰り返すタイプのエンジンではほぼ終局まで定跡でレートを吸い取られることになっていたようで(…

PV-MCTSの探索ノード数について

…なっています。比べてdlshogiは10ブロック192チャンネルと小さいものです。この点以前から気になっておりました。 それに電竜戦直前のRemiさんのツイートが以下です。 My 256-channel network was too small for the p4d.24xlarge, so I am training a 512-channel network. I hope it will be stronger for the @DenryuSen. I finis…