こんにちは。SCSKの島村です。
AIMLの勉強をしていると、「事前学習済みモデル(pre-trained models)」 という言葉を目にする方も多いと思います。実際に、Google CloudやAWSのAIサービスの中にも「事前学習済みモデル」との記載があるものも少なくないと思います。
また、機械学習における「事前学習モデル」と一緒に登場するキーワードとして「転移学習(transfer learning)」とう言葉もあります。
今回は、そんな機械学習における「事前学習モデル(pre-trained models)と転移学習(transfer learning)」について、簡単にご紹介できればと思います。
事前学習モデル(pre-trained models)と転移学習(transfer learning)とは??
機械学習モデルで高い性能を実現するためには、質のいいデータで大規模に学習させる必要があります。しかしながら、実際にデータを収集するにはセンサーの設置やネットワークの構築などのコストがかかるため、大規模データの収集は容易ではありません。
また、異常データなど絶対的に量が少ないデータも数多くあるのが現実です。
そこで、少量のデータを活用して高い性能を実現する方法として、収集しやすい一般的なデータで汎用的に使える事前学習済みモデルを構築し、そこに収集した少量の学習データを用いて学習させるような手法を用います。
この学習方法を転移学習と呼び、転移学習の基盤となる事前学習済みモデルについては、用途に合わせて様々なものが提供されています。
- 事前学習済みモデル(pre-trained models)とは …. 大規模なデータセットを用いて訓練した学習済みモデル
- 転移学習(transfer learning)とは …. 事前学習済みモデルを小規模データに適用させて効率的に学習させる方法
よく用いられる有名な事前学習済みモデル
TensorFlow Hub提供モジュール(一部) | ||
---|---|---|
分野 | モデル名 | |
画像系 | Classification (399)
Feature vector (217) Object detection (100) |
Inception(V1,V2,V3)
Inception-ResNet(V2) MobileNet(V1,V2) ResNet(V1,V2) etc… |
テキスト系 | Embedding (207)
Language model (98) Preprocessing (16) |
NNLM
Universal Sentence Encoder word2vec etc… |
動画系 | Classification (18)
Generation (5) Audio text (3) |
MoVieNet etc… |
音声系 | Embedding (16)
Event classification (13) Command detection (11) |
wav2vec2 etc… |
*モデルの詳細については今回は割愛させていただきます。
転移学習(transfer learning)のメリット
- 既に優秀な事前学習済みモデルが多く存在
- 少量の訓練データで、性能を発揮できる(汎化を改善可能)
- 最小限の計算資源で、学習時間を短縮できる
最後に
今回は「事前学習モデル(pre-trained models)と転移学習(transfer learning)」についてご紹介させていただきました。
今後とも、AIMLに関する情報やGoogle CloudのAIMLサービスのアップデート情報を掲載していきたいと思います。
最後まで読んでいただき、ありがとうございました!!!