Transfer Learning
Transfer Learning
Transfer Learning(転移学習)とは
ひとことで
あるタスクで学習済みのモデルの知識(重み)を、別の関連するタスクに再利用する手法。少ないデータや計算資源でも、高い精度のモデルを作りやすい。
たとえると
ピアノを長く習っていた人が、電子オルガンを始めるとすぐに上達するようなものです。指の動かし方や楽譜の読み方といった共通の力を、そのまま新しい楽器に生かせます。
現場ではこう使う
農業法人では、作物の葉の画像から病気を見分けるモデルを作りたいと考えていましたが、用意できた画像は数百枚だけでした。大量の一般画像で学習済みのCNNを使い、特徴を取り出す部分は固定したまま出力層だけを新しく学習させる転移学習を行ったところ、少ない画像でも実用的な精度が得られました。
試験のポイント
EXAM POINT「学習済みモデルを別のタスクに再利用」「少ないデータで学習」と出てきたら転移学習です。G検定では、学習済みの層を固定して新しく追加した出力層などだけを学習させるのが転移学習、学習済みの層の重みも含めて追加で学習し直すのがファインチューニングという区別がよく問われます。画像分野ではImageNetで学習したモデルを土台にする例が代表的です。
混同しやすい用語との違い
- Fine-tuning学習済みモデルの重みも含めて追加学習で調整する。転移学習(狭義)は学習済み部分を固定して使う
- Pre-training大量のデータで最初に行う学習。転移学習はその成果を別のタスクに生かす
- Data Augmentation手持ちのデータを加工して増やす。転移学習は他のタスクで得た知識を借りる