転移学習とファインチューニングの違いの説明として、最も適切なものを1つ選びなさい。
- ①転移学習は学習済みの層の重みを固定して新たな出力層などだけを学習し、ファインチューニングは学習済みの重みも含めて調整する。
- ②ファインチューニングは学習済みの層の重みを固定して新たな出力層などだけを学習し、転移学習は学習済みの重みも含めて調整する。
- ③転移学習とファインチューニングはどちらも、学習済みの重みを使わずにネットワーク全体をゼロから学習し直す方法である。
- ④転移学習は元の課題とまったく同じ課題にだけ使え、ファインチューニングは元とは異なる課題にだけ使える方法である。
答えと解説を見る
どちらも、大量のデータで学習済みのモデルを、別の課題に再利用する方法です。一般に、転移学習は、学習済みのモデルの重みを固定したまま、新たに付け加えた出力層など一部の層だけを、新しい課題のデータで学習させる方法を指します。ファインチューニングは、学習済みの重みを初期値として、ネットワークの全体(または一部)の重みも含めて、新しい課題のデータで学習して調整する方法を指します。どちらも、少ないデータと計算量で、高い性能のモデルを作れるのが利点です。
他の選択肢が不適切な理由
・ファインチューニングが重みを固定する:2つの説明が逆になっています。
・学習済みの重みを使わずにゼロから学習し直す:どちらも学習済みの重みを活用する方法です。
・同じ課題と異なる課題で使い分ける:どちらも、学習済みのモデルを新しい課題に再利用する方法です。違いは、学習済みの重みを固定するか、調整するかにあります。
覚え方のポイント
「転移学習=固定して付け足した部分だけ学ぶ」「ファインチューニング=全体を微調整(fine=細かく)」。ただし、2つの言葉の使い分けは文献によって異なることもあるため、「学習済みの重みを再利用する」という共通点をまず押さえましょう。