マルチタスク学習は、複数のタスクに対して共同で最適化されるモデルであり、関連するタスクが表現を共有し、元のタスクに関するより適切な決定境界を学習することでモデルのパフォーマンスを向上させます。複数のタスクを同時に解決するために、単一のニューラル ネットワークがよく使用されます。タスク グループを共同で解決すると、推論時間の短縮に加えて、予測精度の向上、データ効率の向上、トレーニング時間の短縮などの利点もあります。
マルチタスク学習とは、機械学習モデルが複数の異なるタスクを同時に処理できることを意味します。モデルは表現を共有できるため、データの利用効率が向上し、モデルの収束が高速化され、過剰適合の問題が軽減されます。
人間は転移可能なスキルを学ぶことが多いため、マルチタスク学習は人間の学習メカニズムにより似ています。たとえば、自転車に乗れるようになると、オートバイに乗れるようになりやすくなります。これを帰納的知識伝達と呼びます。
この知識伝達メカニズムにより、人間はわずかな例のみ、または例なしで新しい概念を学習できます。これは、機械学習ではそれぞれ「小規模サンプル学習」および「ゼロサンプル学習」と呼ばれます。 。
すべてのタスクが関連しているわけではない、データセットの不均衡、タスク間の差異、ネガティブ知識の伝達は、マルチタスク学習に課題をもたらします。したがって、タスクの最適化は、適切なアーキテクチャを選択することと同じくらい重要です。次に、マルチタスク学習の最適化戦略について説明します。
1. 損失構築
これは、さまざまな重み付けスキームを使用してバランスをとることにより、マルチタスクの最適化を実行する最も直感的な方法の 1 つです。個別 タスクによって定義された単一の損失関数。次にモデルは、複数のタスクを一度に学習する方法として集約損失関数を最適化します。
たとえば、さまざまな損失重み付けメカニズムを使用して、マルチタスクの問題を解決します。各損失関数に割り当てられる特定の重みは、より多くのデータを持つタスクが最適化を支配することを避けるために、各タスクのトレーニング セット サイズに反比例します。
2. ハード パラメーターの共有
ハード パラメーターの共有では、タスク固有の出力を保持しながら、ニューラル ネットワークの隠れ層が共有されます。層。関連タスクのレイヤーのほとんどを共有すると、オーバーフィッティングの可能性が減ります。
共有モデルが同時に学習するタスクが増えるほど、すべてのタスクを捕捉する表現を見つける必要性が高まり、元のタスクが過学習になる可能性が低くなります。
3. ソフト パラメーターの共有
ハード パラメーターの共有は、タスクが密接に関連している場合にのみ適切に機能します。したがって、ソフト パラメーター共有の焦点は、タスク間で共有する必要がある機能を学習することです。ソフト パラメーターの共有とは、各モデルのパラメーターとトレーニング ターゲット全体の間の距離を正規化し、異なるタスク間で同様のモデル パラメーターの使用を促進することを指します。この正則化手法は実装が簡単であるため、マルチタスク学習でよく使用されます。
4. データ サンプリング
機械学習データセットは不均衡なデータ分布の影響を受けることが多く、マルチタスク学習はこの問題をさらに複雑にします。異なるサイズとデータ分布を持つマルチタスク トレーニング データセットが含まれるためです。マルチタスク モデルは、利用可能なトレーニング データセットがより大きいタスクからデータ ポイントをサンプリングする可能性が高く、潜在的な過剰適合につながります。
このデータの不均衡に対処するために、マルチタスク最適化問題のトレーニング データセットを正しく構築するためのさまざまなデータ サンプリング手法が提案されています。
5. インテリジェントなタスク スケジューリング
ほとんどのマルチタスク学習モデルは、エポックでどのタスクをトレーニングするかを非常に簡単な方法で決定します。各ステップのすべてのタスクでトレーニングするか、トレーニング用にタスクのサブセットをランダムに選択します。ただし、インテリジェントに最適化されたタスク スケジューリングにより、すべてのタスクのモデル全体のパフォーマンスが大幅に向上します。
6. 勾配変調
ほとんどのマルチタスク学習方法は、共同最適化の個々のタスクが密接に関連していることを前提としています。ただし、各タスクは、使用可能なすべてのタスクと必ずしも密接に関連しているわけではありません。この場合、関係のないタスクと情報を共有すると、パフォーマンスに悪影響を与える可能性さえあります。これは「負の転送」として知られる現象です。
最適化の観点から見ると、ネガティブな移行はタスクの勾配の競合として現れます。 2 つのタスクの勾配ベクトルが反対方向を向いている場合、現在のタスクの勾配によってもう一方のタスクのパフォーマンスが低下します。 2 つの勾配の平均に従うということは、どちらのタスクも単一タスクのトレーニング設定と同じ改善が見られないことを意味します。したがって、タスクの勾配を調整することが、この問題に対する潜在的な解決策となります。
マルチタスク モデルが一連の関連タスクでトレーニングされる場合、理想的には、これらのタスクの勾配が同様の方向を向く必要があります。勾配変調の一般的な方法は、敵対的トレーニングを使用することです。たとえば、勾配敵対的トレーニング (GREAT) メソッドは、マルチタスク モデルのトレーニングに敵対的損失項を含めることによってこの条件を明示的に強制します。これにより、さまざまなソースからの勾配が統計的に区別できない分布を持つことが促進されます。
7. 知識の蒸留
知識の蒸留は、パフォーマンスを維持しながら、計算量の多いモデル (「教師」モデル) からより小規模なモデル (「生徒」モデル) に知識を転送する機械学習のパラダイムです。
マルチタスク学習における知識蒸留の最も一般的な使用法は、複数の個別のシングルタスクの「教師」ネットワークからマルチタスクの「生徒」ネットワークに知識を抽出することです。興味深いことに、一部の領域では学生ネットワークのパフォーマンスが教師ネットワークのパフォーマンスを上回ることが示されており、知識の蒸留はメモリを節約するだけでなくパフォーマンスを向上させる理想的なアプローチとなっています。
人工知能のあらゆる分野の研究者は、マルチタスク学習フレームワークを使用して、次のようなリソース最適化モデルを開発しています。信頼性が高く、マルチタスク モデルはストレージの制約がある複数のアプリケーション領域で使用できます。人工知能のさまざまな領域におけるこれらのモデルの最新のアプリケーションを見てみましょう。
1. コンピューター ビジョン
コンピューター ビジョンは、画像分類、物体検出、ビデオなどの問題を扱う人工知能の分野です。検索。ほとんどのシングルタスク コンピューター ビジョン モデルは計算コストが高く、マルチタスク ネットワークを使用して複数のタスクを処理すると、ストレージ スペースが節約され、より現実の問題への展開が容易になります。さらに、モデルのトレーニングに必要な大量のラベル付きデータの問題を軽減するのに役立ちます。
2. 自然言語処理
自然言語処理 (NLP) は、自然な人間の言語プロンプト テキスト (任意の) を処理する人工知能の分野です。言語)、音声など文章の翻訳、画像またはビデオの字幕、感情検出、その他多くのアプリケーションが含まれています。マルチタスク学習は、補助タスクを通じてメインタスクのパフォーマンスを向上させるために、NLP 問題で広く使用されています。
3. レコメンデーション システム
パーソナライズされたレコメンデーションは、ユーザーが大規模なオンライン コンテンツを処理するのを支援する主要なテクノロジーとなっています。ユーザーエクスペリエンスを向上させるために、レコメンデーションモデルはアイテムに対するユーザーの個人的な好みを正確に予測する必要があります。
マルチタスク レコメンデーション システムの例は CAML モデルです。このモデルは、レコメンデーション タスクと説明タスクを緊密に結合することで、説明可能なレコメンデーションの精度と解釈可能性を向上させます。
4. 強化学習
強化学習は、教師あり学習と教師なし学習の中間の深層学習のパラダイムです。この学習スキームでは、アルゴリズムは試行錯誤を通じて決定を下すことによって学習し、正しい決定には報酬が与えられ、間違った決定には罰が与えられます。ロボット用途でよく使用されます。
強化学習の問題の多くは、テキストやピクセルの使用など、必ずしも複雑な認識を必要としないため、このような問題の多くはアーキテクチャ上の要件は高くありません。したがって、強化学習に使用される多くのディープ ネットワークは、単純な全結合アーキテクチャ、畳み込みアーキテクチャ、またはリカレント アーキテクチャです。ただし、マルチタスクの状況では、タスク間の情報を利用して、強化学習用の改善されたアーキテクチャを作成できます。
CARE モデルと同様に、ハイブリッド エンコーダーを使用して、入力観察をさまざまなスキルやオブジェクトに対応する複数の表現にエンコードします。その後、学習エージェントはコンテキストを使用して、特定のタスクにどの表現を使用するかを決定できるようになり、エージェントがタスク間でどのような情報を共有するかをきめ細かく制御できるようになり、負の転送問題が軽減されます。
5. マルチモーダル学習
名前が示すように、マルチモーダル学習には、音声、画像、ビデオ、自然テキストでのモデルのトレーニングなど。これらのモダリティは関連する場合もあれば、関連しない場合もあります。マルチタスク学習は、単一モデルにマルチモーダル機能を暗黙的に注入するために広く使用されています。
以上がマルチタスク学習に最適化および適用された機械学習手法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。