関連する複数のタスクを同時に学習させることで,これらのタスクに共通の要因を獲得させ,タスクの予測精度を向上させるのがマルチタスク学習.古典的には,ニューラルネットの中間層で共通要因を獲得させていた.最近では,転移学習で,複数のドメイン間で相互に転移するような場合で,階層ベイズなどで共通の要因を獲得している.
基本文献ではマルチタスク学習がうまく動作する理由として次のものを挙げている
- データ拡張 (data amplification):共通する因子がある複数タスクがあれば,共通因子のノイズがタスク間のキャンセルで緩和される
- 特徴選択:複数のタスクを同時に学習させることで,それらのタスクで共通に有用な特徴が選ばれ易くなる.
- 立ち聞き (eavesdropping):タスク間で学習の難易度に差があれば,困難なタスクは容易なタスクから情報を得てより簡単に学習が可能になる.
- 表現バイアス:各タスクに複数の局所解があるとき,複数のタスクに共通な局所解が選ばれ易くなる.逆に,他のタスクで使われない局所解は使われにくくなる
基本文献が挙げているマルチタスク学習が適用できる状況の一部
- 現在の予測のために,将来得られる結果を利用する
入院不要の検査の結果から,入院検査が必要かどうかを予測するタスク.
ここで入院検査の結果得られた検査結果も,同時に学習する追加タスクとする.
こうした検査結果は予測時には得られていないが,これらのタスクに共通する共通要因は,入院検査が必要かどうかの判断に役立つ.
- 複数の表現と尺度
同じタスクを異なる損失関数を最小化して異なるタスクのようにして学習する.
損失関数の違いによる利点・欠点を補うことができる.
-- しましま
関連項目†
リンク集†
関連文献†