転移学習(Transfer Learning)

Transfer Learning

ディープラーニング手法 重要度:高

概要

転移学習(Transfer Learning)とは、あるタスクやドメインで学習したモデルの知識を、別のタスクやドメインに転用する手法です。大規模なデータセットで事前に学習(Pre-training)されたモデルを基盤として、目的のタスクに合わせてファインチューニング(Fine-tuning)することで、少量のデータでも高い精度を達成できます。

転移学習は、大量のラベル付きデータを用意することが困難な実務の場面で特に有効です。例えば、ImageNetの100万枚以上の画像で事前学習されたCNNモデルを、数百枚のデータしかない医療画像診断のタスクに適用することで、ゼロから学習するよりもはるかに高い精度を得ることができます。現在のディープラーニングにおいて、転移学習はモデル構築の標準的なアプローチとなっています。

詳細解説

事前学習(Pre-training)

事前学習とは、大規模なデータセットを使って汎用的な特徴表現を学習するプロセスです。画像認識の分野では、ImageNet(約1400万枚・1000クラスの画像データセット)で学習されたモデルが広く利用されています。自然言語処理の分野では、大規模なテキストコーパスを使ってBERTやGPTなどの言語モデルが事前学習されています。事前学習されたモデルは、浅い層で汎用的な特徴(エッジ、テクスチャ、色など)を、深い層でより抽象的な特徴(物体のパーツ、構造など)を学習しています。

ファインチューニング(Fine-tuning)

ファインチューニングとは、事前学習されたモデルの重みを初期値として、目的のタスクのデータで追加学習を行うプロセスです。一般的には以下の2つの方法があります。

Feature Extraction(特徴抽出)方式:事前学習モデルの重みを固定(凍結)し、最後の分類層のみを新しいタスクに合わせて再学習する方法です。少量のデータでも安定した学習が可能ですが、表現力は制限されます。

Fine-tuning(全体調整)方式:事前学習モデルの全層(または一部の層)の重みを更新する方法です。より高い精度が期待できますが、データ量が少ないと過学習のリスクがあります。一般的には、浅い層の学習率を小さく、深い層の学習率を大きくする段階的なファインチューニングが行われます。

ドメイン適応(Domain Adaptation)

ドメイン適応は、転移学習の一種で、学習データ(ソースドメイン)と適用先のデータ(ターゲットドメイン)の分布が異なる場合に、この分布の差を埋める手法です。例えば、明るい照明下で撮影された画像で学習したモデルを、暗い環境の画像に適用する場合にドメイン適応が必要になります。ソースドメインとターゲットドメインの類似性が高いほど、転移学習の効果は高くなります。

ドメインの類似性と転移学習の効果

転移学習の効果は、ソースドメインとターゲットドメインの類似性に大きく依存します。自然画像で事前学習したモデルを別の自然画像タスク(例:犬猫分類)に転移する場合は高い効果が期待できます。しかし、自然画像から医療画像(X線画像など)への転移のように、ドメインの差が大きい場合は効果が限定的になることもあります。ドメインの差が極端に大きい場合、転移学習がかえって精度を下げる「負の転移(Negative Transfer)」が発生する可能性もあります。

自然言語処理における転移学習

自然言語処理(NLP)における転移学習は、近年最も大きな成功を収めている分野の一つです。BERTは大規模テキストで「マスクされた単語の予測」と「次文予測」の事前学習を行い、各タスクにファインチューニングします。GPTは「次の単語の予測」で事前学習を行い、プロンプトを通じて多様なタスクに対応します。これらのモデルにより、少量のタスク固有データでも高い精度を実現できるようになりました。

マルチタスク学習との違い

マルチタスク学習は複数のタスクを同時に学習する手法であり、転移学習とは異なります。転移学習では先にソースタスクを学習してからターゲットタスクに適用しますが、マルチタスク学習では複数のタスクの損失を同時に最適化します。ただし、両者はモデルの汎化性能を向上させるという目的で共通しています。

歴史・背景

転移学習の概念自体は1990年代から機械学習の研究で議論されていました。しかし、実用的に大きなインパクトを持つようになったのはディープラーニングの発展以降です。2012年のAlexNetの成功を契機に、ImageNetで事前学習されたCNNモデルを他のタスクに転用する研究が盛んになりました。

2014年にYosinskiらが発表した論文では、CNNの各層が学習する特徴の汎用性について詳細な分析が行われ、浅い層ほど汎用的な特徴(エッジ、テクスチャ)を学習し、深い層ほどタスク固有の特徴を学習することが示されました。この知見は、どの層まで凍結し、どの層からファインチューニングすべきかの指針となりました。

2018年には自然言語処理でも転移学習が大きなブレークスルーをもたらしました。ELMo、ULMFiT、BERT、GPTが相次いで発表され、事前学習+ファインチューニングのパラダイムが確立されました。特にBERTは11種類の自然言語処理タスクで当時の最高精度を更新し、転移学習の有効性を広く実証しました。

具体的な事例

  • 医療画像診断:ImageNetで事前学習されたResNetやVGGNetを、皮膚がん・眼底画像・胸部X線画像などの医療画像分類にファインチューニングする事例が多数報告されています。数百〜数千枚のデータでも実用的な精度が得られます。
  • 製造業の品質検査:事前学習モデルを工場の製品画像に適用し、不良品の検出を自動化する事例があります。工場での撮影条件に合わせたファインチューニングが行われます。
  • BERTによる日本語テキスト分類:日本語Wikipediaなどで事前学習されたBERTモデルを、企業の問い合わせ分類、ニュース記事のカテゴリ分類、感情分析などにファインチューニングして使用する事例があります。
  • GPTのプロンプトエンジニアリング:大規模言語モデルでは、ファインチューニングせずにプロンプト(指示文)を工夫するだけで多様なタスクに対応できるIn-Context Learningも転移学習の一形態と考えることができます。
  • 物体検出モデル:YOLOやFaster R-CNNのバックボーンとして、ImageNetで事前学習されたCNNを使用し、特定の物体検出タスクにファインチューニングすることが標準的です。

G検定での出題ポイント

G検定では、転移学習に関して以下のような内容が出題される傾向があります。

  • 転移学習が「あるタスクで学習した知識を別のタスクに転用する手法」であること
  • 事前学習(Pre-training)とファインチューニング(Fine-tuning)の関係
  • 少量のデータでも高い精度を達成できること
  • ドメインの類似性が転移学習の効果に影響すること
  • 負の転移(Negative Transfer)の概念
  • ImageNet事前学習モデルの活用
  • BERTやGPTにおける事前学習+ファインチューニングの枠組み
試験対策のポイント
  • 転移学習は「事前学習(Pre-training)+ファインチューニング(Fine-tuning)」の流れを理解する
  • 少量のデータでも高精度なモデルを構築できることが最大の利点であることを覚える
  • ソースドメインとターゲットドメインの類似性が高いほど効果が大きいことを押さえる
  • ドメインの差が大きすぎると「負の転移」が起きる可能性があることを理解する
  • Feature Extraction(層を凍結)とFine-tuning(全体調整)の2つのアプローチを区別する