スペクトラルクラスタリング

Rのパッケージkernlab中のspecc

例題は, expample(specc)
## Cluster the spirals data set. 
data(spirals) #中身は300セット×2次元のデータ
sc <- specc(spirals, centers=2) #2つに分割
sc
centers(sc) #クラスターごとの平均を求める. 行はクラスターに対応, 列は次元に対応. 
size(sc) 
withinss(sc) #評価関数?
plot(spirals, col=sc)
類似度を定義するときに, カーネルで指定してもよい.
ここでdiffusion kernelを使うと面白いかも?

理論的なこと

クラスタリングをグラフ分割の枠組みで解く手法である.
まずは類似度行列Wを事前に求めておく必要があることに注意
このWを求めるときに, カーネル関数を用いることもできる.
または, 単純に相関係数行列を用いる手もありか?
相関係数行列にdiffusion kernelをかませる方法を考えている.
類似度行列の一般的な定義の一つ
W_{i,j}=exp(\frac{-\delta_{i,j}^2}{2\sigma^2})
\sigmaはユークリッド距離
また, 明らかにリンクがないところを0とおいてスパースとすることもできる.
半教師あり学習?

参考

最終更新:2010年04月29日 21:37
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。