Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
k-meansクラスタリングの仕組み
Search
K_DM
December 30, 2021
Education
0
240
k-meansクラスタリングの仕組み
K_DM
December 30, 2021
Tweet
Share
More Decks by K_DM
See All by K_DM
主成分分析(PCA)の仕組み
k_study
0
190
X-meansの仕組み
k_study
0
1.9k
勾配ブースティングの仕組み
k_study
0
100
決定木を使った回帰の仕組み
k_study
0
220
アンサンブル学習① ランダムフォレストの仕組み
k_study
0
94
決定木に含まれるパラメタによる事前剪定と事後剪定
k_study
0
670
線形回帰② 正則化と過学習
k_study
0
530
外れ値とHuber(フーバー)損失
k_study
0
1.1k
木構造1~決定木の仕組み(分類)
k_study
0
160
Other Decks in Education
See All in Education
Evaluation Methods - Lecture 6 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
1.2k
仏教の源流からの奈良県中南和_奈良まほろば館‗飛鳥・藤原DAO/asuka-fujiwara_Saraswati
tkimura12
0
160
子どもが自立した学習者となるデジタルの活用について
naokikato
PRO
0
150
Microsoft Office 365
matleenalaakso
0
2k
Node-REDで広がるプログラミング教育の可能性
ueponx
1
190
Réaliser un diagnostic externe
martine
0
510
Introdución ás redes
irocho
0
490
2024-2025 CBT top items
cbtlibrary
0
140
H5P-työkalut
matleenalaakso
4
41k
Web Application Frameworks - Lecture 3 - Web Technologies (1019888BNR)
signer
PRO
0
3.1k
ROSConJP 2025 発表スライド
f0reacharr
0
260
高校におけるプログラミング教育を考える
naokikato
PRO
0
180
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.1k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Thoughts on Productivity
jonyablonski
73
4.9k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Statistics for Hackers
jakevdp
799
230k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
950
Measuring & Analyzing Core Web Vitals
bluesmoon
9
680
4 Signs Your Business is Dying
shpigford
186
22k
Transcript
クラスタリング1 クラスタリング1 k-means k-means 作成者:K (リンク)
『クラスタリング』で説明する項目 k-means k-means++ X-means Part1 Part2
今回の内容 •クラスタリングとは •k-means •実験 •k-means++ •まとめ クラスタリングとk-meansアルゴリズムについて説明します
クラスタリング データを教師データ無しでいくつかのグループにまとめ上げる方法 データ は与えられている が、正解データ は無い =教師なし学習 X y
アルゴリズム データを用意します 2つのグループに分けること ができそうなので、 と 設定します k = 2
アルゴリズム 各クラスタの初期値を設定します 2つの初期値を作成します (作成の仕方は色々考えられますが、ここ ではデータのある空間の中に▪と▪を作 成してそれを初期値としました) ࢀߟจݙɿk-means clustering ͷॳظͷܾΊํΛݩʹͯ͠આ໌͍ͯ͠·͢
アルゴリズム クラスタの初期値に近い点を求め、それらをまとめます それぞれの初期値と距離が近 い点を赤と青で色付けします
アルゴリズム クラスタごとの平均値(セントロイド)を求めます 色付けした点の平均値を求めて、 それをクラスタを代表する点(セ ントロイド, centroid)とします
アルゴリズム セントロイドから近い点を再び求め、クラスタを割り当てます セントロイドから距離が近い点を 色付けします
アルゴリズム 再びセントロイドを再計算し、また同じことを繰り返します 色付けした点の平均値を求めて、 それをクラスタを代表する点(セ ントロイド, centroid)とします
アルゴリズム セントロイドが移動しなくなったら、計算を終了します! この「セントロイドを求める↔色 付けし直す」の作業を繰り返し、 セントロイドが移動量が十分小さ くなったら計算を終了します
実験!
K-meansクラスタリング ←のデータにk=2としてk-means を適用すると、綺麗にデータがク ラスタリングされる 色=クラスタ
クラスタの境界が明確でない場合 kの指定が適切でないと、一つの クラスタを複数の部分に分けてし まう場合がある
clusters(k)パラメタの影響 kの指定が適切でないと、一つの クラスタを複数の部分に分けてし まう場合がある
k-meansの問題 仮に初期値として隣接する点を選んでしまうと 収束するまでに時間がかかる可能性がある 初期値次第で計算終了に時間がかかる+結果が変わるかもしれない ▼収束後の結果
k-means++<> はじめに、ランダムに点を一つ選ぶ 次の点は、はじめに選んだ点との距離 に基づいた確率分布に基づいて選ぶ (遠いほど選ばれやすくなる) ※scikit-learnはデフォルトではk-means++が実行されます 参考文献:sklearn.cluster.KMeans 『k-meansの初期値はなるべく離れた点を選んだほうが良い』というアイデアを利用 [1] Arthur,
David, and Sergei Vassilvitskii. k-means++: The advantages of careful seeding. Stanford, 2006.
randomとk-mans++の比較 •K-means++はすべて同じような クラスタリングをすることができ ている •K-mansは初期値次第でクラスタ の境界が変化していることが確 認できる
まとめ K-meanアルゴリズムについて説明しました •クラスタリングとは、データを教師データ無しでいくつかのグループにまとめ上げる 方法 •K-meansでは、セントロイドの計算とクラスタの割り当てを繰り返すことでクラスタ のまとまりを求める •K-meansは初期値の決め方によって結果が変わったり収束するまでに時間がかかる 可能性があり、k-means++では改良を加えてこの問題を軽減している •パラメタkの設定次第では不自然な形のクラスタができることもある
参考文献 •https://ja.wikipedia.org/wiki/K%E5%B9%B3%E5%9D%87%E6%B3%95 •sklearn.cluster.KMeans •Arthur, David, and Sergei Vassilvitskii. k-means++: The
advantages of careful seeding. Stanford, 2006.