Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
第十章-教師なし学習【数学嫌いと学ぶデータサイエンス・統計的学習入門】
Search
Ringa_hyj
July 22, 2020
Technology
0
78
第十章-教師なし学習【数学嫌いと学ぶデータサイエンス・統計的学習入門】
第十章【数学嫌いと学ぶデータサイエンス・統計的学習入門】
Ringa_hyj
July 22, 2020
Tweet
Share
More Decks by Ringa_hyj
See All by Ringa_hyj
Catching up with the tidymodels.[Japan.R 2021 LT]
ringa_hyj
3
790
多次元尺度法MDS
ringa_hyj
0
240
因子分析(仮)
ringa_hyj
0
120
階層、非階層クラスタリング
ringa_hyj
0
86
tidymodels紹介「モデリング過程料理で表現できる説」
ringa_hyj
0
390
深層学習をつかった画像スタイル変換の話と今までの歴史
ringa_hyj
0
360
正準相関分析(仮)
ringa_hyj
0
93
対応分析
ringa_hyj
0
110
2020-11-15-第1回-統計学勉強会
ringa_hyj
0
690
Other Decks in Technology
See All in Technology
SRE×AIOpsを始めよう!GuardDutyによるお手軽脅威検出
amixedcolor
1
250
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
3
670
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
170
A Tour of Anti-patterns for Functional Programming
guvalif
0
1.2k
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
210
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
170
Next.jsとNuxtが混在? iframeでなんとかする!
ypresto
2
1.4k
LLMの気持ちになってRAGのことを考えてみよう
john_smith
0
120
SREが投資するAIOps ~ペアーズにおけるLLM for Developerへの取り組み~
takumiogawa
4
1.2k
20241120_JAWS_東京_ランチタイムLT#17_AWS認定全冠の先へ
tsumita
2
330
『Firebase Dynamic Links終了に備える』 FlutterアプリでのAdjust導入とDeeplink最適化
techiro
0
240
あなたの知らない Function.prototype.toString() の世界
mizdra
PRO
4
1.9k
Featured
See All Featured
What's new in Ruby 2.0
geeforr
343
31k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
Building Your Own Lightsaber
phodgson
103
6.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
111
49k
Unsuck your backbone
ammeep
668
57k
Transcript
@Ringa_hyj 日本一の数学嫌いと学ぶ データサイエンス ~第十章:教師なし学習~
対象視聴者: 数式や記号を見ただけで 教科書を閉じたくなるレベル , , C , ,
教師なし学習 ・主成分分析 ・寄与度 ・クラスタリング ・k平均 ・階層的
教師なし学習
・教師なし学習 教師なし学習とは 教師ありと違い精度を確かめる方法がない データから知見を引き出すために使われる しかし、テストでの性能を測れないので汎化性に期待はできない 教師なし学習としては ・主成分分析 ・クラスタリング が有名である
主成分分析
・主成分分析 6章で主成分分析の求め方を含めて紹介した データにp変数あれば、2変数plotは p(p-1)/2 個の図になる p=10なら45枚の図 すべて確認するのは大変なので主成分に要約する 第一主成分は以下により得られる max 11~1
1 ා =1 =1 1 2 =1 1 2 = 1 ただし制約 第二主成分は第一主成分に直交(無相関)する という制約が付く
・主成分分析 ・主成分が最良のM次元近似である 主成分とは、各データから近いように近似していく方法 1~M次元の主成分ベクトルと係数ベクトルは最良のM次元近似である Mを大きくしていけばp次元データに同じようになっていく ・標準化 主成分分析は事前に中心化する手法である 標準化すべきか、という議論については、単位が異なるならば行うことが推奨 単位が等しい中で標準化するのは比較できなくなるのでNG ・パッケージによる出力の違い
係数ベクトル、主成分スコアベクトルの符号がパッケージによって異なるが、 これは主成分軸の方向を表すものであり、符号以外は一致する このことを「符号を除いた一意性を持つ」という
寄与度
・主成分分析 どれだけ情報が失われているか 分散の割合 寄与率 によって考える データセット全体の分散の総和 =1 Var =
ා =1 1 =1 2 第m主成分での分散の総和は 1 =1 2 = 1 ා =1 =1 2 以上から第m主成分が全体から抽出できた情報量は以下 =1 =1 2 =1 =1 2
クラスタリング k平均
・クラスタリング クラスタリングには有名なものに ・K平均クラスタリング・・・クラスタを指定 ・階層的クラスタリングがある・・・デンドログラムからクラスタ数を決める
・クラスタリング ・K平均クラスタリング データはKクラスのいずれかに属する C1 ⋁ C2 ⋁ … Ck =
(1~n) 一つのデータの所属クラスが重複することはない K≠K’ で Ck ∧ Ck’ = ∅ iがCkのデータであるとき、 i∉Ck と表示する
・クラスタリング 良いクラスタリングの結果とは・・・クラスタ内変動 W(Ck) が小さくなること minimize Σ W(Ck) (k=1~k) C1~Ck クラスタ内変動は
クラスタ内のデータが似ているほどいい → 非類似度を最小化 非類似度をユークリッド二乗距離を使うならば以下のように定式化する |Ck|はK番目のクラスタ内のデータ数 非類似度を計算する対象であるiとi’もK番目クラスに属しているものである(jは変数) = 1 ා ,′∈ =1 − ′ 2
・クラスタリング 全データを全クラスに割り当てて調べる場合、 n個をK個のクラスに分割するのは Kn通り 局所的最適解に陥るが以下の方法を繰りかえすことが主流 ①Kをいくつにするか決める 各データに1~kのクラスをランダムに割り当てる ②各クラスタの重心を求める ③各データと各重心のユークリッド距離を計算し、最も距離の近いクラスに割り当てなおす ②③を重心が変動しなくなるまで繰り返す。
この繰り返しは単調減少の性質を持つことを数式で表現する = 2 ා ∈ =1 − ҧ 2 = 1 ා ,′∈ =1 − ′ 2 クラス内変動が重心からの距離であると考えれば 重心は各データから最も近くなるまで移動するので、 この繰り返しによりクラスタ内変動は減少する ҧ = 1 ∈
クラスタリング 階層的クラスタリング
・クラスタリング Kを決めることは、何かしら仮説がなくては決めにくい そこでデンドログラムを考える 決定木のような樹上図をしており、 分岐点からデータ点までの高さが非類似度を表す 非類似度 ある高さ(非類似度)で切った時、 そのデンドログラムの枝の本数が クラス数となる =
高さを決める必要はあるが クラス数は自動的に決まる
・クラスタリング 各データ点で非類似度を計算する n(n-1)/2 組の計算を行う 非類似の小さいデータペアを繋ぐ 繋いだ後、ペアを一つの値に変換する(連結法は後述) 再度非類似度を計算 これを繰り返す 非類似度でペアに指定されたデータを1つの値に変換する 完全連結法・・・データたち(クラスタ)の最大値で置き換える
単連結法・・・データたちの最小値で置き換える 平均連結法・・・データたちの非類似度の平均で置き換える 重心連結法・・・データの変数の重心で置き換える (デンドログラムが逆転することがあるので非推奨)
・クラスタリング 非類似度にどんな計算を使うか?(今回ユークリッド) 目的によっては距離でなく、相関をとらえる計算を行うべき クラスタリングには複数の決定すべき項目がある(正解はない) 中心化するか、標準化すべきか、類似度の関数、連結法、切断の高さ、初期クラスタ数 その項目によって結果(割り当てられたクラス)の解釈が変化してしまう クラスタにp値を割り当てるクラスタリングや 外れ値に強い混合モデルクラスタリングなどもある。
None
None