収録日:202012019
発表者:@yohei_kikuta
内容:
- DAWNBench とは?
- Stanford 大学が企業と連携して実施している DAWN という研究プロジェクトの一つの成果
- end-to-end でディープラーニングの学習や推測のベンチマークを取るためのコンペ
- 何かの資料を見てるときに引用されてて知った
- DAWN プロジェクトについて
- 2017 年から始まった 5 年間の研究プロジェクトで、企業と連携していわゆる AI の民主化のための活動をするプロジェクト
- 少数企業(Ant Financial, Facebook, Google, vmware)が参画
- DAWNBench 以外にも学習用のラベルをつけるツールである Snokel(いまは end-to-end の開発プラットフォームに注力してるとのこと)なども含まれている
- NeurIPS2017 の DAWNBench の論文
- そもそもの問題意識
- ディープラーニングは学習や推論の計算コストが高いので、精度だけ見てても評価は不十分なことがあるし、過去のベンチマークは 1 つのミニバッチを処理する時間などしか見ていなくて不十分
- 精度や収束までの時間などは用いる手法によって複雑に絡み合っているため、もっと適切でかつ統一化されたベンチマークが必要
- DAWNBench の対象
- タスクは CIFAR10 や ImageNet の画像分類と SQuAD の質問応答
- 指標は以下の 4 つで、特に学習において validation データである設定した精度まで達成するまでを基準としていることが特徴的
- 設定した精度を(validation データで)達成するまでの学習時間
- 設定した精度を(validation データで)達成するために掛かった費用を public cloud instance で計算したもの (in USD)
- 1 つの入力データを予測するための平均 latency
- 10,000 個の入力データを予測するために必要となる平均費用(in USD)
- DAWNBench を用いて評価するのが適切なのかの事前検証実験
- 設定した validation 精度を達成するまでの時間という指標は有益な指標なのか?
→ Yes. バッチサイズは精度と学習時間に関して trade-off の関係にあり、小さめだと最終的な精度は高いが収束まで時間が掛かり、大きめだと最終的な精度は低いが学習は早い。その trade-off をうまく捉えられている - 複数の最適化手法は単純に組みわせた分だけ効果を発揮するか?
→ No. 例えば、バッチサイズ数の変更と Stochastic Depth を組み合わせたとき、単独でやった場合の学習時間短縮を単に掛け合わせたものにはならないし、精度低下がどうなるかも予測することは困難。相互作用を事前に把握することは難しいので、(特定の最適化手法だけに focus して何かを述べるのではなく)end-to-end で全部入りのものを評価するのが大事 - ハードウェアやソフトウェアフレームワーク間による差異はあるか?
→ Yes. TensorFlow は PyTorch を比べると CPU では速いが GPU では遅い。ハードウェアに関してはそんなに非自明な結果はないが、並列性が低いうちは線形に学習時間が減ってコスト一定を保てるが、並列性が大きくなるとその関係性が壊れる
- 設定した validation 精度を達成するまでの時間という指標は有益な指標なのか?
- コンペ開催
- 決まったフォーマットに従って参加者がモデルを提出
- 20200327 に終了
- 例えば、ImageNet で validation データで top5 の accuracy 93% を達成するものの top として、Alibaba グループの Apsara AI Accelerator (AIACC) を使った ResNet-50 モデルが、学習時間 2 min 38 sec で、学習コストが $7.43 という結果
- (上と別のモデルで)予測 latency は 0.0739 msec で、10,000 個の入力データ予測の平均費用が $0.00(有効数字計算でこうなってそう)とかになってて笑う
- そもそもの問題意識
- 2018 年に arXiv に出たコンペ結果を分析した論文
- コンペの submission を分析して、指標として導入した「設定した精度を(validation データで)達成するまでの学習時間」などが適切だったかの振り返り
- ちなみにこの論文では time-to-accuracy (TTA) という名称になっている
- 分析結果から分かったこと
- TTA は画像分類・機械翻訳・物体検出において学習の際のランダム性に対して robust な指標である
- TTA に最適化されたモデルは(TTA を使わない)典型的に最適化されたモデルと同レベルの汎化性能
- ハードウェアを十分には使い切れてないため、さらなる改善が可能と思われる
- このベンチマークの活動は後に MLPerf という organization(その後さらに変わって現在は MLCommons)になって継続されている
- BERT を取り入れたり強化学習タスクを取り入れたり...
- ただめっちゃ盛んに使われているという感じはなさそう
- コンペの submission を分析して、指標として導入した「設定した精度を(validation データで)達成するまでの学習時間」などが適切だったかの振り返り
参考情報:
- Stanford DAWN project:https://dawn.cs.stanford.edu/
- DAWNBench:https://dawn.cs.stanford.edu/benchmark/index.html
- NeurIPS2017 の論文(ML System Workshop で発表):https://dawn.cs.stanford.edu/benchmark/papers/nips17-dawnbench.pdf
- DAWNBench の結果を分析した論文:https://arxiv.org/abs/1806.01427
- MLCommons organization:https://github.com/mlcommons
- MLPerf Training Benchmark:https://arxiv.org/abs/1910.01500
- MLPerf Inference Benchmark:https://arxiv.org/abs/1911.02549