SlideShare une entreprise Scribd logo
1  sur  7
Télécharger pour lire hors ligne
クラスタ分析における
クラスタ数の決め方
@bob3bob3
Tokyo.R #60
クラスタ分析におけるクラスタ数の決め方
● クラスタ分析を行う際、クラスタ数をいくつにするべきかという
のは非常に悩ましい問題。
● 目的や分野によっても考え方が異なるでしょう。
● 原則として、分析者が意思を持って決めるべき、というのが結
論ではある。
● ただ、それを支援する、より適切と思われるクラスタ数を示唆
してくれる指標(cluster index)がいくつかRで提供されている。
パッケージと関数
● 今回は3つのパッケージと関数をご紹介。
○ {cclust} パッケージの clusterIndex()
○ {vegan} パッケージの cascadeKM()
○ {clusterSim} パッケージの cluster.Sim()
{cclust}パッケージのclustIndex()
● clustIndex() は cclust() でクラスタリングした結果に対して指標値を返す。
● 15種の指標を返すが、calinski(疑似F統計量)がおすすめ。
library(cclust)
DAT <- as.matrix(iris[,-5])
MAX <- 10
res <- data.frame(matrix(0,MAX,15))
for (i in 2:MAX){
clust <- cclust(DAT, i)
temp <- clustIndex(clust, DAT)
if(i==2) colnames(res) <-
names(temp)
res[i,] <- temp
}
plot(res$calinski, type="b")
{vegan} パッケージの cascadeKM()
● cascadeKM() は calinski に基づいて最適と考えられるクラスタリング結果を返す。
library(vegan)
# 試行するクラスタ数の最小数と最大数を与える
# デフォルトは calinski だが ssi も使える
res <- cascadeKM(iris[,-5], 2, 10)
best <- plot(res)
best$x[,best$best.grps]
{clusterSim} パッケージの cluster.Sim()
● cluster.Sim()は複数の標準化手法、距離、クラスタリング手法を組み合わせて最
適なクラスタリングを探索する。引数の指定が独特なのでヘルプからたどれる
clusterSim_details.pdf を見ながら設定すること。
library(clusterSim)
cluster.Sim(iris[,-5], p=1,
min=2, max=10, "G1",
outputHtml="results.iris")
# これで3,312通りのクラスタリングが試される。
# 非力なマシンでは非常に時間がかかるので注意。
最後に
● クラスタの数は分析者が意思を持って決めるべきという結論
は変わらないのですが、これらの指標を使うことで検討にかか
る負担を大きく減らし、考察に時間を使うことができます。
● また、GIGOなのは変わらないので、これらの指標を使っても
元データがダメだとどうにもなりません。本当の肝はどんな
データをクラスタリングに利用するかという部分ですが、その
話はまたこんど。

Contenu connexe

Tendances

状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38
horihorio
 
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
. .
 
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)
Keiku322
 
続わかりやすいパターン認識11章(11.1 - 11.4)
続わかりやすいパターン認識11章(11.1 - 11.4)続わかりやすいパターン認識11章(11.1 - 11.4)
続わかりやすいパターン認識11章(11.1 - 11.4)
Nagi Teramo
 

Tendances (20)

MCMCによるベイズ因子分析法について
MCMCによるベイズ因子分析法についてMCMCによるベイズ因子分析法について
MCMCによるベイズ因子分析法について
 
状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38
 
Stan超初心者入門
Stan超初心者入門Stan超初心者入門
Stan超初心者入門
 
なぜ統計学がビジネスの 意思決定において大事なのか?
なぜ統計学がビジネスの 意思決定において大事なのか?なぜ統計学がビジネスの 意思決定において大事なのか?
なぜ統計学がビジネスの 意思決定において大事なのか?
 
Prophet入門【Python編】Facebookの時系列予測ツール
Prophet入門【Python編】Facebookの時系列予測ツールProphet入門【Python編】Facebookの時系列予測ツール
Prophet入門【Python編】Facebookの時系列予測ツール
 
階層ベイズとWAIC
階層ベイズとWAIC階層ベイズとWAIC
階層ベイズとWAIC
 
Rによる高速処理 まだfor使ってるの?
Rによる高速処理 まだfor使ってるの?Rによる高速処理 まだfor使ってるの?
Rによる高速処理 まだfor使ってるの?
 
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
MCMCサンプルの使い方 ~見る・決める・探す・発生させる~
 
Word Tour: One-dimensional Word Embeddings via the Traveling Salesman Problem...
Word Tour: One-dimensional Word Embeddings via the Traveling Salesman Problem...Word Tour: One-dimensional Word Embeddings via the Traveling Salesman Problem...
Word Tour: One-dimensional Word Embeddings via the Traveling Salesman Problem...
 
社会心理学者のための時系列分析入門_小森
社会心理学者のための時系列分析入門_小森社会心理学者のための時系列分析入門_小森
社会心理学者のための時系列分析入門_小森
 
Probabilistic Graphical Models 輪読会 #1
Probabilistic Graphical Models 輪読会 #1Probabilistic Graphical Models 輪読会 #1
Probabilistic Graphical Models 輪読会 #1
 
Rで学ぶ観察データでの因果推定
Rで学ぶ観察データでの因果推定Rで学ぶ観察データでの因果推定
Rで学ぶ観察データでの因果推定
 
計量時系列分析の立場からビジネスの現場のデータを見てみよう - 30th Tokyo Webmining
計量時系列分析の立場からビジネスの現場のデータを見てみよう - 30th Tokyo Webmining計量時系列分析の立場からビジネスの現場のデータを見てみよう - 30th Tokyo Webmining
計量時系列分析の立場からビジネスの現場のデータを見てみよう - 30th Tokyo Webmining
 
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
 
トピックモデルの基礎と応用
トピックモデルの基礎と応用トピックモデルの基礎と応用
トピックモデルの基礎と応用
 
Rで因子分析 商用ソフトで実行できない因子分析のあれこれ
Rで因子分析 商用ソフトで実行できない因子分析のあれこれRで因子分析 商用ソフトで実行できない因子分析のあれこれ
Rで因子分析 商用ソフトで実行できない因子分析のあれこれ
 
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)
 
基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法
基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法
基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法
 
「R言語による Random Forest 徹底入門 -集団学習による分類・予測-」 - #TokyoR #11
「R言語による Random Forest 徹底入門 -集団学習による分類・予測-」 - #TokyoR  #11「R言語による Random Forest 徹底入門 -集団学習による分類・予測-」 - #TokyoR  #11
「R言語による Random Forest 徹底入門 -集団学習による分類・予測-」 - #TokyoR #11
 
続わかりやすいパターン認識11章(11.1 - 11.4)
続わかりやすいパターン認識11章(11.1 - 11.4)続わかりやすいパターン認識11章(11.1 - 11.4)
続わかりやすいパターン認識11章(11.1 - 11.4)
 

En vedette (6)

距離と分類の話
距離と分類の話距離と分類の話
距離と分類の話
 
Tokyo r7 sem_20100724
Tokyo r7 sem_20100724Tokyo r7 sem_20100724
Tokyo r7 sem_20100724
 
tokyo webmining3 2010.04.17.
tokyo webmining3 2010.04.17.tokyo webmining3 2010.04.17.
tokyo webmining3 2010.04.17.
 
Tokyo r6 sem3
Tokyo r6 sem3Tokyo r6 sem3
Tokyo r6 sem3
 
Tokyo webmining5
Tokyo webmining5Tokyo webmining5
Tokyo webmining5
 
時系列データ分析とPython
時系列データ分析とPython時系列データ分析とPython
時系列データ分析とPython
 

Plus de osamu morimoto (6)

Tokyo.R #76 lavaan plot
Tokyo.R #76 lavaan plotTokyo.R #76 lavaan plot
Tokyo.R #76 lavaan plot
 
コサインクラスタリング
コサインクラスタリングコサインクラスタリング
コサインクラスタリング
 
Rでコンジョイント分析
Rでコンジョイント分析Rでコンジョイント分析
Rでコンジョイント分析
 
Tokyo.R #22 Association Rules
Tokyo.R #22 Association RulesTokyo.R #22 Association Rules
Tokyo.R #22 Association Rules
 
Tokyo r 11_self_organizing_map
Tokyo r 11_self_organizing_mapTokyo r 11_self_organizing_map
Tokyo r 11_self_organizing_map
 
Tokyo.R8 brand positioning 2010.08.28.
Tokyo.R8 brand positioning 2010.08.28.Tokyo.R8 brand positioning 2010.08.28.
Tokyo.R8 brand positioning 2010.08.28.
 

クラスタ数の決め方(Tokyo.r#60)