転移学習(CV)とは
転移学習(Transfer Learning)とは、あるタスクやドメインで学習済みのモデルの知識を、別のタスクやドメインに活用する機械学習手法です。コンピュータビジョン分野では、ImageNetなどの大規模データセットで事前学習したモデルを基盤として、目的のタスクに微調整(Fine-tuning)する手法が広く普及しています。
| ひとことで言うと | 大量の一般画像で学習済みのモデルを、自社の判定課題に転用する手法。 |
|---|---|
| 何がうれしいか | 数百枚程度の画像でも実用的な精度が出る。中小企業のAI導入の定番。 |
| 注意点 | 元の学習画像と対象が違いすぎると効果が薄い(顕微鏡画像など)。 |
転移学習の方法
コンピュータビジョンにおける転移学習の主な方法は以下の通りです。特徴抽出器として利用する方法では、事前学習済みモデルの畳み込み層を固定し、最終層のみを新しいタスクに合わせて学習します。Fine-tuning方式では、事前学習済みモデル全体を小さな学習率で再学習します。段階的なFine-tuningでは、最初に最終層のみを学習し、その後段階的に下位層も解凍して学習します。近年ではCLIPやDINOv2のような基盤モデル(Foundation Model)が登場し、より汎用的な転移学習が可能になっています。
1学習済みモデルImageNetなどで訓練済み
▶
2特徴抽出部を流用形や模様を見る力
▶
3出力層を差し替え良品/不良品の2分類に
▶
4自社画像で微調整数百枚で学習
▶
5検査に導入低コストで実用化
転移学習の利点と実践
転移学習の最大の利点は、少量のデータでも高精度なモデルを構築できることです。数百枚の画像でも、ImageNet事前学習モデルを活用することで実用的な精度を達成できます。また、学習時間の短縮、計算コストの削減にもつながります。PyTorchやTensorFlowでは、ResNet、EfficientNet、Vision Transformerなどの事前学習済みモデルが簡単に利用でき、転移学習の実装は非常に容易になっています。