DeepLearning系の将棋(以下DL系と略す)として無償で公開されているうちの最強格は、2021年に公開されたdlshogiの第2回電竜戦エキシビジョンバージョンである。
ところが、自前で教師生成をする場合、このモデルより強いモデルを学習させるのは容易ではない。ゼロから強化学習をスタートさせる場合、GeForce RTX 5090で教師生成するなら年単位でかかると思われる。
そのため、将棋AI開発者たちは長らくこの公開モデルを超えられずにいた
少なくともGPUを数台確保して1年ぐらいぶっ通しで動かす覚悟が必要である。あるいは、クラウドでGPUを借りて、数百万円使う覚悟が必要である。
数年前、教師生成をNNUE系(GPUを使わないタイプの将棋AI)で行えば、もっと低コストで生成できるのではないかと私は考えた。当時は、NNUE系最強は水匠5であった。たややんさんは、当時Ryzen Threadripper 3990Xを数ヶ月ぶん回し、水匠5(?)で1局面1000万ノード(探索局面数)で1億局面生成した。(その教師データは後に無償で公開された。)
しかし、その教師データだけではdlshogiの公開モデルを超えることはできなかった。
当時、この1000万ノードというのが少なすぎるのか、教師データが少なすぎるのかはよくわからなかった。
一定の計算資源があるとして、教師のノード数を倍にすると教師局面数は半分になる。ノード数を半分にすれば教師局面数は倍になる。どこか最適なバランスを探す必要があるのだが、その比較実験をする計算資源すら当時はなかった。
また、NNUE系は評価値がわりと上下する。同じ局面でも探索中に評価値が50になったり100になったりする。つまりは、大きなガウシアンノイズのようなものが加算されているとみなせると思う。このようなノイズは、学習上あまりいい性質ではないので、NNUE系で生成した教師データを使うのは良くないのではないかという議論も当時なされていた。
なぜそこまでして我々がNNUEの教師データを無理にでも使いたいのかというと、
・GPUが高騰しているからGPUを使いたくない
・消費電力の関係で、多数のGPUを自宅に置くのは現実的ではない
・GPUで生成するよりCPUで生成できたほうがコスパが良さそう
だからである。
そこで、水匠5で生成するにしても、もっと教師のノードを上げたいし、もっと教師の局面数を増やしたくて、そうしてdlshogiの公開モデルを超えられるのかどうかの検証をまずしたいわけである。NNUEでどれだけ頑張ってもdlshogiの公開モデルを超えられないという可能性も高い。
繰り返しになるが、当時はその実験をする計算資源すらなかった。
しかし、LLMの学習に要するコストが年々下がっているのと同様に、将棋AIの世界も教師生成に要するコストは急激に下がっている。
まずPC自体が安くなっている。9950X(Ryzen 9 9950X)のPCが15万円程度で自作できる。32スレッド15万円である。PCの世界は、3年で半額ぐらいのイメージであろうか。
あと、将棋AI自体が年々強くなっている。平均すると1年でR50~R100程度であろうか。(R100とは、旧バージョンに対して勝率64%程度を意味する。)
また、探索ノード数を倍にするとR100ぐらい上がるので、1,2年ごとに半分のノード数で同じ強さ(同じ質)の教師データが生成できるようになっている。つまりは、これだけで生成コストが約半分になっている。
実際、水匠5と最新版の水匠10とではR300ぐらいの差がある。これだけで生成コストが1/8である。
そう考えると水匠5のころと比べると生成コストが1/10以下になっているわけである。
そこで、水匠10(+やねうら王V9.00)で11PC(9950X 7台 + 2698 4台)で教師生成を丸一ヶ月やってみたわけである。ここで言う2698というのはXeon 2698 dualのことで、9950Xの3/4ぐらいの性能がでる。つまりは、9950X 10台相当である。
それで、結論だけ言うとその教師データだけではdlshogiの公開モデルよりはR150ぐらい弱いものしかできなかった。
しかし数年前に実験した時よりは遙かにいい結果で、おそらくはこのまま1,2ヶ月教師を生成し続ければ、dlshogiの公開モデルは超えられそうである。つまりは、NNUEで教師生成をしてdlshogiの公開モデルを超えることは可能という結論になりそうである。
水匠5と水匠10とでは生成コストが1/8になっている。その状態で9950X 10台を3ヶ月回さないとdlshogiの公開モデルに追いつけないとしたら、水匠5換算で言うと、8 × 10台 × 3ヶ月 = 9950X 1PCで20年 である。水匠5だと、(1PCの場合)20年かけないとdlshogiの公開モデルは超えられなかったということがいまになって判明したわけである。20年ってなに。怖すぎなんですけど。
そんなわけで当時dlshogiの公開モデルをNNUE系の教師で超えられなかったのも納得である。
ようやく希望の光が見えてきた。このままあと2ヶ月ほど教師生成をする予定である。結果は、追ってこのブログで報告する。
計算コストの低下等勘案すると
DL系の方が安上がりになってません?
そこもまだよくわからんのです。今後の実験結果次第です..
技術的なことを言うとDL系で教師を生成すると指し手の分布(Policy Networkの出力)まで教師データにできるので、1局面あたりの教師データの持つ情報量が高く、そういう意味では効率的に教師が生成できるので、NNUEはその点は不利ではないかと思います。ただ、ある強さのプレイヤーによる教師を生成するコスト自体はNNUEのほうが1/10ぐらいで済むので、これでその損を取り戻せないかなーと考えております。
何か台湾次第なのか、半導体部品の不穏な価格高騰が起きてません?
最低でもすかいれーくが必要らしいWin11への置き換え特需の品薄だけであれば、そのうち収まりそうですけど。
いま大規模機械学習インフラの需要拡大により、NAND/DRAMが高騰しとるです。にゅ、ニュース見ろです。
いや、ニュースを見てても、いろいろアレでw
ダダレ5とタダレ6の規格の合間でどちらをたくさん作った方がいいの?とか、ウロ戦争方面がドローン対決になってて、それの部品がどこから調達されてるのとか、見えてない要因がまだまだありそうでw
6月の水匠10をRyzen 9 9950Xで動かすを読み返しましたら、メモリが32×2で 22469円、48×2で36469円でした。
今じゃ約3倍位に値上がりしているので、15万で組むならメモリも8×2ぐらいしか狙えないレベル?
そうですなー。今年教師生成用に買った9950Xのメモリを全部あわせると1TB以上になるのでこれメルカリで売ると儲かったりして…
ダダレ5の需要がまだあるのに、増産よりも切りん産が好きなメーカーばかりだったとか、ビックリ○ンチョコのウェハースは捨ててたのにメモリのシリコーンのウェハーには直接手を出す奴までいたとか、そういうところでいいんですか?w
ウェハース(wafers)はウェハー(wafer)の複数形だす。複数形のまま、日本語でカタカナ表現として定着しただす。