K meansによるクラスタリングの解説と具体的なクラスタリングの活用方法の紹介

5,598 views

Published on

2015.11.27 アルゴリズムから学ぶAzureMLモジュールの使いこなし方
クラスタリング k-means 機械学習

Published in: Technology

K meansによるクラスタリングの解説と具体的なクラスタリングの活用方法の紹介

  1. 1. takemikami’s note – http://takemikami.com/ 三上 威 (フリーランスITエンジニア) twitter: @takemikami k-means法によるクラスタリングの解説と 具体的なクラスタリングの活用方法の紹介 マーケティング施策検討での活用をイメージして 1 クラスタリング k-means 機械学習 2015.11.27 アルゴリズムから学ぶAzureMLモジュールの使いこなし方 Copyright (C) 2015 Takeshi Mikami. All rights reserved.
  2. 2. takemikami’s note – http://takemikami.com/ アジェンダ • 自己紹介 • クラスタリングとは – マーケティングデータ分析の全体像と機械学習 – 代表的な機械学習の手法とクラスタリング – 機械学習の中でのk-means法の位置づけ • 階層的的手法のアルゴリズム • k-means法のアルゴリズム • k-means法によるクラスタリングの例 – 推計人口/面積で都道府県をクラスタリング – 実際に計算してみる – 結果の考察、階層的手法との比較 • 参考文献でのクラスタリングの応用例 • 参考文献リスト 2Copyright (C) 2015 Takeshi Mikami. All rights reserved.
  3. 3. takemikami’s note – http://takemikami.com/ 自己紹介 • 三上威 (@takemikami) • フリーランスITエンジニア – マーケティングデータ分析基盤のシステム開発運用 • 略歴 – 情報通信ネットワークの研究 @ 甲南大学理学部応用数学科 – Web系システムの開発・構築@ NEC系SIer – 旅行系ECサイトのマーケティングデータ分析 @ DeNA • 最近扱っている技術領域 – Spark, Scala, Hadoop, AWS, Redshift, kinesis, docker 3Copyright (C) 2015 Takeshi Mikami. All rights reserved. →本セッションでは、具体的に「マーケティング」をイメージして説明します。
  4. 4. takemikami’s note – http://takemikami.com/ マーケティングデータ分析の全体像と機械学習 4Copyright (C) 2015 Takeshi Mikami. All rights reserved. クラスタリングとは マーケティングデータ分析における、機械学習の位置づけを示します。 顧客との チャネル データ分析 顧客 社会・ 業界 リアル広告 イベント ・・・ Data Lake SNS 収集施策 実店舗 収 集 DWH データサイエンティスト マーケター Web広告ECサイト 機械学習 施策の検討・意思決定を機械学習で支援
  5. 5. takemikami’s note – http://takemikami.com/ 代表的な機械学習の手法とクラスタリング 5Copyright (C) 2015 Takeshi Mikami. All rights reserved. クラスタリングとは 教師 種類 手法 活用方法 教師あり 分類 (classification) ロジスティック回帰 決定木 SVM ニューラルネットワーク 離脱顧客判定 スパムメールの判定 回帰分析 (regression) 線形回帰分析 ベイズ線形回帰分析 販売予測 教師なし クラスタリング (clustering) ★k-means法 混合正規分布モデル 顧客のセグメント分け 次元圧縮 (dimentionaly reduction) 主成分分析 特異値分解 商品の類似性を可視化 共起分析 (co-occurrence analysis) 協調フィルタリング Aprioriアルゴリズム 商品のレコメンド 機械学習の手法における、クラスタリングの位置づけを示します。 →本セッションでは「クラスタリング: k-means法」について説明します。
  6. 6. takemikami’s note – http://takemikami.com/ クラスタリング(clustering)と分類(classification) 6Copyright (C) 2015 Takeshi Mikami. All rights reserved. クラスタリングとは 分類(classification) クラスタリング(clustering) 教師 教師あり 教師なし 説明 与えられたデータを 適切なクラスに振り分ける 与えられたデータを 複数のグループ分ける イメージ 既存データを元に作ったルールで 新規データを振り分ける データの特徴を元に 意味あるグループが無いか見つける A ルール B C クラスタリングと分類(教師あり学習と教師なし学習)の違いを示します。
  7. 7. takemikami’s note – http://takemikami.com/ 階層的手法と非階層的手法 7Copyright (C) 2015 Takeshi Mikami. All rights reserved. クラスタリングとは 階層的手法 非階層的手法 説明 各データを一つのクラスタと見なし、 距離が近いクラスタを 段階的に結合する手法 決められたクラスタ数でデータを分割し、 最適分割となる分割方法を 探索する手法 イメージ 手法 ウォード法、重心法、メディアン法など k-means法、混合分布モデルなど クラスタリング手法、非階層的手法と階層的手法の違いを示します。 最適分割を探索
  8. 8. takemikami’s note – http://takemikami.com/ ハードクラスタリングとソフトクラスタリング 8Copyright (C) 2015 Takeshi Mikami. All rights reserved. クラスタリングとは クラスタリング手法、ハードクラスタリングとソフトクラスタリングの違いを示します。 ハードクラスタリング ソフトクラスタリング 説明 各データが 一つのクラスのみに所属する 各データが 複数のクラスタに所属することを許す イメージ 各データが 所属するグループを1つ 割り当てる 各データが 各クラスタに所属する確率を 割り当てる 手法 K-means法など 混合分布モデルなど
  9. 9. takemikami’s note – http://takemikami.com/ 教師 種類 教師 あり 分類 (classification) 回帰分析 (regression) 教師 なし クラスタリング (clustering) 次元圧縮 (dimentionaly reduction) 共起分析 (co-occurrence analysis) 機械学習の中でのk-means法の位置づけ 9Copyright (C) 2015 Takeshi Mikami. All rights reserved. クラスタリングとは ハード クラスタリング ソフト クラスタリング 階層的方法 非階層的方法 k-means法 本セッションで説明するk-means法の、機械学習での位置づけを示します。
  10. 10. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き • 各データを一つのクラスタとみなす • 繰り返し – 全クラスタの中心点(重心)を求める – クラスタ間の中心点の距離を求め、最短距離のクラスタを結合する – クラスタが1つになったら終了 10Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きを示します。 →次のスライドから、 重心法(階層的手法)でクラスタリングを行う流れをイメージで示します。 ※ここでは紹介しないが、結合される候補となる「クラスタ内の平方和」を計算し、増分 値が最小のものを結合していく「ウォード法」がよく使われる
  11. 11. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ1 11Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ クラスタリングを行いたいデータセットを用意する
  12. 12. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ2 12Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ 各データを一つのクラスタとみなす
  13. 13. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ3 13Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ 全クラスタの中心点(重心)を求める ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  14. 14. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ4 14Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ クラスタ間の中心点の距離を求め、最短距離のクラスタを結合する ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  15. 15. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ5 15Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ 全クラスタの中心点(重心)を求める ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  16. 16. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ6 16Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ クラスタ間の中心点の距離を求め、最短距離のクラスタを結合する ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  17. 17. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ8 17Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ 全クラスタの中心点(重心)を求める ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  18. 18. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ9 18Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ クラスタ間の中心点の距離を求め、最短距離のクラスタを結合する ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  19. 19. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ10 19Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ 全クラスタの中心点(重心)を求める ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  20. 20. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ11 20Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ クラスタ間の中心点の距離を求め、最短距離のクラスタを結合する ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  21. 21. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ12 21Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ 全クラスタの中心点(重心)を求める ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  22. 22. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ13 22Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ と、いうことを 繰り返して
  23. 23. takemikami’s note – http://takemikami.com/ 重心法(階層的手法)の手続き 〜結合イメージ14 23Copyright (C) 2015 Takeshi Mikami. All rights reserved. 階層的手法のアルゴリズム 重心法(階層的手法)でクラスタリングを行う手続きのイメージ クラスタが1つになったら終了 ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  24. 24. takemikami’s note – http://takemikami.com/ k-means法の手続き • クラスタ数(k)を決める • クラスタの中心点を対象データからランダムにk個決める • 繰り返し – 各データを最も近くにある中心点のクラスタに割り当てる – クラスタ内のデータの平均値を新たなクラスタの中心点にする – クラスタの中心点が変化しなくなったら終了 24Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法のアルゴリズム k-means法でクラスタリングを行う手続きを示します。 →次のスライドから、 k-means法で最適なクラスタを探索する流れをイメージで示します。
  25. 25. takemikami’s note – http://takemikami.com/ k-means法の手続き 〜探索のイメージ1 25Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法のアルゴリズム k-means法でクラスタリングを行う手続きのイメージ クラスタリングを行いたいデータセットを用意する
  26. 26. takemikami’s note – http://takemikami.com/ k-means法の手続き 〜探索のイメージ2 26Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法のアルゴリズム ✓ ✓ クラスタの中心点を対象データからランダムにk個決める(この図では2個) k-means法でクラスタリングを行う手続きのイメージ
  27. 27. takemikami’s note – http://takemikami.com/ k-means法の手続き 〜探索のイメージ3 27Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法のアルゴリズム ✓ ✓ 各データを最も近くにある中心点のクラスタに割り当てる k-means法でクラスタリングを行う手続きのイメージ
  28. 28. takemikami’s note – http://takemikami.com/ k-means法の手続き 〜探索のイメージ4 28Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法のアルゴリズム ✓ ✓ クラスタ内のデータの平均値を新たなクラスタの中心点にする ✓ ✓ k-means法でクラスタリングを行う手続きのイメージ
  29. 29. takemikami’s note – http://takemikami.com/ k-means法の手続き 〜探索のイメージ5 29Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法のアルゴリズム ✓ ✓ 各データを最も近くにある中心点のクラスタに割り当てる ✓ ✓ k-means法でクラスタリングを行う手続きのイメージ
  30. 30. takemikami’s note – http://takemikami.com/ k-means法の手続き 〜探索のイメージ6 30Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法のアルゴリズム ✓ ✓ クラスタ内のデータの平均値を新たなクラスタの中心点にする ✓ ✓ ✓ ✓ k-means法でクラスタリングを行う手続きのイメージ
  31. 31. takemikami’s note – http://takemikami.com/ k-means法の手続き 〜探索のイメージ7 31Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法のアルゴリズム ✓ ✓ 各データを最も近くにある中心点のクラスタに割り当てる ✓ ✓ ✓ ✓ k-means法でクラスタリングを行う手続きのイメージ
  32. 32. takemikami’s note – http://takemikami.com/ k-means法の手続き 〜探索のイメージ8 32Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法のアルゴリズム ✓ ✓ クラスタ内のデータの平均値を新たなクラスタの中心点にする ✓ ✓ ✓ ✓ ✓ ✓ k-means法でクラスタリングを行う手続きのイメージ
  33. 33. takemikami’s note – http://takemikami.com/ k-means法の手続き 〜探索のイメージ9 33Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法のアルゴリズム 各データを最も近くにある中心点のクラスタに割り当てる k-means法でクラスタリングを行う手続きのイメージ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  34. 34. takemikami’s note – http://takemikami.com/ k-means法の手続き 〜探索のイメージ10 34Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法のアルゴリズム クラスタ内のデータの平均値を新たなクラスタの中心点にする →クラスタの中心点が変化しなくなった ⇒ 終了 k-means法でクラスタリングを行う手続きのイメージ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
  35. 35. takemikami’s note – http://takemikami.com/ 推計人口/面積で都道府県をクラスタリング 〜データの特徴 35Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 例で用いるデータの特徴を示します R > ( x <- read.csv(“都道府県人口面積.csv", header=T, row.names="都道府県") ) R > head(x) 推計人口 面積 北海道 5400025 78421.17 青森県 1321863 9645.40 岩手県 1284384 15275.01 宮城県 2327993 7282.14 秋田県 1037060 11637.54 山形県 1130659 9323.15 R > summary(x) 推計人口 面積 Min. : 574022 Min. : 1877 1st Qu.: 1122316 1st Qu.: 4167 Median : 1668273 Median : 6097 Mean : 2703885 Mean : 7936 3rd Qu.: 2723634 3rd Qu.: 8090 Max. :13378584 Max. :78421 都道府県の「推計人口」「面積」を 説明変数として、 クラスタリングを行う例を示します
  36. 36. takemikami’s note – http://takemikami.com/ 推計人口/面積で都道府県をクラスタリング 〜データの特徴 36Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 例で用いるデータの特徴を示します R > plot(x$推計人口,x$面積) R > text(x$推計人口,x$面積,labels=rownames(x)) ←x$推計人口
  37. 37. takemikami’s note – http://takemikami.com/ 推計人口/面積で都道府県をクラスタリング 〜階層的手法で 37Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 ウォード法(階層的手法)でクラスタリングを行った結果をデンドログラムで示す R > y <- scale(x)[,] R > plot(hclust(dist(y), method="ward.D")) dist(y) hclust(*,”ward.D”)
  38. 38. takemikami’s note – http://takemikami.com/ 推計人口/面積で都道府県をクラスタリング 〜k-means法で 38Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 k-means法でクラスタリングを行った結果をプロット図で示す R > y_cluster = kmeans(y, 3) R > plot(x=y, col=y_cluster$cluster, pch=y_cluster$cluster) 推計人口
  39. 39. takemikami’s note – http://takemikami.com/ 推計人口/面積で都道府県をクラスタリング 〜k-means法で 39Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 R > text(y[,"推計人口"],y[,"面積"],labels=rownames(y)) k-means法でクラスタリングを行った結果をプロット図で示す 推計人口
  40. 40. takemikami’s note – http://takemikami.com/ ユークリッド距離 コサイン距離 式 式 (2変数 の時) 説明 データ間の直線距離 データをベクトルで表現した時の 角度の近さ ※一部の変数の大きさの偏りに影響を受けない 実際に計算してみる 〜距離について 40Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 k-means法の計算で利用する距離について説明します。 d(Xa − Xb ) = (xaj − xbj )2 j=1 ρ ∑ s(Xa − Xb ) = xaj xbj j=1 ρ ∑ xaj 2 j=1 ρ ∑ xbj 2 j=1 ρ ∑ d(Xa − Xb ) = xa1 − xb1( ) 2 +(xa2 − xb2 )2 s(Xa − Xb ) = xa1xb1 + xa2 xb2 xa1 2 + xa2 2 xb1 2 + xb2 2 三平方の定理
  41. 41. takemikami’s note – http://takemikami.com/ 実際に計算してみる 〜距離について • 東京都-大阪府の距離 • 東京都-鳥取県の距離 • 大阪府-鳥取県の距離 41Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 ユークリッド距離を計算してみます。 都道府県 推計人口 面積 東京都 13,378,584 2190.9 大阪府 8,850,607 1904.99 鳥取県 574,022 3507.05 d = 13,378,584−8,850,607( ) 2 +(2190.9 −1904.99)2 = 4,527,977 d = 13,378,584 − 574,022( ) 2 +(2190.9 −3507.05)2 =12,804,562 d = 8,850,607− 574,022( ) 2 +(1904.99 −3507.05)2 = 8,276,585 近い 遠い
  42. 42. takemikami’s note – http://takemikami.com/ 実際に計算してみる 〜クラスターの中心を計算 42Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 クラスターの中心(重心)の計算方法について説明します。 • 式:重心を とすると、 • 具体的に、計算してみると、 v = (v1,v2,…,vρ ) vj = 1 n xij i=1 n ∑ (Nはクラスタ内のデータ数) 都道府県 推計人口 面積 東京都 13,378,584 2190.9 大阪府 8,850,607 1904.99 神奈川県 9,098,984 2415.81 v = ( 13,378,584+8,850,607+9,098,984 3 2190.9+1904.99+2415.81 3 ) = ( 10,442,725 2,170.56 ) 東京・大阪・神奈川 の重心
  43. 43. takemikami’s note – http://takemikami.com/ • 東京都-(東京・大阪・神奈川の重心)の距離 • 大阪府-(東京・大阪・神奈川の重心)の距離 • 鳥取県-(東京・大阪・神奈川の重心)の距離 実際に計算してみる 〜クラスターの中心を計算 43Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 クラスターの中心からのユークリッド距離を計算してみます。 ( 10,442,725 2,170.56 ) 東京・大阪・神奈川 の重心 都道府県 推計人口 面積 東京都 13,378,584 2190.9 大阪府 8,850,607 1904.99 鳥取県 574,022 3507.05 d = 13,378,584−10,442,725( ) 2 +(2190.9 − 2170.56.99)2 = 2,935,859 d = 8,850,607−10,442,725( ) 2 +(1904.99 − 2170.56)2 =1,592,118 d = 574,022 −10,442,725( ) 2 +(3507.05− 2170.56)2 = 9,868,703 遠い
  44. 44. takemikami’s note – http://takemikami.com/ 推計人口/面積で都道府県をクラスタリング 〜考察(ウォード法) 44Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 ウォード法(階層的手法)のデンドログラムから考察してみます とても広 い? 人口が多い?人口多め?人口少なめ? 階層的手法では、 デンドログラムを見ながら、 目的にあったクラスタ数・クラスタの分け方を検討できる
  45. 45. takemikami’s note – http://takemikami.com/ 推計人口/面積で都道府県をクラスタリング 〜考察(ウォード法) 45Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 ウォード法(階層的手法)のデンドログラムから考察してみます しかし、 データ数が多く・複雑になると、 デンドログラムから考察することは難しい 数百件、数百万件のデータだと デンドログラムを見て考察できない たくさんの会員がいるサービスの 個人名などが並んでいると 前スライドのように 対象をイメージして考察できない
  46. 46. takemikami’s note – http://takemikami.com/ 階層的手法と非階層的手法の長所と短所 46Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 階層的手法 非階層的手法 イメージ 長所 系統図を見ながら考察し、後からクラスター数 を決定できる データが多い場合でも比較的速く処理できる 短所 データ数が多いと扱いが難しい 最初にクラスター数を決定する必要がある(クラス ター数を決める基準が必要) クラスタリング手法、非階層的手法と階層的手法の長所と短所を示します。 最適分割を探索 →次のスライドで、非階層的手法の短所を補うような形で考察してみます。
  47. 47. takemikami’s note – http://takemikami.com/ 推計人口/面積で都道府県をクラスタリング 〜考察(k-means法) 47Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 > kmeans(y, 2)$centers 推計人口 面積 1 -0.4262136 -0.09819234 2 1.7995686 0.41458989 > kmeans(y, 3)$centers 推計人口 面積 1 1.9001979 -0.33487358 2 0.9945343 6.41029762 3 -0.4262136 -0.09819234 > kmeans(y, 4)$centers 推計人口 面積 1 0.9945343 6.4102976 2 -0.5929847 -0.2971737 3 -0.2409124 0.1228981 4 1.9001979 -0.3348736 k-means法の結果(クラスタの中心)から考察してみます 2クラスタに分割 1. 人口少ない、広さ平均的 2. 人口多い、広い 3クラスタに分割 1. 人口多い、狭い 2. 人口多い、かなり広い 3. 人口少ない、広さ平均的 4クラスタに分割 1. 人口多い、かなり広い 2. 人口少ない、狭い 3. 人口少ない、広い 4. 人口多い、狭い k-meansでは、各クラスタの中心点から クラスタの特徴を考察するアプローチをとることができる
  48. 48. takemikami’s note – http://takemikami.com/ 推計人口/面積で都道府県をクラスタリング 〜考察(k-means法) 48Copyright (C) 2015 Takeshi Mikami. All rights reserved. k-means法によるクラスタリングの例 > kmeans(y, 2)$centers 新商品購買率 ネット通販利用率 1 -0.4262136 -0.09819234 2 1.7995686 0.41458989 > kmeans(y, 3)$centers 新商品購買率 ネット通販利用率 1 1.9001979 -0.33487358 2 0.9945343 6.41029762 3 -0.4262136 -0.09819234 > kmeans(y, 4)$centers 新商品購買率 ネット通販利用率 1 0.9945343 6.4102976 2 -0.5929847 -0.2971737 3 -0.2409124 0.1228981 4 1.9001979 -0.3348736 k-means法の結果から考察してみます 2クラスタに分割 1. 新商品の購買率低 2. 新商品の購買率高、ネット通販利用率高 3クラスタに分割 1. 新商品の購買率高、ネット通販利用率低 2. 新商品の購買率高、ネット通販利用率極めて高 3. 新商品の購買率低 4クラスタに分割 1. 新商品の購買率高、ネット通販利用率極めて高 2. 新商品の購買率低、ネット通販利用率低 3. 新商品の購買率低、ネット通販利用率高 4. 新商品の購買率高、ネット通販利用率低 例えば、次(データ数が多そうな例)のように読み替えたとして、 都道府県→顧客、推計人口→新商品購買率、面積→ネット通販利用率 以下のようにクラスタ数を変化させながら考察することもできる
  49. 49. takemikami’s note – http://takemikami.com/ 参考文献でのクラスタリングの応用例の紹介 • 画像ファイルの減色処理(代表色の抽出) – 画像ファイルに含まれる色をRGBの3値で表す – 各色をデータとしてクラスタリング – 各クラスタに属する色を、各クラスタの中心点の色に置き換える ※中井悦司「ITエンジニアのための機械学習理論入門」の応用例 • Web広告のクリック数によるクラスタリング – Web広告のクリック数によってユーザをクラスタリング – 各クラスタのユーザが反応したキャンペーンの違いを比較分析 ※比戸将平・馬場雪乃・里洋平・戸嶋龍哉・得居誠也・福島真太朗・加藤公 一・関喜史・阿部厳・熊崎宏樹「データサイエンティスト養成読本 機械学習入 門編」の応用例 49Copyright (C) 2015 Takeshi Mikami. All rights reserved. クラスタリングの活用シーン 参考文献に掲載されていたクラスタリングの応用例を紹介します
  50. 50. takemikami’s note – http://takemikami.com/ まとめ • クラスタリングとは、 「与えられたデータ複数のグループに分ける」 ための機械学習の手法 • k-means法とは、 「決められたクラスタ数でデータを分割し、 最適分割となる分割方法を探索する手法」 • クラスタの中心点から、 分割されたクラスタの特徴を考察できる。 50Copyright (C) 2015 Takeshi Mikami. All rights reserved. 本セッションのまとめを示します。
  51. 51. takemikami’s note – http://takemikami.com/ 参考文献リスト • 機械学習 – 中井悦司 「ITエンジニアのための機械学習理論入門」 技術評論社 2015 – 比戸将平・馬場雪乃・里洋平・戸嶋龍哉・得居誠也・福島真太朗・加藤公一・関喜史・阿部厳・ 熊崎宏樹 「データサイエンティスト養成読本 機械学習入門編」 技術評論社 2015 – 脇森浩志・杉山雅和・羽生貴史 「クラウドではじめる機械学習 〜Azure MLでらくらく体験」 リックテレコム 2015 • 多変量解析 – 兼子毅 「Rで学ぶ多変量解析」 日科技連出版社 2011 – 宮本定明 「クラスター分析入門 -ファジィクラスタリングの理論と応用」 森北出版 2010 – 朝野煕彦 「入門 多変量解析の実際」 講談社 1996 51Copyright (C) 2015 Takeshi Mikami. All rights reserved. 付録 本資料作成にあたって参考にした文献リストです。

×