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

第十章-教師なし学習【数学嫌いと学ぶデータサイエンス・統計的学習入門】

 第十章-教師なし学習【数学嫌いと学ぶデータサイエンス・統計的学習入門】

第十章【数学嫌いと学ぶデータサイエンス・統計的学習入門】

795a1c8d5e46f6b9067202655ea5dfae?s=128

Ringa_hyj

July 22, 2020
Tweet

Transcript

  1. @Ringa_hyj 日本一の数学嫌いと学ぶ データサイエンス ~第十章:教師なし学習~

  2. 対象視聴者: 数式や記号を見ただけで 教科書を閉じたくなるレベル , , C , ,

  3. 教師なし学習 ・主成分分析 ・寄与度 ・クラスタリング ・k平均 ・階層的

  4. 教師なし学習

  5. ・教師なし学習 教師なし学習とは 教師ありと違い精度を確かめる方法がない データから知見を引き出すために使われる しかし、テストでの性能を測れないので汎化性に期待はできない 教師なし学習としては ・主成分分析 ・クラスタリング が有名である

  6. 主成分分析

  7. ・主成分分析 6章で主成分分析の求め方を含めて紹介した データにp変数あれば、2変数plotは p(p-1)/2 個の図になる p=10なら45枚の図 すべて確認するのは大変なので主成分に要約する 第一主成分は以下により得られる max 11~1

    1 ා =1 ෍ =1 1 2 ෍ =1 1 2 = 1 ただし制約 第二主成分は第一主成分に直交(無相関)する という制約が付く
  8. ・主成分分析 ・主成分が最良のM次元近似である 主成分とは、各データから近いように近似していく方法 1~M次元の主成分ベクトルと係数ベクトルは最良のM次元近似である Mを大きくしていけばp次元データに同じようになっていく ・標準化 主成分分析は事前に中心化する手法である 標準化すべきか、という議論については、単位が異なるならば行うことが推奨 単位が等しい中で標準化するのは比較できなくなるのでNG ・パッケージによる出力の違い

    係数ベクトル、主成分スコアベクトルの符号がパッケージによって異なるが、 これは主成分軸の方向を表すものであり、符号以外は一致する このことを「符号を除いた一意性を持つ」という
  9. 寄与度

  10. ・主成分分析 どれだけ情報が失われているか 分散の割合 寄与率 によって考える データセット全体の分散の総和 ෍ =1 Var =

    ා =1 1 ෍ =1 2 第m主成分での分散の総和は 1 ෍ =1 2 = 1 ා =1 ෍ =1 2 以上から第m主成分が全体から抽出できた情報量は以下 ෎ =1 ෍ =1 2 ෎ =1 ෍ =1 2
  11. クラスタリング k平均

  12. ・クラスタリング クラスタリングには有名なものに ・K平均クラスタリング・・・クラスタを指定 ・階層的クラスタリングがある・・・デンドログラムからクラスタ数を決める

  13. ・クラスタリング ・K平均クラスタリング データはKクラスのいずれかに属する C1 ⋁ C2 ⋁ … Ck =

    (1~n) 一つのデータの所属クラスが重複することはない K≠K’ で Ck ∧ Ck’ = ∅ iがCkのデータであるとき、 i∉Ck と表示する
  14. ・クラスタリング 良いクラスタリングの結果とは・・・クラスタ内変動 W(Ck) が小さくなること minimize Σ W(Ck) (k=1~k) C1~Ck クラスタ内変動は

    クラスタ内のデータが似ているほどいい → 非類似度を最小化 非類似度をユークリッド二乗距離を使うならば以下のように定式化する |Ck|はK番目のクラスタ内のデータ数 非類似度を計算する対象であるiとi’もK番目クラスに属しているものである(jは変数) = 1 ා ,′∈ ෍ =1 − ′ 2
  15. ・クラスタリング 全データを全クラスに割り当てて調べる場合、 n個をK個のクラスに分割するのは Kn通り 局所的最適解に陥るが以下の方法を繰りかえすことが主流 ①Kをいくつにするか決める 各データに1~kのクラスをランダムに割り当てる ②各クラスタの重心を求める ③各データと各重心のユークリッド距離を計算し、最も距離の近いクラスに割り当てなおす ②③を重心が変動しなくなるまで繰り返す。

    この繰り返しは単調減少の性質を持つことを数式で表現する = 2 ා ∈ ෍ =1 − ҧ 2 = 1 ා ,′∈ ෍ =1 − ′ 2 クラス内変動が重心からの距離であると考えれば 重心は各データから最も近くなるまで移動するので、 この繰り返しによりクラスタ内変動は減少する ҧ = 1 ෍ ∈
  16. クラスタリング 階層的クラスタリング

  17. ・クラスタリング Kを決めることは、何かしら仮説がなくては決めにくい そこでデンドログラムを考える 決定木のような樹上図をしており、 分岐点からデータ点までの高さが非類似度を表す 非類似度 ある高さ(非類似度)で切った時、 そのデンドログラムの枝の本数が クラス数となる =

    高さを決める必要はあるが クラス数は自動的に決まる
  18. ・クラスタリング 各データ点で非類似度を計算する n(n-1)/2 組の計算を行う 非類似の小さいデータペアを繋ぐ 繋いだ後、ペアを一つの値に変換する(連結法は後述) 再度非類似度を計算 これを繰り返す 非類似度でペアに指定されたデータを1つの値に変換する 完全連結法・・・データたち(クラスタ)の最大値で置き換える

    単連結法・・・データたちの最小値で置き換える 平均連結法・・・データたちの非類似度の平均で置き換える 重心連結法・・・データの変数の重心で置き換える (デンドログラムが逆転することがあるので非推奨)
  19. ・クラスタリング 非類似度にどんな計算を使うか?(今回ユークリッド) 目的によっては距離でなく、相関をとらえる計算を行うべき クラスタリングには複数の決定すべき項目がある(正解はない) 中心化するか、標準化すべきか、類似度の関数、連結法、切断の高さ、初期クラスタ数 その項目によって結果(割り当てられたクラス)の解釈が変化してしまう クラスタにp値を割り当てるクラスタリングや 外れ値に強い混合モデルクラスタリングなどもある。

  20. None
  21. None