転移学習は、知識の保存と獲得に重点を置いた機械学習技術の一部です。つまり、1 つのプロジェクト/モデルで直面した問題を学習して解決し、それを他のプロジェクト/モデルに適用して問題を最小限に抑え、結果を最大化します。
たとえば、車を認識するために得られた知識は、トラックを認識するためにも使用できます。
転移学習には 2 つの重要なタイプがあります。
- 近々移転 – これは、あるプロジェクトで学んだことを、非常に類似した別のプロジェクトに適用できる手法です。
- 遠距離転送 - これは、あるプロジェクトで得た知識を、異なるコンテキストにある別のプロジェクトに適用する手法です。このタイプの学習は、ユーザーが学習内容を、単純なものから重要なものまで、あらゆる状況に適用するのに役立つため、非常に重要です。
転移学習は、あるタスクのデータ量が限られている一方で、別のタスクのデータ量が多い場合に特に役立ちます。
転移学習のプロセス中、ユーザーは次の 3 つのことを知っておく必要があります。
転送するもの: これはプロセス全体の中で最も重要なステップの 1 つです。
ここで、ユーザーは、パフォーマンスを最大化するために、知識のどの部分を定義済みモデルから別のモデルに移動できるかについての答えを見つけ出す必要があります。
転送するタイミング: ここで、ユーザーは転移学習をパフォーマンスを低下させるのではなく向上させるために使用します。ユーザーは、いつ転移すべきか、いつ転移すべきでないかに注意する必要があります。
転送方法: ユーザーは、何をいつ転送すべきかがわかったら、その知識/学習を転送できる方法を見つけるか特定する必要があります。
これにはさまざまなテクニックの使用が含まれる場合があります。
転移学習はどのように機能しますか?
転移学習の作業は、以下の2つのモデルと、ユーザーが選択したモデルによって決まります。その2つは以下のとおりです。
モデルアプローチの開発
このタイプのアプローチでは、ユーザーは要件に応じてモデルを開発し、開発されたモデル/プロトタイプの仕様を最終製品の要件と一致させる必要があります。
このアプローチでは、ユーザーはいくつかの手順に従う必要があります。手順は以下のとおりです。
ソースタスクの選択 - ユーザーは、仕様、デザイン、コンセプト、その他の情報など、作成したいモデルに関するいくつかのデータを収集する必要があります。
モデルの開発 – 次に、ユーザーは収集した情報を参考にしてモデルを作成する必要があります。作成するモデルには、実際に作りたい製品の機能のいくつかが含まれている必要があることを覚えておく必要があります。
モデルの再利用 - ユーザーが作成したモデルは、2 番目の製品に使用するモデルの開始点として使用する必要があります。
ここで、ユーザーは以前に作成したモデルや製品で使用したすべての作業テクニックを使用できます。
モデルの調整 - ユーザーは、自分の要件または製品の需要に応じてモデルを調整できます。
事前学習済みモデルアプローチ
このタイプのアプローチでは、モデルは既にユーザー側にあります。ユーザーは、このアプローチにおいていくつかの手順に従う必要があります。具体的には以下のとおりです。
ソースモデルの選択 - ユーザーは、既に存在するモデルの中からソースモデルを選択する必要があります。モデルは、仕様に応じて、大規模なデータセットまたは小規模なデータセットをベースにすることができます。
モデルの再利用 - ユーザーが選択した事前トレーニング済みモデルは、新しいモデルを開発するための新たなポイントとして使用できるようになりました。
ここで、ユーザーは自分の技術的要件に応じてモデルのすべての部分を使用できます。
モデルの調整 - ユーザーは新しい要件や製品の需要に応じてモデルを調整できます。
事前トレーニング済みモデルアプローチは、転移学習で広く使用されているアプローチです。
転移学習の応用
転移学習は今日の世界で広く利用されています。多くの新しい技術は転移学習に基づいています。いくつか見てみましょう。
シミュレーション:
一般的に、機械学習システムの有効化手順では、現実世界におけるシミュレーションが用いられます。シミュレーションでは現実世界の反応をすべて再現できないため、オブジェクトとソースはシミュレーション上では異なって見えます。
シミュレーションは、ユーザーの学習とデータ収集に役立ち、トレーニングにも役立ちます。
シミュレーションはゲーム業界で広く利用されており、Googleでもマップの開発や自動運転車のユーザートレーニングに活用されています。
ロボット工学:
転移学習はロボット工学にも応用されています。ロボットを開発し、現実世界で訓練することは、企業にとってコストがかかる可能性があります。
転移学習では、ロボットは訓練を受け、シミュレーション能力を獲得することで、人間の作業を簡素化する活動を実行できるようになります。
転移学習のもう一つの用途は、ロボットが実際の人間よりもはるかに多くのことを実行できることです。例えば、医療現場での活用などが挙げられます。
NLPツール:
NLPは自然言語処理(Natural language processing)の略です。ディープラーニングの手法は、自由記述テキストを解釈し、分析を支援するツールの設計にインスピレーションを与えてきました。
NLPは、ユーザーが提供するデータのパターンを分析し、プログラムの理解度向上に役立ちます。
結論
転移学習は、ユーザーが新しいモデル/ドメインに必要なデータが不足している場合に役立ちます。転移学習は、ユーザーが技術的な問題を特定し、それを修正してパフォーマンスを最大化するのに役立ちます。




