GPUを使うとどれだけディープラーニングが速くなるか?【実験結果】

GPUを使うとどれだけディープラーニングが速くなるか?【実験結果】
えびかずき
えびかずき

こんにちは、えびかずきです。

今回は、GPUでディープラーニングがどれだけ速くなるかを試してみた実験結果を紹介します!

こんな人におすすめ:
・GPUでどれだけ計算が速くなるか興味がある

結論ですが、GPUを使うと、CPUのみの時と比べて約10倍速くなりました。

開発環境

今回の実験では、ローカルのMacBookクラウドのGPU(Google Cloud Platfom)で計算速度を比較してみます。

ローカル

MacBook pro (Retina, 13-inch, Mid 2014)

OS:MacOS Big Sir
メモリ:8GB
CPU:2.6 GHz デュアルコアIntel Core i5

クラウド

Compute Engine/Google Cloud Platform

ゾーン:asia-east1-a
Environment: TensorFlow Enterprise 2.3 (with Intel® MKL-DNN/MKL)
Machine type: n1-standard-4 (4 vCPUs, 15 GB RAM)
GPU: NVIDIA Tesla T4 x 1
ブートディスク:100 GB disk
データディスク:100 GB disk

ディープラーニングのモデル

今回使用するディープラーニングのモデルは、過去記事でも紹介した画風変換のCAEを使ってみます。

今回のソースコードipynb形式でGithubリポジトリに公開しています。

試してみたい人はcloneして使ってみてください。

モデルの概要

・Convolutional AutoEncoder(CAE)による画風変換
・画風の参考画像1枚、変換テスト画像1000枚で、10epoch学習させる
・画像は224×224ピクセル
・画風の抽出はVGG16の一部を活用

結果

それぞれ学習に要した時間は、

ローカルマシンのCPU(core i5)で165分。

クラウドのGPU(Tesla T4)なら、16分という結果でした。

今回のケースでは、CPUよりGPUの方が約10倍も速いことがわかりました。

圧倒的にGPUの方が速いですね。

おまけ:学習結果のテスト

画風素材:ゴッホ「糸杉のある麦畑」

テスト1:散歩中に撮った茶畑の写真を画風変換した結果です。

テスト2:散歩中に撮った山からみた風景の写真を画風変換した結果です。

もうちょい学習を進めた方がいいかもしれませんね。

画風素材:クロード・モネ「睡蓮I」

テスト1:綺麗な森の写真です。https://pixabay.com/

テスト2:綺麗な金魚の写真です。https://unplash.com/

なんか惜しい感じがする。。

こちらももうちょい学習が必要かもですね。

まとめ

今回は、GPUを使うとディープラーニングがどれだけ速くなるかを実験してみました。

画風変換のCAEgeneratorを学習させるスピードで比べてみたところ、

ローカルマシンのCPU(core i5)より、GPU(Tesla T4)の方が

約10倍も速いことがわかりました!

結論:
CPUでちまちま計算してると日が暮れるので、
ディープラーニングの学習にはGPUを使いましょう。

今回紹介したGoogle Cloud PlatformでGPUを使う方法は、リンクの過去記事で紹介していますのでぜひご参考に。

機械学習カテゴリの最新記事