Contenu connexe Similaire à Introduction to Mahout Clustering - #TokyoWebmining #6 (20) Plus de Koichi Hamada (17) Introduction to Mahout Clustering - #TokyoWebmining #61. 第6回データマイニング+WEB勉強会@東京
2010/08/22
Mahout クラスタリング入門
Introduction to Mahout Clustering
hamadakoichi
濱田 晃一
2. AGENDA
◆自己紹介
◆Mahoutとは
◆Clustering
◆Mahout Clustering
◆Mahout k-means
◆参考資料
◆最後に
3. AGENDA
◆自己紹介
◆Mahoutとは
◆Clustering
◆Mahout Clustering
◆Mahout k-means
◆参考資料
◆最後に
7. 自己紹介:hamadakoichi 濱田晃一
理論物理 博士(2004.3取得)
量子統計場の理論
Statistical Field Theory Spontaneously
Time-Reversal Symmetry Breaking
Anisotropic Massless Dirac Fermions
博士論文: http://hosi.phys.s.u-tokyo.ac.jp/~koichi/PhD-thesis.pdf 7
9. 自己紹介:hamadakoichi 濱田晃一
Los Angelesでプロダンサーに褒められた
・HIP HOP/House ダンス歴13年
・ダンス開始後 1年半でL.A.でプロダンサーに褒められる
Youtube Channel: http://www.youtube.com/hamadakoichi 9
10. 自己紹介:hamadakoichi 濱田晃一
毎週末3時間ダンスコーチをしています
■過去、東京と京都でも
ダンス部を創設。
コーチをしていました
駒場物理ダンス部 京都大学基礎物理学研究所ダンス部
部長兼コーチ 部長兼コーチ
現在: 毎週末 3時間ダンスコーチ
Youtube Channel: http://www.youtube.com/hamadakoichi 10
11. 数理解析手法の実ビジネスへの適用
2004年 博士号取得後
数理解析手法を実ビジネス適用の方法論構築
主な領域
◆活動の数理モデル化・解析手法
◆活動の分析手法・再構築手法
◆活動の実行制御・実績解析システム
…
内容抜粋
“Decoupling Executions in Navigating Manufacturing "Unified graph representation of processes
Processes for Shortening Lead Time and Its Implementation for scheduling with flexible resource
to an Unmanned Machine Shop”, assignment",
11
12. 数理解析手法の実ビジネスへの適用:活動例
活動例
活動の統一グラフモデルを構築・解析
Unified graphical model of processes and resources
青字:割付モデル属性
[ ] : Optional
Node ・priority(優先度) Edge
・duration(予定時間)
[・earliest(再早開始日時) ] Process Edge
Process [・deadline(納期) ]
[・or(条件集約数) ]
前プロセスの終了後に後プロセスが
プロセスを表す 開始できること表す
・attributes(属性)
preemptable(中断可否),
successive(引継ぎ可否)
Uses Edge
workload(作業負荷) Processが使用する
uses uses uses uses uses uses Assign Region を表す
Assign Region Assigns from Edge
同一Resourceを割付け続ける Assign Regionに
assigns from assigns from 指定Resourceの子Resource集合の
範囲を表す
assigns assigns 中から割付けることを示す
企業01 [process]
has has [startDate(開始日時)]
[endDate(終了日時)] Assigns Edge
製品01 組織A StartDateからEndDateまでの間
Resource has Assign RegionにResourceを
割付対象要素を表す has has has has has has 割付けることを表す
・capacity(容量)
・calender(カレンダー)
AAA01 AAB02 … 山田さん 田中さん 鈴木さん ・attributes(属性) Has Edge
東さん Resourceの所有関係を表す
12
13. 数理解析手法の実ビジネスへの適用:活動例
一品一様の業務プロセスの
動的なプロセス制御数理体系を構築
全体生産リードタイム中央値を 1/2.7に短縮
設計開始~頭だし出荷リードタイム
設計開始~頭だし出荷CT対週集計開始日時の箱ひげ図 体系適用
500
適用後
設計開始~頭だし出荷CT
400
360.4h(15.0日)
1/2.7
300
200
100
0 0 0 0 0 0 0 0 0 0 0
141.6h(5.9日)
0 0 0
9: 0 9 :0 9 :0 9 :0 9: 0 9 :0 9 :0 9 :0 9: 0 9 :0 9 :0 9 :0 9: 0 9 :0
0 7 4 1 8 5 1 8 5 2 9 6 3 0
/2 /2 /0 /1 /1 /2 /0 /0 /1 /2 /2 /0 /1 /2
09 09 10 10 10 10 11 11 11 11 11 12 12 12
4/ 4/ 4/ 4/ 4/ 4/ 4/ 4/ 4/ 4/ 4/ 4/ 4/ 4/
2 00 2 00 2 00 2 00 2 00 2 00 2 00 2 00 2 00 2 00 2 00 2 00 2 00 2 00
週集計開始日時
13
14. 数理解析手法の実ビジネスへの適用:活動例
ビジネスとともに
学術分野でも貢献
変動性から生じる動的な課題
・リソースの競合 ・滞留 ・納期遅延 …
一品一様な業務プロセスを含む
統計解析・制御数理モデル
・統計的な有効変数算出
・統計数理モデル化
-優先順位制御
-実行タイミング制御
-統計フィードバック
-適正リソース量算出
・予測数理体系
論文(体系の一部)
M.Nakao, N. Kobayashi, K.Hamada, T.Totsuka, S.Yamada,
“Decoupling Executions in Navigating Manufacturing Processes for Shortening Lead Time and Its Implementation
to an Unmanned Machine Shop”,
CIRP Annals - Manufacturing Technology Volume 56, Issue 1, Pages 171-174 (2007) 14
16. AGENDA
◆自己紹介
◆Mahoutとは
◆Clustering
◆Mahout Clustering
◆Mahout k-means
◆参考資料
◆最後に
17. Mahoutとは
Open Sourceでスケーラブルな
機械学習・データマイニングのライブラリ
・Apache プロジェクト
・機械学習・データマイニングのライブラリ
・Java オープンソース
・Hadoop(大規模 分散処理基盤)上で動作
(Hadoop:象, Mahout: 象使い)
http://mahout.apache.org
17
18. Mahoutとは
Open Sourceでスケーラブルな
機械学習・データマイニングのライブラリ
・Apache プロジェクト
・機械学習・データマイニングのライブラリ
・Java オープンソース
・Hadoop(大規模 分散処理基盤)上で動作
(Hadoop:象, Mahout: 象使い)
http://mahout.apache.org
18
19. Mahoutとは
Open Sourceでスケーラブルな
機械学習・データマイニングのライブラリ
・Apache プロジェクト
・機械学習・データマイニングのライブラリ
・Java オープンソース
・Hadoop(大規模 分散処理基盤)上で動作
(Hadoop:象, Mahout: 象使い)
http://mahout.apache.org
19
20. Mahoutとは
Open Sourceでスケーラブルな
機械学習・データマイニングのライブラリ
・Apache プロジェクト
・機械学習・データマイニングのライブラリ
・Java オープンソース
・Hadoop(大規模 分散処理基盤)上で動作
(Hadoop:象, Mahout: 象使い)
http://mahout.apache.org
20
21. Mahoutとは
Open Sourceでスケーラブルな
機械学習・データマイニングのライブラリ
・Apache プロジェクト
・機械学習・データマイニングのライブラリ
・Java オープンソース
・Hadoop(大規模 分散処理基盤)上で動作
(Hadoop:象, Mahout: 象使い)
http://mahout.apache.org
21
22. Mahoutとは
Open Sourceでスケーラブルな
機械学習・データマイニングのライブラリ
・Apache プロジェクト
・機械学習・データマイニングのライブラリ
・Java オープンソース
・Hadoop(大規模 分散処理基盤)上で動作
・Hadoop:象, Mahout: 象使い
http://mahout.apache.org
22
23. Mahoutとは
Open Sourceでスケーラブルな
機械学習・データマイニングのライブラリ
・Apache プロジェクト
・機械学習・データマイニングのライブラリ
・Java オープンソース
・Hadoop(大規模 分散処理基盤)上で動作
・Hadoop:象, Mahout: 象使い
http://mahout.apache.org
23
24. Mahoutとは
Open Sourceでスケーラブルな
機械学習・データマイニングのライブラリ
Applications
Examples
Freq.
Genetic Pattern Classification Clustering Recommenders
Mining
Math
Utilities Collections Apache
Vectors/Matrices/
Lucene/Vectorizer (primitives) Hadoop
SVD
http://cwiki.apache.org/confluence/display/MAHOUT/Algorithms
http://www.slideshare.net/gsingers/intro-to-apache-mahout 24
25. AGENDA
◆自己紹介
◆Mahoutとは
◆Clustering
◆Mahout Clustering
◆Mahout k-means
◆参考資料
◆最後に
30. 活用例:マーケティングリサーチ
マーケティングリサーチ
データ
好きなお酒に関するアンケート 消費者クラスタ
Clustering
ユーザーベクトル
商品・メディア評価 Aさん Bさん Cさん
チューハイ氷結 5 5 1
カロリ 4 5 1
196℃ 4 1 1 …
カクテルパートナー 4 4 2
Slat 1 1 1
ほろよい 1 2 2
ウメッシュ 1 1 3
… 1 1 1
テレビ 1 1 5 参考: @bob3bob3 さん:
ネット 5 1 1 「市場細分化とクラスター分析」(第3回データマイニング+WEB勉強会@東京)
http://www.slideshare.net/bob3/cfakepathtokyo-webmining3-201004
… … … …
31. 活用例:マーケティングリサーチ
マーケティングリサーチ
消費者のニーズを知り、ターゲティング・チャネル選定に活かす
データ
好きなお酒に関するアンケート 消費者クラスタ ・苦いもの
・300円台
甘いもの
Clustering 100円台
ユーザーベクトル
商品・メディア評価 Aさん Bさん Cさん ・甘いもの
・低カロリ
チューハイ氷結 5 5 1 ・テレビ
カロリ 4 5 1
196℃ 4 1 1 …
カクテルパートナー 4 4 2 ・甘いもの ・塩味
Slat 1 1 1 ・低カロリ ・炭酸
・ネット ・400円台
ほろよい 1 2 2
自社ターゲットで 新しい
ウメッシュ 1 1 3 到達できていない ユーザーニーズの発見
… 1 1 1 ユーザー層の発見
テレビ 1 1 5 参考: @bob3bob3 さん:
ネット 5 1 1 「市場細分化とクラスター分析」(第3回データマイニング+WEB勉強会@東京)
http://www.slideshare.net/bob3/cfakepathtokyo-webmining3-201004
… … … …
32. 活用例:健診データ
健診データ
データ
健診データ 受診者クラスタ
Clustering
ユーザーベクトル
健康特徴 Aさん Bさん Cさん
年齢 46 44 …
BMI 25.6 20.1
血圧上 126 119
血圧下 77 70
中性脂肪 321 156
空腹時血糖値 95 98
LDL 130 123
GOT 23 27
GPT 41.5 38 参考:@dichika さん:
「健診データへのクラスタリング適用例」(第3回データマイニング+WEB勉強会@東京)
yGTP 51.5 79
http://www.slideshare.net/guestbe53f7/kenshin
… … …
33. 活用例:健診データ
健診データ
病人の特徴を知り、病気の予防に活かす
データ
健診データ 受診者クラスタ
Clustering
メダボリック
ユーザーベクトル シンドローム
健康特徴 Aさん Bさん Cさん
年齢 46 44 … メタボリック
BMI 25.6 20.1 シンドローム予備軍
血圧上 126 119 ⇒減量指導する
血圧下 77 70
中性脂肪 321 156
空腹時血糖値 95 98
LDL 130 123
GOT 23 27
GPT 41.5 38 参考:@dichika さん:
「健診データへのクラスタリング適用例」(第3回データマイニング+WEB勉強会@東京)
yGTP 51.5 79
http://www.slideshare.net/guestbe53f7/kenshin
… … …
34. クラスタリング手法の種類
手法と帰属度の分類軸がある
分類 種類 内容
手法 階層的手法 ①各データそれぞれを一つのクラスタとする
②状態を初期状態とするクラスタの距離、類似度で2つのクラ
スタを逐次的に併合していく
③目的のクラスタ数まで併合が行われたときに処理を終了す
る
非階層的手法 ①データの良さを表す評価関数を設定する
(分割最適化) ②評価関数に対する最適解(最適分割)を探索する
帰属度 ハードクラスタリ 各データは一つのクラスタのみに所属する
ング
ソフトクラスタリ 各データが複数のクラスタリングに所属することを許す
ング (※最も帰属度が高いクラスタを抽出すると、ハードクラスタリ
ングとなる)
34
35. クラスタリング手法の種類
手法と帰属度の分類軸がある
分類 種類 内容
手法 階層的手法 ①各データそれぞれを一つのクラスタとする
②状態を初期状態とするクラスタの距離、類似度で2つのクラ
スタを逐次的に併合していく
③目的のクラスタ数まで併合が行われたときに処理を終了す
る
非階層的手法 ①データの良さを表す評価関数を設定する
(分割最適化) ②評価関数に対する最適解(最適分割)を探索する
帰属度 ハードクラスタリ 各データは一つのクラスタのみに所属する
ング
ソフトクラスタリ 各データが複数のクラスタリングに所属することを許す
ング (※最も帰属度が高いクラスタを抽出すると、ハードクラスタリ
ングとなる)
35
36. クラスタリング手法の種類
手法と帰属度の分類軸がある
分類 種類 内容
手法 階層的手法 ①各データそれぞれを一つのクラスタとする
②状態を初期状態とするクラスタの距離、類似度で2つのクラ
スタを逐次的に併合していく
③目的のクラスタ数まで併合が行われたときに処理を終了す
る
非階層的手法 ①データの良さを表す評価関数を設定する
(分割最適化) ②評価関数に対する最適解(最適分割)を探索する
帰属度 ハードクラスタリ 各データは一つのクラスタのみに所属する
ング
ソフトクラスタリ 各データが複数のクラスタリングに所属することを許す
ング (※最も帰属度が高いクラスタを抽出すると、ハードクラスタリ
ングとなる)
36
37. クラスタリング手法の種類
クラスタリング手法
種類 ハード ソフト
階層的 ・Group Average method
・Single Linkage Method
・Complete Linkage Method
・Ward Method
・Centroid Method
・Median Method
非階層的 ・k-means ・Fuzzy k-means
・Canopy ・Gaussian Discriminative Analysis
・Mean-Shift ・Dirichlet Processing
・Spectral Clustering
37
38. クラスタリング手法の種類
クラスタリング手法
種類 ハード ソフト
階層的 ・Group Average method
・Single Linkage Method
・Complete Linkage Method
・Ward Method
・Centroid Method
・Median Method
非階層的 ・k-means ・Fuzzy k-means
・Canopy ・Gaussian Discriminative Analysis
・Mean-Shift ・Dirichlet Processing
・Spectral Clustering
38
39. クラスタリング手法の種類
クラスタリング手法
種類 ハード ソフト
階層的 ・Group Average method
・Single Linkage Method
・Complete Linkage Method
・Ward Method
・Centroid Method
・Median Method
非階層的 ・k-means ・Fuzzy k-means
・Canopy ・Gaussian Discriminative Analysis
・Mean-Shift ・Dirichlet Processing
・Spectral Clustering
39
40. クラスタリング手法の種類
クラスタリング手法
種類 ハード ソフト
階層的 ・Group Average method
・Single Linkage Method
・Complete Linkage Method
・Ward Method
・Centroid Method
・Median Method
非階層的 ・k-means ・Fuzzy k-means
・Canopy ・Gaussian Discriminative Analysis
・Mean-Shift ・Dirichlet Processing
・Spectral Clustering
40
41. クラスタリング手法の種類
Mahout Clustering 実装
種類 ハード ソフト
階層的 ・Group Average method
・Single Linkage Method
・Complete Linkage Method
・Ward Method
・Centroid Method
・Median Method
非階層的 ・k-means ・Fuzzy k-means
・Canopy ・Gaussian Discriminative Analysis
・Mean-Shift ・Dirichlet Processing
・Spectral Clustering
41
42. AGENDA
◆自己紹介
◆Mahoutとは
◆Clustering
◆Mahout Clustering
◆Mahout k-means
◆参考資料
◆最後に
43. Mahout Clustering
Mahout Clustering
種類 ハード ソフト
階層的 ・Group Average method
・Single Linkage Method
・Complete Linkage Method
・Ward Method
・Centroid Method
・Median Method
非階層的 ・k-means ・Fuzzy k-means
・Canopy ・Gaussian Discriminative Analysis
・Mean-Shift ・Dirichlet Processing
・Spectral Clustering
43
44. Mahout Clustering
Mahout Clustering
クラスタリング手法 特徴
k-means Clustering クラスタをクラスタ数個の代表値で特徴づけクラ
スタリング:
非階層的手法で最も代表的な手法。現実のクラス
タリングでも使われることが多く、実用的な手法。
Fuzzy k-means K-meansで各要素が複数クラスタに帰属する形に
拡張:
距離に帰属度を掛け合わせクラスタ評価。
Gaussian Discriminative Analysis, 確率モデルでのクラスタリング:
Dirichlet Processing Clustering 観測データが異なる確率分布(ガウス分布/ディリ
クレ分布)の混合分布であると仮定。個体が属する
クラスを隠れ変数を推定する。データの発生メカ
ニズムが確率モデルでうまくモデル化できるとき、
強力な手法。
Canopy 指定距離の範囲[D1, D2]内のデータ点セットを抽
出する:K-meansの初期重心算出で用いられる。
Mean Shift 密度増加が最大半径で各クラスタ算出:指定距離
範囲でクラスタリング半径を順次増やしていく。
Spectral Clustering (Eigencut) 類似度グラフの分割によるクラスタリング
44
45. Mahout Clustering
Mahout Clustering
クラスタリング手法 特徴
k-means Clustering クラスタをクラスタ数個の代表値で特徴づけクラ
スタリング:
非階層的手法で最も代表的な手法。現実のクラス
タリングでも使われることが多く、実用的な手法。
Fuzzy k-means K-meansで各要素が複数クラスタに帰属する形に
拡張:
距離に帰属度を掛け合わせクラスタ評価。
Gaussian Discriminative Analysis, 確率モデルでのクラスタリング:
Dirichlet Processing Clustering 観測データが異なる確率分布(ガウス分布/ディリ
クレ分布)の混合分布であると仮定。個体が属する
クラスを隠れ変数を推定する。データの発生メカ
ニズムが確率モデルでうまくモデル化できるとき、
強力な手法。
Canopy 指定距離の範囲[D1, D2]内のデータ点セットを抽
出する:K-meansの初期重心算出で用いられる。
Mean Shift 密度増加が最大半径で各クラスタ算出:指定距離
範囲でクラスタリング半径を順次増やしていく。
Spectral Clustering (Eigencut) 類似度グラフの分割によるクラスタリング
45
46. AGENDA
◆自己紹介
◆Mahoutとは
◆Clustering
◆Mahout Clustering
◆Mahout k-means
◆参考資料
◆最後に
49. k-means: 最も単純なアルゴリズム (E.W. Forgy 1965)
①データセットの中からK個のクラスタの
代表点 c1,c2,…,cKをランダムに選ぶ
②各データ x に対し、 ciとの距離を測り
最も距離の短い ci に対するに対する
クラスタを xのクラスタに設定する
評価関数(最小化問題)
例) データ数 N=5,クラスタ数 K=2
3 3 3
4 4 c2 4
c2 c2 ×
c1
× c1 × c1 ×
2 5 2 5 2 5
1× 1× 1
49
50. k-means: 最も単純なアルゴリズム (E.W. Forgy 1965)
①データセットの中からK個のクラスタの
代表点 c1,c2,…,cKをランダムに選ぶ
②各データ x に対し、 ciとの距離を測り ③各クラスタの平均値(重心)を
最も距離の短い ci に対するに対する クラスタの代表点とする。
クラスタを xのクラスタに設定する (K個の平均値がクラスタを代表)
※各データ x のクラスタが変化しなくなるまで繰り返す
評価関数(最小化問題)
例) データ数 N=5,クラスタ数 K=2
3 3 3 3
4 4 c2 4 c2 4
c2 c2 × ×
c1 c1
× c1 × c1 × ×
2 5 2 5 2 5 2 5
1× 1× 1 1
50
51. Mahout K-means の実行手順
K-meansジョブの
データのVectorクラスのリスト作成 実行
ファイル書き出し
出力結果の読み込み
初期のクラスタ重心のリスト作成
ファイル書き出し
51
52. Mahout K-means の実行手順
実際の実装法を見ていきましょう
(ソースコード抜粋)
■全ソースコードは以下の場所に公開しています
[mahout] Mahout Programming : K-Means Clustering
http://d.hatena.ne.jp/hamadakoichi/20100718/p1
■Mahout導入手順
[mahout] Mahout 導入手順
http://d.hatena.ne.jp/hamadakoichi/20100703/p2
52
53. Mahout K-means の実行手順
データ表現: org.apache.mahout.math
Interface 内容
Vector データ点表現のインターフェース
Class 内容
DenseVector Vector のdoubleの配列での実装
K-means実行: org.apache.mahout.clustering.kmeans.KMeansDriver
Class 内容
Cluster クラスタを表現
KMeansDriver K-meansジョブを実行する
距離算出法 指定: org.apache.mahout.common.distance
Interface 内容
DistanceMeasure 2点間の距離算出法のインターフェース
Class 内容
CosineDistanceMeasure コサイン距離での実装
EuclideanDistanceMeasure ユークリッド距離での実装
… 他距離 (Manhattan, SquareEuclidean, ..etc)
53
54. Mahout K-means の実行手順
K-meansジョブの
データのVectorクラスのリスト作成 実行
ファイル書き出し
出力結果の読み込み
初期のクラスタ重心のリスト作成
ファイル書き出し
54
55. Mahout K-means の実行手順
K-meansジョブの
データのVectorクラスのリスト作成 実行
ファイル書き出し
出力結果の読み込み
初期のクラスタ重心のリスト作成
ファイル書き出し
55
56. Mahout K-means の実行手順
1.入力データから Vectorクラスのリストを作成
ファイル書き出し
データ点のVectorクラスのリスト作成
サンプルデータ
iris(アヤメ)データ:よい性質を持ち よく使用される
(R環境で標準提供されている) 花葉 花びら
Iris Sanguinea
56
58. Mahout K-means の実行手順
K-meansジョブの
データのVectorクラスのリスト作成 実行
ファイル書き出し
出力結果の読み込み
初期のクラスタ重心のリスト作成
ファイル書き出し
58
60. Mahout K-means の実行手順
K-meansジョブの
データのVectorクラスのリスト作成 実行
ファイル書き出し
出力結果の読み込み
初期のクラスタ重心のリスト作成
ファイル書き出し
60
61. Mahout K-means の実行手順
3.K-meansの実行
K-meansのパラメータを指定し実行する
runJob(java.lang.String input, java.lang.String clustersIn, java.lang.String output,
Java.lang.String measureClass, double convergenceDelta,
int maxIterations, int numReduceTasks)
input – 入力データのディレクトリパス名
clustersIn – 初期クラスタのディレクトリ名
output – 出力データのディレクトリパス名
measureClass – 距離クラス
convergenceDelta - 収束閾値
maxIterations – 最大繰り返し数
numReduceTasks – reducer数
61
62. Mahout K-means の実行手順
K-meansジョブの
データのVectorクラスのリスト作成 実行
ファイル書き出し
出力結果の読み込み
初期のクラスタ重心のリスト作成
ファイル書き出し
62
63. Mahout K-means の実行手順
4.出力結果の読み込み
クラスタリング結果(クラスタID)の読み込み
結果形式
key Value
データ点(Vector)のkey ClusterId
63
65. Mahout K-means の実行手順
K-meansジョブの
データのVectorクラスのリスト作成 実行
ファイル書き出し
出力結果の読み込み
初期のクラスタ重心のリスト作成
ファイル書き出し
65
66. AGENDA
◆自己紹介
◆Mahoutとは
◆Clustering
◆Mahout Clustering
◆Mahout k-means
◆参考資料
◆最後に
69. 参考資料:
■ Apach Mahout
http://mahout.apache.org
http://cwiki.apache.org/MAHOUT
http://cwiki.apache.org/confluence/display/MAHOUT/Algorithms
http://www.slideshare.net/gsingers/intro-to-apache-mahout
■ Mahout In Action (Manning Early Access Edition)
http://www.manning.com/owen/
69
70. 参考資料:
集合知イン・アクション
集合知プログラミング
70
71. AGENDA
◆自己紹介
◆Mahoutとは
◆Clustering
◆Mahout Clustering
◆Mahout k-means
◆参考資料
◆最後に
72. 最後に
蓄積されたデータを有効活用してきたい
72
73. 最後に
蓄積されたデータを有効活用してきたい
Google Group: http://groups.google.com/group/webmining-tokyo
73
74. 最後に
データマイニング+WEB勉強会
発表者を募集しています
連絡
Google Group: http://groups.google.com/group/webmining-tokyo
Twitter : http://twitter.com/hamadakoichi
74
76. AGENDA
◆自己紹介
◆Mahoutとは
◆Clustering
◆Mahout Clustering
◆Mahout k-means
◆参考資料
◆最後に
78. 階層的手法:アルゴリズム
①各データが自身をクラスターと考え
データ数のクラスターを作る
②クラスタ間の距離を測り
クラスタ間の距離行列を作成する
③最も距離の近いクラスタを併合する
④クラスタ間の距離行列を作成する
⑤最も短い距離のクラスタを併合する
※ひとつのクラスタになるまで繰り返し
78
79. 階層的手法:手法とクラスタ間距離
各手法のクラスタ間距離
クラスタリング手法 クラスタ間距離
群平均法 クラスタ間の全てのデータ組合せの距離の平均値
(Group Average method )
単連結法 クラスタ間の最小距離を与えるデータ対の距離
(Single Linkage Method )
完全連結法 クラスタの最大距離を与えるデータ対の距離
(Complete Linkage Method)
ウォード法 クラスタ内の平方和の増加分
(Ward Method)
重心法 クラスタの重心間の距離の自乗
(Centroid Method)
メディアン法 重心法と同じ。クラスタ併合時に、新たな重心を元の
(Median Method) 重心の中点にとる。
79