PyTorchを使ったディープラーニング実践 なぜFacebookのフレームワークを使うのか

昨日から始まったPyTorchを使ったディープラーニング実践セミナーを受講しています。PyTorchとはFacebook等が開発しているディープラーニングのフレームワークです。

今回のセミナーでは、このフレームワークを使用し自然言語処理や敵対生成ネットワークなどの人工知能アルゴリズムの実装方法について学びます。今一番勢いがあるPyTorchの概要について知りたいと思い受講しました。

PyTorchディープラーニングセミナー概要

  • セミナータイトル:深度学习之PyTorch实践篇
  • 1回2時間×8回(月、水 20:00~)
  • 受講料 399元
  • 講師:清華大学博士、重点大学コンピュータサイエンス講師兼ITベンチャー高級顧問

初回講義内容

1回目の講義は下記の通りです

  • ディープラーニングフレームワークの種類
  • なぜPyTorchを使うのか
  • 活性関数とPyTorchでの実装方法

ディープラーニングフレームワークの種類

TensorFlow

Googleが開発

利点:利用者が多くサンプルプログラムが多い。Googleが強く推している。

欠点:設計が複雑で初心者に扱いにくい。(Googleが扱う大規模な処理をサポートするために複雑になっている。)

PyTorch

Facebook等が開発

利点:柔軟性があり高速で実装しやすい

CNTK

Microsoftが開発

利点:Microsoftが得意とする領域(音声識別など)については高性能

欠点:使う人が少ない

MXNet

Amazon等が開発

世に出るのが遅かったので、利用する人が少ない

Keras

Googleが開発。各種フレームワークを簡単に使用するためのAPI

利点:とにかく簡単に理解、開発をできる

欠点:上達するのが早いが、細かい調整・対応が難しい。会社や実務での利用はあまり向かない

 なぜPyTorchを使うのか

 PyTorchの利用者は特に最近増えていて、ICLR2019(AIに関する国際会議)での論文数は252件(2018年は87件)と大幅に増えています。逆にGoogleのTensorFlowのICLR2019での論文数は266件(2018年は228)とトップですが今までの勢いがありません。

アメリカ一流大学のディープラーニングカリキュラムでも2019年からTensorFlowの利用をやめ、PyTorchを使用するケースが増えています。