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

2018年度 化学工学特論2 第8回

2018年度 化学工学特論2 第8回

前回の達成目標
今回の達成目標
実験回数を少なくしたい!
実験計画法
実験計画法のイメージ 1/3
実験計画法のイメージ 2/3
実験計画法のイメージ 3/3
実験パラメータの候補をどのように選択するか?
D 最適基準が大きくなるように選択する
[補足] D 最適基準以外の最適基準の例
例題をどうするか?
実際に最初に実験する候補を選択してみる
標準化 (オートスケーリング)
最小二乗法による線形重回帰分析
回帰分析ってなに?
説明変数が2つのときの線形重回帰分析
オートスケーリング(標準化)のメリット
サンプルが n 個のとき
行列で表す
回帰係数を求めたい
最小二乗法
誤差の二乗和を回帰係数で偏微分して 0
回帰係数、ついに求まる
回帰モデルの精度の指標 r2
回帰モデルの精度の指標 RMSE
回帰モデルの精度の指標 MAE
線形の回帰分析手法で対応できないときは?
簡単に非線形モデルを作る方法
今後のお話の概要

Hiromasa Kaneko

January 27, 2019
Tweet

More Decks by Hiromasa Kaneko

Other Decks in Technology

Transcript

  1. 実験計画法のイメージ 1/3 化学反応 A + B → C + D

    の、 C の収率を上げたい︕ 反応温度 25℃ で実験すると収率は ばらつく ため、複数回実験する 必要がある • 3回とか5回とか 反応温度20℃・30℃・35℃・40℃・45℃・50℃でもやってみたい︕ 収率を最⼤にする反応温度があるのでは︕︖ • 3×7 回 反応時間・触媒の量もいろいろ変えて、収率が上がるか確認したい︕ • 3×73 = 1029 回︕︖ 5
  2. 実験計画法のイメージ 2/3 いったん落ち着いて考えよう 収率を最⼤化する前に、モデル f 収率 = f(反応温度、反応時間、触媒の量) を求めることを目標にしたらどうか︕︖ このモデル

    (コンピュータ内の実験場) があれば、反応温度、反応時間、 触媒の量を変えたときに収率がどうなるか、実験せずに確認 (シミュレーション) できる︕ シミュレーションの結果、収率が最も⼤きい条件で実験しよう︕ 6
  3. 実験計画法のイメージ 3/3 たとえば線形のモデルであれば、 収率 = a1 ×反応温度+a2 ×反応時間+a3 ×触媒の量+定数項 と仮定

    a1 、a2 、a3 を求める (モデリング) ための実験を⾏う • 最低 3 回︕ • 実際はもっと実験回数が多かったり、線形モデルではなく モデルに非線形項 (交差項・二乗項) を入れるなど、 非線形モデルにしたりする 適応的実験計画法 • モデリングと実験とを繰り返す 7
  4. 実験パラメータの候補をどのように選択するか︖ 実験パラメータである説明変数 X と収率などの目的変数 y との間で、 良好な回帰モデル y = f(X)

    が構築できるように選択 回帰モデル︖・・・最⼩二乗法による重回帰分析 (後ほど) • y = f(X) の f をデータから求める方法 回帰モデルは、(XTX)-1XTy と計算できる y のデータがない (まだ実験していない) 状況で、どのように “良好な” モデルであると判断するか︖ (XTX)-1 に着目 8
  5. D 最適基準が⼤きくなるように選択する (XTX)-1 に着目 この逆⾏列が計算できないと、そもそも回帰モデルが得られない 逆⾏列が計算できない状況に近いと、回帰モデルは “良好でない” と考えた • 逆⾏列が計算できない状況・・・

    XTX の⾏列式 ( det(XTX) ) が ⼩さい状況 XTX の⾏列式を D 最適基準とよび、 XTX の⾏列式が⼤きくなるように 実験パラメータの候補を選択する︕ • これなら X のデータのみから選択できる♪ 9
  6. [補足] D 最適基準以外の最適基準の例 A 最適基準︓XTX の逆⾏列の対角成分の和を最⼩化 E 最適基準︓XTX の固有値の最⼩値を最⼤化 I

    最適基準︓XT(XTX/m)-1X の対角成分の平均値を最⼩化 • m : サンプル数 minimax 基準︓XTX の対角成分の最⼤値を最⼩化 10
  7. 実際に最初に実験する候補を選択してみる パラメータ3つ x1 , x2 , x3 のそれぞれの候補を決定 3つの候補のすべての組み合わせを取得 たとえば、最初の実験回数を

    30 としたとき、 • 1. ランダムに 30 のパラメータの組み合わせを選択 • 2. D 最適基準の値を計算 1. 2. を繰り返して (たとえば、1000 回)、その中で D 最適基準が 最⼤となる 30 の候補を選択 12
  8. 標準化 (オートスケーリング) D 最適基準の値 (XTX の⾏列式) を計算するとき、事前に “標準化 (オートスケーリング)” という操作を⾏う

    単位系が異なる場合など、各変数(記述⼦)が同等に扱われないため • ⻑さ: km, m, cm, mm, nm など • 温度: ℃, K など 標準化 (オートスケーリング) とは︖ • オートスケーリング = センタリング + スケーリング • センタリング: 変数(記述⼦)ごとにその平均を引き、 平均を 0 にする • スケーリング: 変数(記述⼦)ごとにその標準偏差で割り、 標準偏差を 1 にする 13
  9. 回帰分析ってなに︖ 15 20 25 30 35 250 300 350 400

    450 500 ビール注文数[個] (y) 最高気温[℃] (X) 例 • 目的変数 (y) ⁃ ビール注文数[個] • 説明変数 (X) ⁃ 最高気温[℃] 目的変数(y)と説明変数(X)の関係をモデル化し、 Xによってyがどれだけ説明できるのかを定量的に分析すること どうやってモデル化する(式を作る)のか︖ y = 12.9X + 4.2
  10. 説明変数が2つのときの線形重回帰分析 16 yC ︓ yの、xで表すことができる部分 f︓ yの、xで表すことができない部分 (誤差、残差) y︓ 目的変数

    x1 , x2 ︓ 説明変数 (記述⼦) b1 , b2 ︓ 回帰係数 b0 ︓ 定数項 0 1 1 2 2 C y x x f y f b b b = + + + = + ( ) C 0 1 1 2 2 y = x x b b b + +
  11. オートスケーリング(標準化)のメリット 17 y, x1 , x2 にオートスケーリングを⾏えば、b0 = 0 よって、

    1 1 2 2 y x x f b b = + + 0 1 1 2 2 C y x x f y f b b b = + + + = + ( ) C 0 1 1 2 2 y = x x b b b + +
  12. サンプルが n 個のとき 18 サンプル n 個のとき、 (1) (1) (1)

    (1) 1 1 2 2 (2) (2) (2) (2) 1 1 2 2 ( ) ( ) ( ) ( ) 1 1 2 2 n n n n y x b x b f y x b x b f y x b x b f = + + = + + = + + ⋮ y(i)︓i 番目のサンプルにおける 目的変数の値 xj (i) : i 番目のサンプルにおける j 番目の説明変数の値 f (i)︓i 番目のサンプルにおける 誤差の値 1 1 2 2 y x x f b b = + +
  13. ⾏列で表す 19 1 1 2 2 b b = +

    + = + y x x f Xb f [ ] (1) (1) (1) (1) (1) 1 2 1 2 (2) (2) (2) (2) (2) 1 2 1 2 1 2 1 2 ( ) ( ) ( ) ( ) ( ) 1 2 1 2 1 2 1 2 , , , , , n n n n n n x x x x y x x x x y x x x x y f f b b f                         = = = = =                                         = =           y x x X x x f b ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ (1) (1) (1) (1) 1 1 2 2 (2) (2) (2) (2) 1 1 2 2 ( ) ( ) ( ) ( ) 1 1 2 2 n n n n y x b x b f y x b x b f y x b x b f = + + = + + = + + ⋮
  14. 最⼩二乗法 21 残差 f (i) の二乗和 (G) が最⼩という条件で b を求める方法

    最⼩値を取る G を b1 , b2 で偏微分したものが 0 ( )2 2 ( ) ( ) ( ) 1 1 2 2 1 1 n n i i i i i i G f y bx b x = = = = − −   極⼩値を取る
  15. 誤差の二乗和を回帰係数で偏微分して 0 22 ( ) ( ) ( ) (

    ) ( ) 1 1 1 2 2 1 1 ( ) ( ) ( ) 2 1 1 2 2 1 2 2 0 2 0 n i i i i i n i i i i i G x y b x b x b G x y b x b x b = = ∂ = − − − = ∂ ∂ = − − − = ∂   (1) (1) (1) 1 2 (1) (2) ( ) (2) (2) (1) (2) ( ) (2) 1 1 1 1 1 2 1 1 1 (1) (2) ( ) (1) (2) ( ) 2 2 2 2 2 2 2 ( ) ( ) ( ) 1 2 T T n n n n n n n x x y b x x x x x x x x y b x x x x x x x x y                   =                             = X Xb X y ⋯ ⋯ ⋯ ⋮ ⋮ ⋯ ⋮ まとめて⾏列で表すと、
  16. 回帰係数、ついに求まる 23 T T = X Xb X y 両辺に左から

    XTX の逆⾏列 (XTX)-1 を掛ける ( ) ( ) ( ) 1 1 T T T T 1 T T − − − = = X X X Xb X X X y b X X X y
  17. 回帰モデルの精度の指標 r2 r2 (決定係数、説明分散) • 1に近いほど精度の高い回帰モデル • 相関係数 r を二乗したものとは異なる

    • 異なるデータセットの間で r2 を比較してはいけない 24 ( ) ( ) 2 ( ) ( ) C 2 1 2 ( ) A 1 1 n i i i n i i y y r y y = = − = − −    y(i)︓i 番目のサンプルにおける 目的変数の値 yC (i)︓i 番目のサンプルにおける 目的変数の計算値 yA ︓目的変数の平均値 n︓サンプル数
  18. 回帰モデルの精度の指標 RMSE RMSE (Root Mean Square Error) • 回帰モデルの誤差の指標 •

    0に近いほど精度の高い回帰モデル • 異なるデータセットの間で RMSE を比較してはいけない 25 ( )2 ( ) ( ) C 1 n i i i y y RMSE n = − =   y(i)︓i 番目のサンプルにおける 目的変数の値 yC (i)︓i 番目のサンプルにおける 目的変数の計算値 n︓サンプル数
  19. 回帰モデルの精度の指標 MAE MAE (Mean Absolute Error) • 回帰モデルの誤差の平均 • 0に近いほど精度の高い回帰モデル

    26 ( ) ( ) C 1 n i i i y y MAE n = − =   y(i)︓i 番目のサンプルにおける 目的変数の値 yC (i)︓i 番目のサンプルにおける 目的変数の計算値 n︓サンプル数
  20. 線形の回帰分析⼿法で対応できないときは︖ 27 最⼩二乗法による重回帰分析 (MLR)・・・各変数に重み bi が掛けられて それらを足し合わせたもの 基本は y =

    ax + b (直線) ある X の変数の値が⼤きくなると、直線的に y が⼤きく (⼩さく) なる 非線形モデル (線形モデル以外) を使う︕ ・・・線形モデル 線形モデルで対応できないときは︖ 例えば、X の変数の y に対する影響が二次関数的、とか y x
  21. 簡単に非線形モデルを作る方法 28 X の変数をそれぞれ二乗した変数 (x1 2, x2 2, …) [二乗項]

    を 新たに追加する X の変数における任意の2つの変数をかけ合わせた変数 (x1 x2 , x1 x3 , …) [クロス項, クロスターム] も新たに追加する そして、MLR (線形⼿法) で回帰モデルを構築する
  22. 今後のお話の概要 変数がたくさんあるけど、重要なのってどれか分かる︖ → LASSO(線形), RF(非線形) 30 くらいのサンプルで構築した回帰モデルを使って、何千ものサンプルの y の値を、本当に精度よく推定できるの︖ →

    モデルの適用範囲 モデルの適用範囲を考慮して、次の実験候補を探すには︖ → GP, ベイズ最適化 y が連続値ではなく、何かのカテゴリーのときで、回帰分析が できないときは︖ → クラス分類︓LDA, SVM 30