転移学習とは?

高度なディープラーニングモデルには大量のパラメータ(重み)があり、それらをゼロからトレーニングするには大量の計算リソースのデータが必要です。転移学習はこのプロセスの大半を省略する手法で、関連するタスクですでにトレーニング済みのモデルの一部を取り出して、新しいモデルで再利用します。

たとえば、このセクションの次のチュートリアルでは、すでに画像の中の数千種類の物体を認識できるようにトレーニングされたモデルを利用して、独自の画像認識器を構築する方法を紹介します。トレーニング済みモデルの既存の知識を適用すると、元のモデルで必要としたトレーニングデータよりもずっと少ないデータで独自の画像クラスを検出できます。

この手法はブラウザやモバイルデバイスのような、リソースが限られた環境でモデルをカスタマイズする際だけでなく、新しいモデルを高速に開発する際にも有効です。

転移学習を実行する際、ほとんどの場合において、元のモデルの重みを調整することはありません。代わりに、最終レイヤーを取り除き、トランケートされたモデルの出力の上で新しい(通常、非常に浅い)モデルをトレーニングします。これは、以下のセクションのチュートリアルで実演されている手法です。