Upgrade to Pro — share decks privately, control downloads, hide ads and more …

転移学習 (Transfer Learning) を用いたデータ解析

転移学習 (Transfer Learning) を用いたデータ解析

どんなときに転移学習が有効か?
何を “転移” させるか?
2 種類のデータセットを有効に活用しよう!
一般的な解析
転移学習
転移学習で期待すること
数値シミュレーションデータで確認!
比較した手法
ケース1
ケース2
実際のデータセットで検証
想定したシチュエーション1
結果1
想定したシチュエーション2
結果2
考えごと

Hiromasa Kaneko

July 28, 2019
Tweet

More Decks by Hiromasa Kaneko

Other Decks in Technology

Transcript

  1. どんなときに転移学習が有効か︖ あるデータセットを用いて、回帰モデル・クラス分類モデル y=f(x) を 構築し、x の値から y の値を推定したい しかし、そのデータセットのサンプル数が小さく、適切なモデルが 得られるか心配

    そのデータセットのサンプルと、全く同じ環境で得られたというわけでは ないが、似た環境で得られたある程度サンプル数のあるデータセットが あり、2 つのデータセットで y の種類や x の変数が同じ • 例) y や x を測定した装置が異なるデータセット • 例) 実スケールのデータセットとパイロットスケールのデータセット 1
  2. 一般的な解析 4 モデルに、x の値を⼊⼒して、y の値を推定 y x y x 2

    つのデータセットをサンプル方向につなげて、 回帰分析手法・クラス分類手法でモデル y = f(x) 構築
  3. 転移学習 5 y x y x 2 つのデータセットを x 0

    x 0 上のようにつなげて、回帰分析手法・クラス分類手法でモデル y = f(x) 構築 すべて 0 の⾏列 すべて 0 の⾏列 モデルに、 x x 0 ⼊⼒して、y の値を推定 の形式にした x の値を
  4. 転移学習で期待すること 6 y x y x x 0 x 0

    2 つのデータセットで共通する x と y との間の関係を学習 2 つのデータセットで異なる x と y との間の関係を学習 サポート用のデータセットも活用することで、共通する x と y との 関係を学習することで、異なる関係だけならターゲットのデータセットの 少ないサンプルでも学習できるか︕︖
  5. 数値シミュレーションデータで確認︕ 7  ターゲットのデータセット 3 サンプル  サポート用のデータセット 100 サンプル

    の状況において、新たなターゲットの 100 サンプルを 正確に推定できるか︖︖ ケース1: x と y の間の傾きが、ターゲット・サポート用のデータセットで変化 • ターゲット: y = 2x1 + 4x2 + 1 • サポート用: y = 2x1 + 3x2 + 1 ケース2: 定数項 (y切⽚) が、ターゲット・サポート用のデータセットで変化 [x と y は非線形] • ターゲット: y = 2(x1 −2)3 + 3x2 2 + 3 • サポート用: y = 2(x1 −2)3 + 3x2 2 + 1
  6. 比較した手法 1. TL: Transfer Learning, 転移学習 2. OT: Only Target

    dataset, ターゲットのデータセット (3 サンプル) のみ 使用 3. BD: Both target and supporting Dataset, ターゲットのデータセット (3 サンプル) とサポート用のデータセット (100 サンプル) 使用 [p. 4 の方法] 8 回帰分析手法は、  Partial Least Squares (PLS)  Gaussian Process Regression (GPR) 詳しくはこちら https://datachemeng.com/summarydataanalysis/
  7. ケース1 9 TL-PLS r2: 0.998 OT-PLS r2: 0.090 BD-PLS r2:

    0.839 BD-GPR r2: 0.829 OT-GPR r2: 0.088 TL-GPR r2: 0.998
  8. ケース2 10 TL-PLS r2: 0.935 OT-PLS r2: 0.111 BD-PLS r2:

    0.751 BD-GPR r2: 0.773 OT-GPR r2: 0.098 TL-GPR r2: 0.959
  9. 実際のデータセットで検証 Shootout 2012 のデータセット • y : 医薬品中のAPIの重量パーセント濃度 [wt %]

    • x : NIRスペクトル (ABB Bomem FT-NIR model MB-160) 952.42, 953.12, ..., 1309.33 nm (372変数) 228 個の錠剤 • ラボスケール装置で製造 : 89 サンプル (shootout_2012_laboratory_scale.csv) • パイロットスケール装置で製造 : 72 サンプル (shootout_2012_pilot_scale.csv) • 実スケール装置で製造 : 67 サンプル (shootout_2012_full_scale.csv) 11 http://www.idrc-chambersburg.org/shootout-2012.html
  10. 結果1 13 TL-PLS r2: 0.512 OT-PLS r2: -0.1 BD-PLS r2:

    0.819 BD-GPR r2: -0.1 OT-GPR r2: 0 TL-GPR r2: 0.005
  11. 想定したシチュエーション2 14  実スケール装置で製造されたターゲットのデータセット 3 サンプル  パイロットスケールで製造されたサポート用1のデータセット 72 サンプル、

    ラボスケールで製造されたサポート用2のデータセット 89 サンプル の状況において、新たなターゲットの 64 サンプルを 正確に推定できるか︖︖ y x y x x 0 0 0 y x 0 x 0 0 x
  12. 結果2 15 TL-PLS r2: 0.533 OT-PLS r2: -0.1 BD-PLS r2:

    0.760 BD-GPR r2: 0.816 OT-GPR r2: 0 TL-GPR r2: 0.762
  13. 考えごと 転移学習のときのハイパーパラメータの決定をどうするか • いつも通りクロスバリデーションでよい︖ • ターゲットのデータセットをよく推定できるように決める︖ ⁃ オーバーフィットしそう︖ ⁃ サポート用のサンプルがあるから問題ない︖

    スペクトル解析においては波⻑選択をしたほうがよさそう 評価関数をどうするか︖ • クロスバリデーション後の r2 ︖ • ターゲットのデータセットにおける r2︖ ⁃ オーバーフィットしそう︖ ⁃ サポート用のサンプルがあるから問題ない︖ 16