【Google】【DeepMind】 カスタマイズしたAlphaGo の運用費を1年 100万程度に抑えるクラウド環境をAWSで設計してみる【パーソナルAI】

今回はタイトルの通り

AlphaGoがお金と大規模計算リソースをつぎ込み

お金の力で人間を敗北させたと認識している方々に対し

AWSを使いAlphaGoをシングルマシン環境で稼働させる事により

ハサビス型AIが中小企業でも安価なコストで利用出来

個人用のパーソナルAIとしても使用可能な構成を示したいと思います。

 

まずNatureに掲載されたハサビスの論文のfigure4をご覧下さい

”Mastering the game of Go wiht deep neural networks and tree search”

Mastering the game of Go with deep neural networks and tree search (PDF Download Available)

Figure 4: Tournament evaluation of AlphaGo .  

 

グラフC.

CPU,GPUのリソースを変化させ1手2秒の思考時間を与えて対戦させた結果を元にしたグラフ。薄い青色のグラフSingle Machineが非同期スレッド探索による単独の仮想マシンでのレーティング※1。 Distributedが複数マシンの分散環境での結果です。

グラフAではレーティングのみで判断すればSingleMachineの8GPU,40CPUを積んだマシンでヨーロッパチャンピオンのFanFuiに肉薄するレーティングであり、ZenやCrazy Stoneの様な囲碁プログラムに対しては圧倒した結果が出ています。

AlphaGoを個人で使用する分には人間のプロレベルの能力があれば十分と考えられます。

 

ではこのSingleのAlphaGoを使用するには運用コストはどれくらいになるでしょう?

ハサビスらはGoogle Cloud Platform(GCP)の環境をしようしたとの事ですが

一般の顧客が使用するGPUインスタンスがまだGCPに用意されていないので

AWSLinux GPUインスタンスで構築するものとし

最も高性能なg2.8xlarge インスタンスを使用します。

リージョンによって値段が違う為、

リザーブドインスタンスを1年間、米国バージニアリージョンで起動する事を想定します。

料金 - Amazon EC2 | AWS

 

インスタンスの性能

モデル GPU vCPU メモリ(GiB) SSD ストレージ(GB)
g2.2xlarge 1 8 15 1 x 60
g2.8xlarge 4 32 60 2 x 120

 

リザーブドインスタンスの場合(オンデマンドは2.6$/1h)

g2.8xlarge

1 年間 
お支払い方法前払い毎月*実質的時間単価**オンデマンドと比較した費用節減オンデマンド(毎時)
前払いなし $0 $1384.08 $1.896 27% $2.6 /1 時間
一部前払い $9224 $414.64 $1.621 38%
全前払い $13912 $0 $1.5881

 

GPU4個,CPUが32個の環境で論文ではレーティングを測定してないですが

g2.8xlargeのシングルマシンでAlphaGoを実行した場合は

論文上のマトリックスから2850から2738付近になると推測されます。※2

 

 

Configuration and performance
ConfigurationSearch
threads
No. of CPUNo. of GPUElo rating
Single[6] p.10-11 40 48 1 2,151
Single 40 48 2 2,738
Single 40 48 4 2,850
Single 40 48 8 2,890
Distributed 12 428 64 2,937
Distributed 24 764 112 3,079
Distributed 40 1,202 176 3,140
Distributed 64 1,920 280 3,168

 

 

ヨーロッパチャンピオンのFanFuiより1段格が落ちるレベルと言えそうですが

仮にリザーブドインスタンスのシングルマシンで1年運用したとすると

約157万円となります。

13 912米ドル =157.233 万円
 
仮に個人で使用したい場合
オンデマンドインスタンスを1月使用したと考えると
2.6*24*30=1872$となり
21.2 万円程となります。

 

分散環境については少数のマシンの分散化は逆にロスが大きいと思われ

ハサビスらは64GPUの環境から分散環境でのレートを測定しています。

しかし分散環境への移行はスレッド、CPU,GPUの増加率がレーティングの増加に寄与しているとは言い難い為、単純にプロ棋士より1段落ちるくらいの性能を出す要件であればシングルマシンの環境の方がAlphaGoはコストパフォーマンスが高いと言えそうです。

分散環境をAWS上で構築するなGPUベースで確実にFanFuiに匹敵するマシンを構成するなら上記のリザーブドインスタンスを16台購入し

1年間 157.233 * 16=2515.728 万円といった所でしょうか。

 

上記の分散環境のオンデマンドインスンスを1ヶ月使用した場合

338.5万円程

これは少々個人には厳しいですが

中小企業には十分捻出可能と言えるでしょう。

実際にテストしなければ確定的な性能は不明でありますが

論文から得られる情報とAWSの料金を元にした考察では

短期間の使用の目的であれば中小企業、個人であってもハサビス型AIの恩恵は受けられると言えます。

 

 

 

 

 

 

※Note:

少なくともハサビスの論文の評価は学習済みのモデルを使用する分には       

上記の評価を保証してくれそうです。

しかし学習用データ収集及びデータからの学習を含めて運用するとなると別途コストをかけた方が現実的な時間で処理が終了する可能性もあります。

本エントリーとは別に調査してそのあたりも書きたいと思います。

 

※1.レーティングにはイロレーティングを使用

ざっくりどんなレーティングか見てみますと 

レート200の差がある場合、高いレート保有者が76%で勝利

差が400あると11回に10回

差が800で大体100回に99回

差が1200で大体1000回に999回

レートの高い方が勝利するという確率を表したものとの事。

イロレーティング - Wikipedia

AlphaGoについては図のレーティングはヨーロッパチャンピオンのFanFuiに勝利した段階でのAlphaGoの評価である為、セドルとの手合いに使用されたバージョンとは異なるでしょう。

AlphaGoのレートは学習を積み重ねた現在の方が高い可能性があります。

 

※2.分散環境では24->40へのスレッド増加 438->764へのCPUの増加

 GPUの増加がレーティング増加にあまり寄与していないので

   上記の様に推測しました。

 この値も結構怪しいのでAlphaGoが公開されるかGithubで構築されている

 レプリカが上手く動けば

 実際にインスタンス短時間借りて測定してみたいです。

 1時間2.6ドルですし1万円くらい使えば2日くらい対戦させられます。

 

*著作権については必要なものは引用までさせて頂いておりますが

 問題等御座いましたらお手数ですがご連絡頂けますと幸いです。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

大規模リソースと数十億をつぎ込んだ事が主要因で

人間のプロを倒すに至ったという認識が多い為

セドル戦に近い性能のハサビス型AIが個人や中小企業でも利用し得る

という事を示しました。

 

私が読んだ例:

1.IT media

www.itmedia.co.jp

2.個人ブログ

AlphaGoのサーバ料金は最低60億円!!? | ふくゆきブログ

 

3.コメント欄で大規模リソースがなかったらAlphaGo強くないという意見が見られるサイト、Yahooとかも同様

 

AlphaGoが誇大広告ぎみな件: A級リーグ指し手1号

 

上記の結論はGoogle,AI技術が人々の職を奪うという

恐怖から誤認識をベースにして導出された結論だと思います。

ITmediaさんの様な情報により重い責任を持つサイトも

似た様な認識をされているようでした為

自分の把握している範囲で記事を書かせて頂きました。

AIを使い、作ってみたいと思う方々の理解の助けになり

人々がAIを役立てようと思えるよう貢献出来れば幸いです。