Successfully reported this slideshow.
Your SlideShare is downloading. ×

PRMLの線形回帰モデル(線形基底関数モデル)

PRMLの線形回帰モデル(線形基底関数モデル)

Download to read offline

PRML上巻勉強会 at 東京大学の資料です。
この資料はChristopher M. Bishop 著「Pattern Recognition and Machine Learning」の日本語版「パターン認識と機械学習 上 - ベイズ理論による統計的予測」について補足説明を入れた上でなるべくわかりやすくしたものです。
本資料では第3章の前半、特に3.1節を中心に解説しています。

詳しくはこちらのサイト(外部)を御覧ください。
http://ibisforest.org/index.php?PRML

PRML上巻勉強会 at 東京大学の資料です。
この資料はChristopher M. Bishop 著「Pattern Recognition and Machine Learning」の日本語版「パターン認識と機械学習 上 - ベイズ理論による統計的予測」について補足説明を入れた上でなるべくわかりやすくしたものです。
本資料では第3章の前半、特に3.1節を中心に解説しています。

詳しくはこちらのサイト(外部)を御覧ください。
http://ibisforest.org/index.php?PRML

More Related Content

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

PRMLの線形回帰モデル(線形基底関数モデル)

  1. 1. PRML上巻勉強会 at 東京大学 線形回帰モデル 東京大学 大学院情報理工学系研究科 電子情報学専攻 M2 尾崎安範 1
  2. 2. 自己紹介 • 尾崎安範 • 経歴 – 豊田高専→名古屋大→東大院→ 民間の研究所(予定) • 研究分野 – 視線情報を用いたユーザ・インターフェース • 興味 – コンピュータビジョン(画像認識など) – データサイエンス(機械学習など) 2
  3. 3. 趣味 • 一発ネタのプログラムを作ること – 中学:RPGの制作のお手伝い – 高専:音楽ゲームとアクションを合体したゲーム • 10人以上で製作 – 大学:「オタクっぽい」というワードで顔画像検索 – 大学院:目と表情で初音ミクとコミュニケーション – 詳しくはこちらへ • http://www.hci.iis.u-tokyo.ac.jp/~ozakiy/ 3
  4. 4. Twitter • @alfredplpl – プログラミング(RとPythonなど)と 変なネタをつぶやいてます – よろしければフォローよろしくお願いします 4
  5. 5. 注意書き • PRML本はわかりにくい!! – 補足説明付けました • 左下に補足かPRML本の内容かを書いておきます • あと、線形回帰と線形回帰モデルは別物です • わからなかったら適宜質問お願いします 補足 PRML 5
  6. 6. 線形回帰ってなに? • 以下の章立てで説明します 3 線形回帰モデル 3.1 線形基底関数モデル 3.1.1 最尤推定 3.1.2 最小二乗法の幾何学 3.1.3 逐次学習 3.1.4 正則化最小二乗法 3.1.5 出力変数型次元の場合 補足 6
  7. 7. 線形回帰に入る前に準備 • PRML本の内容に入るまでちょっと長い – 我慢して付き合ってください – パターン認識とはそもそもから入ります 補足 7
  8. 8. パターン認識の主な体系 • 「機械が学習するタイミングで 正解を与えるかどうか」で2つに分かれる – 教師なし学習(この章までPRMLでは主にこれを説明) • 機械に正解を与えない学習方法 • 例 – クラスタリング – 密度推定 – 教師あり学習 • 機械に正解を与える学習方法 • 例 – クラス分類 » 例:k-近傍法 – 回帰 » 例:線形回帰 補足 8
  9. 9. 線形回帰モデル • 回帰問題を解くためのモデル ? • 解析しやすい • 解くのが簡単 9
  10. 10. 回帰問題 • 与えられた情報から 未知の連続値を予測する問題 – 例:ダイヤモンドの重さに対する値段 値段 20カラットの値段は? 15.5カラットの値段は? ・・・ 10 補足 重さに対しての値段 (既に知っている) 20 ダイヤモンドの重さ[カラット] 10
  11. 11. 回帰問題をもっともらしく解いてみよう • もっともらしく解いてみた(赤線) – これでどんな重さでも値段がわかる! 値段 重さに対しての値段 (既に知っている) 10 補足 20 ダイヤモンドの重さ[カラット] 11
  12. 12. 回帰問題の一般的な表現 • ダイヤモンドの例を一般化 (値段) モデル 目標変数 観測値 ( , ) (既知、 重さに対しての値段) 10 補足 PRML 20 入力変数 (ダイヤモンドの重さ[カラット]) 12
  13. 13. 線形回帰ってなに? • 以下の章立てで説明します 3 線形回帰モデル 3.1 線形基底関数モデル 3.1.1 最尤推定 3.1.2 最小二乗法の幾何学 3.1.3 逐次学習 3.1.4 正則化最小二乗法 3.1.5 出力変数型次元の場合 補足 13
  14. 14. 最も単純な線形回帰モデル • 線形回帰 – ただのD次元の平面(通称:超平面) バイアスパラメータ(切片) 重みベクトル(平面の傾きと切片に相当) – シンプルだけど、表現能力は乏しい PRML 盛大にずれている例 14
  15. 15. 線形基底関数モデル • 線形基底関数モデル – 基底関数を線形結合した線形回帰モデル • 出力は非線形にもなる – 実用上は基底関数 関数にあたる 基底関数 (ただし、バイアスパラメータ のために とする) は特徴抽出のための • 例:文章中の単語jの出現回数 (たとえば、「線形」という単語の出現回数) PRML 15
  16. 16. 線形基底関数モデルの基底関数 • 以下、いっぱい基底関数が出てくるけど、 聞き流してもらえれば – 別にニューラルネットとかカーネル法まで 覚える必要性はない 補足 16
  17. 17. さまざまな基底関数(1/4) • 多項式 – 1章の線形回帰の例に使われたモデルがこれ 1章の線形回帰(j=[0,9]のとき) PRML いろいろなjでの 17
  18. 18. さまざまな基底関数(2/4) • ガウス基底関数(別称:RBF[付録?]) – ただのガウス関数 – カーネル法、特に非線形SVMによく使われる y PRML 0.0 0.1 0.2 0.3 0.4 • 下巻6.4.1節「線形回帰再訪」参照 -3 -2 -1 0 1 2 3 x 正規分布の確率密度関数 いろいろなjでの 18
  19. 19. さまざまな基底関数(3/4) • シグモイド基底関数 – ただし、σはロジスティックシグモイド関数 0.6 0.4 0.2 0.0 PRML function(x) 1/(1 + exp(-x)) 0.8 1.0 – ニューラルネットでよく使われる -4 -2 0 2 4 x ロジスティックシグモイド関数 いろいろなjでの 19
  20. 20. さまざまな基底関数(4/4) • フーリエ基底 – exp(2πi)みたいな感じ – フーリエ変換で使うため、いろいろ使われる • ウェーブレット基底 – sinc関数(sin(x)/x)など – 画像形式の1つJpeg2000とかで使う 補足 PRML 20
  21. 21. 線形回帰ってなに? • 以下の章立てで説明します 3 線形回帰モデル 3.1 線形基底関数モデル 3.1.1 最尤推定 3.1.2 最小二乗法の幾何学 3.1.3 逐次学習 3.1.4 正則化最小二乗法 3.1.5 出力変数型次元の場合 補足 21
  22. 22. 線形回帰モデルをもっともらしく推定 • 線形回帰モデルの最尤推定を 最小二乗法を使って解く – つまり、下図の赤線がモデルで 青点が観測値なら 緑線の長さの合計を短くするようなモデルの パラメータを探す 補足 22
  23. 23. 最尤推定の準備(1/2) • 目標変数tをモデルにノイズが乗ると仮定 ガウシアンノイズεはN(0,β^-1)に従う (ただし、パラメータβは精度とする) • なので、目標変数tが1つの場合、 PRML 23
  24. 24. 最尤推定の準備(2/2) • データセット(データ集合)「Xとt」を用意 入力変数 入力変数に対する目標値 • 各データセットは独立にサンプルされたと 仮定すると尤度関数は 注:独立性がある確率の乗法定理です PRML 24
  25. 25. 線形回帰モデルの最尤推定 • 尤度関数にある 「正規分布の確率密度関数」の指数関数 が邪魔なので、対数をとる モデルと観測値の二乗誤差 PRML 25
  26. 26. もっともらしさを最大化(1/2) • まず重みベクトルwに関して尤度を最大化 – 重みは誤差の項にしかないので、 尤度を最大化⇔誤差を最小化 ここが0になるw とは? 展開 PRML 26
  27. 27. もっともらしさを最大化(2/2) • (続き)Φを式3.16とおき、式3.14をwについて とくと、式3.15になる。 計画行列 PRML 最小二乗法の正規方程式 27
  28. 28. 擬似逆行列 • 正規方程式をもっとシンプルに表現 と定義し、 代入 • をムーア・ペンローズの擬似逆行列という PRML 28
  29. 29. バイアスパラメータの役割 • バイアスパラメータ って要るの? • バイアスパラメータを図で見る – 赤線: – 緑線: がある線形回帰 がない線形回帰 すごくずれてる! 原点 バイアスパラメータ要ります 補足 PRML 29
  30. 30. バイアスパラメータを数式で理解 • 誤差関数をw0について着目 • 誤差の微分が0であるときに、 w0に関して解く PRML バイアスパラメータは目標値の平均と基底関数の平均とのズレを 30 吸収してくれる
  31. 31. 線形回帰モデルの最尤推定 • 忘れかけてた精度βに関して 誤差を最小化すると以下が得られる – 精度の最尤推定結果を図で言うと、 「緑線(残差)の分散」の逆数 補足 PRML 31
  32. 32. 線形回帰ってなに? • 以下の章立てで説明します 3 線形回帰モデル 3.1 線形基底関数モデル 3.1.1 最尤推定 3.1.2 最小二乗法の幾何学 3.1.3 逐次学習 3.1.4 正則化最小二乗法 3.1.5 出力変数型次元の場合 補足 32
  33. 33. 最小二乗法の幾何学(準備)(1/2) • 最小二乗法で求めた結果の意味を 図で考えてみよう モデルで 予測した結果 モデルy(x,w) y(x1,w) モデルy(x,w) t1 t1 x1 補足 t t – モデルでy(x,w)=w0として求めた結果 y = yx1 , w, yx 2 , w , , yx N , w  とはなにか? x x1 x 33
  34. 34. 最小二乗法の幾何学(準備) (2/2) • 視点を変えてみよう – 例えば、観測値を軸にして考えてみよう y(x1,w) モデルy(x,w) t1 x1 補足 x t1の軸 t • モデルyはパラメータwをどう変えても、 部分空間S上にしか動けない • 最小二乗法とは部分空間S上で一番観測値に 近くなる(誤差が少ない)ようにモデルのパラメータを 部分空間 選ぶこと 予測値 y=(y(x1,w), y(x2,w))  0  w0 , w0  S  0 観測値 t=(t1,t2) t2の軸 34
  35. 35. 最小二乗法の幾何学 • 最小二乗法を図で考えてみよう – 最小二乗法で求めた結果y = yx1 , w, yx 2 , w,, yx N , w とはなにか? • 観測値を軸とした空間を考える • モデルの予測値を軸とした部分空間Sの中で 観測値tに一番近い位置ベクトル ≡ PRML 35
  36. 36. 擬似逆行列がとけない場合は? ここが正則でなさそうな場合、 すなわち、行列式が0に近い場合、 逆行列を求めにくい! 特異値分解(SVD)で解くか正則化項(3.1.4節) を加えよう PRML 36
  37. 37. 線形回帰ってなに? • 以下の章立てで説明します 3 線形回帰モデル 3.1 線形基底関数モデル 3.1.1 最尤推定 3.1.2 最小二乗法の幾何学 3.1.3 逐次学習 3.1.4 正則化最小二乗法 3.1.5 出力変数型次元の場合 補足 37
  38. 38. オンライン学習(逐次学習)に 必要な前知識 • 最急降下法 – 坂を下っていくように初期値近くの極値に 向かってパラメータを収束させていく方法 誤差関数の パラメータ 誤差関数など のグラフ 補足 パラメータ 更新 パラメータ 更新 止まったので収束! 38
  39. 39. 線形回帰モデルの オンライン学習 • 確率的最急降下法で重みwを更新しよう – 誤差が収束するように重みwを更新 学習率パラメータ (学習を加速させるパラメータ、 大きくすると重みが収束しなくなる) 各パターンnに対する誤差関数 – 3.1.1節で出てきた誤差 を代入すると PRML 以上を最小平均二乗アルゴリズム(LMSアルゴリズム)という 39
  40. 40. 線形回帰ってなに? • 以下の章立てで説明します 3 線形回帰モデル 3.1 線形基底関数モデル 3.1.1 最尤推定 3.1.2 最小二乗法の幾何学 3.1.3 逐次学習 3.1.4 正則化最小二乗法 3.1.5 出力変数型次元の場合 補足 40
  41. 41. 正則化最小二乗法 • 過学習を防ぐため最小二乗法を拡張 – 誤差 に正則化項 を加える(1.1節) 誤差と正則化項の 相対的な重要度 (実験的に決める) を代入 PRML 41
  42. 42. 最小二乗法の拡張としているわけ • 正則化最小二乗法でwについて解くと、 • 最小二乗法の解と似ている 補足 PRML 42
  43. 43. 正則化項の一般化 • 正則化項をよく見ると、 M w w   wj T 2 j 1 • 2乗をqで置き換えて一般化しよう – なんで一般化するの?[本スライドの付録] PRML 43
  44. 44. いろいろな正規化項のqとグラフ • 正規化項のqを変化させて M=2のとき、グラフにすると以下になる M w j 1 q j Rで描いた三次元グラフ 補足 PRML 等高線の形(三次元グラフを横で切った形) 44
  45. 45. lasso • q=1の時、特にlasso(ラッソ)という – スパース(疎)な解が得られやすいため たまに話題にでる • スパースだといらない次元が0になるため、 要る次元といらない次元がわかりやすい – c.f. パラメータ縮小推定、荷重減衰 PRML 45
  46. 46. lassoで解くと スパースな解になる理由(1/2) • 正則化されていない誤差の最短距離に 最適なパラメータベクトルになる 誤差の等高線 q=2のとき PRML q=1のとき w*:最適なパラメータベクトル 46
  47. 47. lassoで解くと スパースな解になる理由(2/2) • スパースになる領域がlassoは広い! ここに誤差の極値が 入っていれば 解がスパースになる領域 になるという例 (誤差関数とλ次第) 誤差の等高線 q=2のとき 補足 PRML q=1のとき w*:最適なパラメータベクトル 47
  48. 48. 実際に最小化の過程を見てみよう t • Xとtが図のように与えられているとする 補足 x 48
  49. 49. q=2のときの最小化 誤差関数 正則化項 λ 点(w0=?,w1=?)のあたりで 最適解になっている どうみてもスパースでない 補足 最小化する式 w0 w1 49
  50. 50. lassoのときの最小化 誤差関数 正則化項 λ 点(w0=0,w1=?)のあたりで 最小化できている たしかにスパース w0 w1 補足 最小化する式 50
  51. 51. lassoがスパースな解を出力する理由 • 数式的な意味は演習で証明してください – 誤差関数の制約付き最小化問題なので、 ラグランジュの未定乗数法を使うと解けます PRML 51
  52. 52. 線形回帰ってなに? • 以下の章立てで説明します 3 線形回帰モデル 3.1 線形基底関数モデル 3.1.1 最尤推定 3.1.2 最小二乗法の幾何学 3.1.3 逐次学習 3.1.4 正則化最小二乗法 3.1.5 出力変数型次元の場合 補足 52
  53. 53. 出力変数が多次元の場合(結論) • 目標変数が多次元のときは 各次元で独立に一次元の場合と同じに解ける • でも、基底関数を各次元で統一すると 計算量を減らすことができる – 目標変数を k次元目の重み k次元目の観測値 – ただし、擬似逆行列は各次元で同じなため 使い回しができる PRML 53
  54. 54. 参考文献 • PRML(サポートページ含む) – http://research.microsoft.com/enus/um/people/cmbishop/PRML/ • Wikipedia • 朱鷺の杜Wiki – http://ibisforest.org/index.php?FrontPage • Coursera: Machine Learning – https://www.coursera.org/course/ml 54
  55. 55. 参考文献 • 最小化のテストデータ生成に使った – http://aoki2.si.gunma-u.ac.jp/R/gendat2.html 55
  56. 56. 付録:ノルム • 空間中の2点の長さはいろいろ決めることができる – マンハッタン距離: x 2  y2  1/ 2 – ユークリッド距離:  x  y  1/1 • 長さを一般化しよう!   xj   j p     1/ p – ノルムという概念 – pを固定したとき、特にL-pノルムという • マンハッタン距離=L-1ノルム • ユークリッド距離=L-2ノルム • 正則化項を一般化しよう! – L-1ノルムで重みを正規化→L1正規化(lasso) – L-2ノルムで重みを正規化→L2正規化 56

×