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
線形の回帰分析手法で対応できないときは?
簡単に非線形モデルを作る方法
今後のお話の概要

Avatar for Hiromasa Kaneko

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