読み方 : マルチタスクがくしゅう
マルチタスク学習【multi-task learning】
概要

複数のタスクに共通する入力や構造を活用し、モデルの一部を共有することで効率的な学習を目指す手法である。一般的な構成では、入力層から中間層にかけてを複数タスクで共有し、出力層付近でタスクごとに分岐させる。共有された中間表現は、各タスクに共通する特徴を抽出する役割を担い、学習データが限られている場合でも安定した推定を可能にする。
マルチタスク学習には、データのノイズに対する耐性が高まるという利点がある。あるタスクに含まれる特有のノイズは他のタスクにとっては無意味であるため、共通層での学習を通じてノイズが相殺され、過学習を抑制する「正則化」の効果が得られる。学習データが少ないタスクがあっても、関連する他のタスクのデータから得られた知識を活用できるため、性能の底上げが期待できる。
マルチタスク学習は、タスク間に一定の関連性や共通性が存在する場合に高い効果を発揮する。例えば、画像処理では、物体の位置と種類を識別する「物体検出」と、画素単位で輪郭を特定する「セマンティックセグメンテーション」を同時に学習する手法が知られている。自然言語処理では「文書分類」と「感情分析」を並行して扱う例がある。
一方で、タスク間の性質が大きく異なる場合には、共有表現が適切に機能せず、互いの学習を妨げ合う「負の転移」と呼ばれる現象が生じることがあり、タスクの組み合わせや共有範囲の設計が重要となる。近年の研究では、タスクごとの損失関数に重みを付与して学習のバランスを調整する方法や、注意機構(Attention)を用いてタスクごとに参照する特徴を変化させる改善手法も提案されている。