THE UNIVERSITY OF TOKYO

数理情報工学特論第一【機械学習とデータマイニング】
1章：概論（２）

かしま ひさし鹿島 久嗣（数理 6 研）kashima@mist.i.～

DEPARTMENT OF MATHEMATICAL INFORMATICS

機械学習問題の定式化

2

THE UNIVERSITY OF TOKYO学習の定式化：機械学習の問題をどのように数理的に定式化するか？
 機械学習の問題を数理的に扱うために、まず、学習の対象と、学習するべきモデルを表現した– 対象：ものごとを実数値ベクトルで表現した– モデル：その上での確率モデルを考えた
 また、 教師付き／教師無しという学習の2つの目的を定義した
 つぎに、その目的を、最適化問題として定式化する– 最尤推定による最適化問題としての定式化

3

THE UNIVERSITY OF TOKYO最尤推定：モデル推定問題のもっとも標準的な定式化です
データを最もよく再現するパラメータを求める最適化問題として定式化します 最尤推定の基本的な考え方：訓練データを最もよく再現するパラメータが良いパラメータとする– 訓練データを最もよく再現する ＝ 最も高い確率を与える
 訓練データが互いに独立であるとすると、その同時確率は教師無し学習ならで与えられる、教師付き学習なら「尤度」とよぶ これ（の対数）を最大にするパラメータを求める
教師無し学習の場合
教師付き学習の場合「対数尤度」とよぶ
 モデル推定の問題が、対数尤度を目的関数とした最適化問題として捉えられる
4THE UNIVERSITY OF TOKYO最尤推定：モデル推定問題のもっとも標準的な定式化です
教師つき/教師ナシそれぞれで実際例を見てみます 目的：訓練データから、モデルのパラメータを推定する
 混合正規分布（教師無し学習）の場合– 訓練データ– パラメータ ロジスティック回帰（教師付き学習）の場合– 訓練データ– パラメータ
5THE UNIVERSITY OF TOKYO最尤推定の例：多次元正規分布（教師なし学習）
最適なパラメータは、閉じた形で求まります 多次元正規分布の最尤推定（平均のみ。共分散行列は定数とする）
 対数尤度は

 μで微分 := 0とおいて解くと、6データの平均になった
THE UNIVERSITY OF TOKYOここまでのまとめ：機械学習の問題は最尤推定によって最適化問題として定式化されます 最尤推定：「訓練データを、最もよく再現するパラメータが良いパラメータとする」に基づいて学習を行う

 対数尤度を目的関数として、パラメータについての最大化を行う
 多次元正規分布の平均パラメータの最尤推定による推定値は、データの平均によってもとまる– ちなみに、共分散行列の推定値は、データの共分散行列によって求まる もっと複雑なモデル（混合正規分布、ロジスティック回帰）では、最尤推定はどのように行えばいいだろうか？

7THE UNIVERSITY OF TOKYO

機械学習のアルゴリズム

8THE UNIVERSITY OF TOKYO学習のアルゴリズム：
対数尤度を最大化するパラメータを数値的に求めます 必ずしも正規分布のように閉じた形で解が求まるわけではない 最尤推定を数値的に行うためのアルゴリズム– 勾配法– EMアルゴリズム
 さらに、大規模なデータを用いた学習を、効率的に行うための方法– オンライン学習アルゴリズム

9THE UNIVERSITY OF TOKYO勾配法：もっとも基本的な最適化法
目的関数が最も急な方向にパラメータ更新を繰り返します 山（対数尤度L）の頂点を（なるべく速く）目指したい もっとも坂が急な方向に向かって（パラメータ上で）1ｍ進む– 頂上付近だと、頂上を越えて向こう側にいってしまうことも• 実際には歩幅はだんだん小さくする

L(w)

10w1wT2HE UNIVERSITY OF TOKYO勾配法：もっとも基本的な最適化法
最急方向（勾配）は対数尤度の偏微分で求まります もっとも急な方向 ＝ 勾配
 勾配は、目的関数（対数尤度）L(w) のパラメータwでの偏微分

 勾配の方向に、尐し（正の定数α）更新する

L(w)

11w1

wT2HE UNIVERSITY OF TOKYOσ（確率）

ロジスティック回帰に対する勾配法：
勾配を実際に計算してみます 条件付分布の対数尤度の勾配を求める

w>x

 カテゴリ+1 の訓練データのインデクス集合をPos,
カテゴリ-1 のインデクス集合をNegとすると、対数尤度は、

 勾配は、12+1カテゴリのデータ-1カテゴリのデータ

THE UNIVERSITY OF TOKYOロジスティック回帰に対する勾配法：
比較的シンプルな形で求まりますσ（確率） 勾配は、

 ここで、w>x、より

 結局、

13THE UNIVERSITY OF TOKYOEMアルゴリズム：「隠れ変数」が考えられるときの最適化法
混合分布を効率的に推定できます

混合正規分布の最尤推定も、勾配法で行ってよいが…

EM (Expectation-Maximization) アルゴリズム– 本来なかった「隠れ変数」の存在が自然に導入できるようなモデルの最尤推定法
混合正規分布は、正規分布をひとつ選んで、データを生成していると考えられる• 「どのデータがどの正規分布から発生したか」を「隠れ変数」として導入– 2つのステップの繰り返しアルゴリズム•1. 隠れ変数を固定したときのパラメータの最尤推定– 単一の正規分布の最尤推定は、閉じた形で求まる
2. パラメータを固定したときの隠れ変数の推定14THE UNIVERSITY OF TOKYO

混合正規分布のためのEMアルゴリズム：
メンドウなので、K-meansアルゴリズムを紹介します 混合正規分布（Σ(k)は固定）において、対数尤度↓を最大化するパラメータを求めたい 煩雑になるので、単純化して、インチキEMアルゴリズム（K-meansアルゴリズム）を導くことにする
15

THE UNIVERSITY OF TOKYOK-meansアルゴリズム：隠れ変数を考えることで、簡単な繰り返しアルゴリズムになります

混合正規分布は、正規分布を一つ選んで、それを使って x を生成していると解釈できる

各データ x(i) が、K 個の正規分布のどれからでてきたのかはわからない。 もしわかっていれば、平均によって正規分布のパラメータが推定できた

そこで、以下のステップを収束するまで繰り返す
1. 各データx(i)を、最寄の平均をもつ正規分布に所属させる
(2)
μ(1)
μx(i)
μ(3)
2. 各正規分布に所属したデータから、それぞれの平均を新たに求める
μ(3)

16

THE UNIVERSITY OF TOKYO

学習アルゴリズムのオンライン化：
大規模なデータを扱うときに有効です 勾配法、EM法、ともに各繰り返しは、(データ数 N )×(次元数D)に比例した時間がかかる
 しかし、– データ数が非常に大きいときには、結構時間がかかる– 実際には、本当にキッチリ最適化する必要も無い（モデルもホントだかどうだか…）– 時間とともにデータが到来するような場合もある• 時間とともに、正解のモデルも変化するかもしれない

 そこで、オンライン学習（逐次学習）アルゴリズム：
訓練データをひとつずつ処理する– 人間の学習のイメージにちかい（「だんだん」「試行錯誤」）
17

THE UNIVERSITY OF TOKYOロジスティック回帰の勾配法のオンライン化：
ひとつのデータに対しての対数尤度の勾配を用います データ (x(i) , y(i)) について注目して最適化を行う
 1つのデータに注目したときの対数尤度

 勾配の方向にパラメータを尐し更新 1ステップの計算量はO(D)18

THE UNIVERSITY OF TOKYOEMアルゴリズム（K-means）のオンライン化：オンライン異常検知を行うためには必頇です オンライン異常検知：データが時々刻々流れてくる中で– モデル推定（モデルを逐次的に更新）

ここで、最寄の平均への距離が大きければ異常データと判断– 異常検知（おかしなデータを発見）
を同時に行う 以下のステップを繰り返す

1. x(i)を、最寄の平均をもつ正規分布に所属させる(1)μμ(1)(バッチ版と同じ)
x(i)μ(3)
2.その最寄の平均をx(i)に（ちょっと）近づける
x(i)– ε は正の小さい値
19μ(3)THE UNIVERSITY OF TOKYOここまでのまとめ：最尤推定のための数値計算アルゴリズ
ム（勾配法とEMアルゴリズム）
 最尤推定を数値的に行うためのアルゴリズム– 勾配法– EMアルゴリズム
 大規模データを効率的に行うための方法としてオンライン学習
アルゴリズム– ロジスティック回帰のオンライン化– K-meansアルゴリズムのオンライン化• オンライン異常検知

 実際に学習してみたものの、その結果の良し悪しはどのように判断したらよいだろうか？

20

THE UNIVERSITY OF TOKYO

機械学習手法の評価

21

THE UNIVERSITY OF TOKYO

評価方法：何をもって学習の良し悪しを計るか？
まだ見ぬデータに対する性能が真の性能であると考えます 実際に学習してみたものの、その結果の良し悪しはどのように判断したらよいだろうか？

 モデルは、まだ見ぬデータに対してうまく働く必要がある– 教師無し学習：未知の入力 x に対して高い確率を割り当てる– 教師付き学習：カテゴリ y が未知の入力 x に対して正しいカテゴリを振る
 訓練データとテストデータに分けて評価を行う– 訓練データ：モデルをつくるためのデータ– テストデータ：モデルの性能を評価するためのデータ（＝将来のデータとして、まだ見ていないことにする）
全データ
22

訓練用

評価用
THE UNIVERSITY OF TOKYO交差確認法（クロスバリデーション）：
まだ見ぬデータに対する性能を評価することができます 全体を K 等分し、評価用– そのうち K-1 個を訓練用に– 1個を評価用に使う

訓練用

を K 回繰り返し、その平均的な性能を測る

 では、性能を測る指標として、具体的にどのような指標を使えばよいか– 教師無し学習：（テスト）対数尤度

全データ– 教師付き学習：正解率、AUC

23

THE UNIVERSITY OF TOKYO

教師無し学習の場合、テストデータに対する対数尤度
 テストデータに対する対数尤度– テストデータと訓練データが同じ分布から出ているのであれ
ば、訓練データに対して高い確率を与えるモデルは、テストデータに対しても高い確率を与えるはず もしくは、クラスタリングなどの場合に、正しいクラスラベルが分かっていたりすれば、それとの一致具合も使われる

24

THE UNIVERSITY OF TOKYO教師付き学習の場合、尤度より正解率のほうが評価値として好ましいが、評価値が閾値に依存するという問題があります 教師付き学習の場合にも、対数尤度を使ってよい が、本当はモデルの出力を用いて予測したカテゴリが正しいかどうかに興味がある–であれば、カテゴリ +1 と予測–であれば、カテゴリ -1 と予測 正解率 := (テストデータ中での正解数) / (テストデータの数) しかし、– 精度が閾値に依存してしまう– 特に、カテゴリのバランスが悪いときに•が0.5よりも全体的に高め／低めに出るので評価のベースラインがわからない
25

THE UNIVERSITY OF TOKYOAUC: 閾値に依存しない教師付き学習の定番評価値
 ある閾値を決めたときの正解率ではなく、の相対的な順序に依存した指標
ちなみに、金融では、ほぼ同様の指標がAR値と呼ばれる

 AUC（Area Under the Curve）とは：– あるカテゴリ+1 の x(i) をランダムに選び– あるカテゴリ-1 の x(j) をランダムに選んだとき–であるような確率+1+1
AUC=1.00-1-1
26+1-1
AUC=0.75+1-1-1-1
AUC=0.00+1+1THE UNIVERSITY OF TOKYO過学習：訓練データに適応しすぎると、性能が悪くなる現象
 （教師付き学習において）訓練データそのものを覚えてしまえば、訓練データに関しては100％正解できる– しかし、本当は、訓練データに含まれていないデータに対して正解したい 訓練データに拘りすぎると、性能が悪くなる現象「過学習」がおこる– とくに x が高次元のデータを扱うときに起こる– データの数に対して、モデルの自由度（パラメータの数）が大きすぎると、おこりやすい27

THE UNIVERSITY OF TOKYO

正則化：訓練データへの過適合を防ぐ方法
 尤度だけではなく「関数の滑らかさ」を表す項を目的関数に加える
 具体的には、パラメータのノルム∥w ∥ （ベクトルの大きさ）を使うことが多い– ノルムが大→極端なモデル– ノルムが小→滑らかなモデルロジスティック回帰（教師付き学習）の場合

パラメータwに依存することを明示的にするためにこのように書く

ノルムがペナルティ項として加わる

28λは適当な正の定数（対数尤度とのバランスをとる）
THE UNIVERSITY OF TOKYOL2-正則化（リッジ正則化）：もっとも一般的な正則化法
 ノルムとして2-ノルムを用いる
 これを対数尤度にペナルティ項として加えると

 もっとも一般的に用いられる正則化法
 λ の決め方は後述

29

THE UNIVERSITY OF TOKYOL1-正則化（ラッソ正則化）：
スパース（疎）な解を得られる正則化法
 ノルムとして1-ノルムを用いる

 これを対数尤度にペナルティ項として加えると

 得られる w が疎 になることが知られている– w の要素の多くが 0 になる

 x の次元が高いときに有効– テキスト分類など
30

THE UNIVERSITY OF TOKYOハイパーパラメータλの決定：
交差検定を利用することで決定できます 交差検定によって決定する
 複数の学習アルゴリズムの比較には、交差検定の2重ループ外ループでは、内ループで決定されたλを使って性能評価

内ループでは、さらに交差検定を行いλを決定

内ループ用データ

内ループ用データ

アルゴリズムの性能比較
テスト用

訓練用

31

λ決定のためのテスト用

訓練用

THE UNIVERSITY OF TOKYOここまでのまとめ：性能評価方法と過学習の問題、過学習を避けるための正則化法
 性能評価の方法として、訓練データとテストデータに切り分けて複数回の評価を行う交差確認法（クロスバリデーション）
 評価値としては、– 教師無し学習：テスト尤度– 教師付き学習：正解率、AUC
 訓練データに適合しすぎて、性能が悪化する過学習の問題
 過学習の解決法として、パラメータのノルムをペナルティ項として目的関数に加える正則化法– L2正則化（リッジ正則化）：世界標準– L1正則化（ラッソ正則化）：次元削減の効果あり
32

THE UNIVERSITY OF TOKYO