AWSで1000万円分の計算資源を溶かしてしまう男

※ タイトルは「AWSの費用に換算して1000万円分の計算資源」という意味です。「AWSにおいて1000万円分の計算資源を溶かした」という意味ではありません。念の為。

WCSC29に参加することにしたものの、やねうら王、一向に強くならないんですよ。

しかし、ようやく強くならなかった原因が見えてきたので詳しくは選手権終了後に書きます。

SDT5(第5回 将棋電王トーナメント)の時に、Aperyがelmo + R230ぐらいまで強くなった(ただしエンジンはApery使用時)と平岡さんがおっしゃっていて、depth 8の教師でそんなに強くなるものかと思わされたものです。(こちらは、depth 8で教師を生成してelmo + R90、depth 10で教師を生成していて、elmo + R180ぐらいにしかならなかったので)

この原因として私が考えていたものは、
1) 学習部の差(計算精度、学習アルゴリズム等)
2) 探索部の質の違い(Aperyのほうが短時間に特化している意味があるので短時間での教師生成に向いているか等)
3) 教師の質の差(教師の生成手法の問題、教師生成時の対局開始局面の違い等)
4) 教師局面の使い方の問題(2世代前の教師を混ぜて学習に用いる等)
の4つでした。

ところが、tanuki-(2018年度版)が、やねうら王の学習部を用いて(教師生成部はtanuki-独自のもの)、NNUEをelmo + R230程度にしたことから、少なくとも1)の問題ではないことが証明されました。

次に、Apery(SDT5)の評価関数をやねうら王で用いた場合は、elmo+R180程度のようでした。もしかすると、Apery(SDT5)の探索部を補うように学習している意味があって、Apery(SDT5)の評価関数自体は、そこまで強くはなっていないのかも知れません。であったとしても、私のほうはdepth 10で教師を生成してelmo + R180程度であったので、depth 8でこの強さになるのであれば、教師を生成するための計算資源が1/3程度で済みます。私だけ相手の3倍の計算資源を使わないといけないとしたら、勝てる道理がありません。

そこで、是が非でもこの原因を探る必要がありました。

2)の可能性はわずかに残されていますが、何より3),4)が怪しいです。
これを検証するためにずいぶんと我が家の暖房器具、もといPCを回し続けました。

本来ならばSDT5の直後に調べておくべき問題ですが、私のほうは、1年以上、この問題を放置していました。そこで、まず、SDT5時点のApery(の学習手法)に追いつかなければなりません。

とりあえず、今回の記事の趣旨はそこではなく(詳しくは選手権終了後に書きます)、これに要した計算資源についてです。

私の保有するPCは、AWSのc5.18xlarge相当×8台なのですが、これをLinuxでオンデマンドで借りると3.06USD/h。1$=115円で計算すると月253,368円。×8PC×5ヶ月で10,134,720円となります。

スポットインスタンスだとその1/4程度なのですが、それでも250万円程度はかかる計算になります。それからするとわずかな電気代(月額8万円程度。夏はエアコンの冷房で+3万円ぐらい)と、わずかなマザーボード・メモリなどの破損(半年で50万円ぐらい?)で済んでいるので、ずいぶんとリーズナブルな気はします。

何が言いたいかと言うと、many coreのCPUが安くなってきている昨今、AWSよりはPCを自作するほうが1/3ぐらいの値段で済むのではないかと言うことです。一時的にブーストしないといけない場合は別ですが、そうでなければ自作PCを使ったほうが良いのではないかということです。

本記事がAWS大損系AI開発者の皆様の参考になりましたら幸いです。

AWSで1000万円分の計算資源を溶かしてしまう男” への11件のコメント

  1. わずかな電気代の部分、冬に日常の暖房費が安くなってたりはしないんですかね(笑)?

  2. ちょっと不思議に思ったのは、やねさん、ここまで経済的に見合わないのに、将棋ソフト製作には飽きが来ないですね。何が、ここまでハマらせるのでしょうか?

  3. 年がら年中使うなら買ったほうがいいのは当たり前の結論だと思うが。初期投資+電気代+設備投資=AWSになるのはどれくらいですか?1年くらい?

    • 教師局面生成用でメモリ少なめ(16GB)で良ければ、いま20コアのXeon(e.g.Xeon Gold 6140)が30万円ぐらいなので1PC 80万円ぐらいで用意できると思います。これがc5.18xlarge相当ぐらいなので、AWSでオンデマンドだと月253,368円になる計算。半年経たずして元が取れます。AWSのスポットインスタンスですとその1/3ぐらいの価格なので、1年ぐらいかと思います。しかし実際には、1年後にこのPCを誰かに売却してしまってもいいはずで、1年後であっても元の半額ぐらいでなら売れるでしょうから、そう考えれば半年以上使うなら買ったほうが安いと言えるのではないかと…。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です