
今,k-means法を使ったクラスタリングプログラムを作っています.
2次元特徴のパタン集合を分類してグラフィカルに表示するものです.
wikipediaによると,k-means法は
(1)各パタンをランダムにN個のクラスタに分類
(2)各クラスタの中心を計算
(3)全パタンについて中心との距離を計算し,一番近いクラスタに割り当て
(4)割り当てに変化がなければ終了,変化があれば(2)へ
のように書いてあり,自分も理解できていたつもりだったのですが,
ステップ(3)の「全パタンについて中心との距離を計算し…」という
部分が作れなくて困っています.
指定ではパタン間距離に「重み付きユークリッド距離」を使えとのこと
だったのですが,自分は2パタン間で重み付きユークリッド距離が
使えるというところが理解できていません.
2次元なので,単純に距離ならばユークリッド距離を使えばいいと
思っていたんですが.
ネットで調べたところ,
・d^2 = Σ wi (xi - yi)^2
という式は見つかったのですが,重み係数wiをどのように設定すれば
いいのか分かりません.
非常に初歩的な質問をしているのだと思いますが,
教えていただけると嬉しいですm(_ _)m
No.1ベストアンサー
- 回答日時:
クラスタリング
提供: フリー百科事典『ウィキペディア(Wikipedia)』
(統計学)データ解析手法の1つ。(中略)この特徴は多くの場合、類似性や、ある定められた距離尺度に基づく近さで示される。
という訳で、「ある定められた距離尺度に基づく近さ」に基づいて、データをクラスターに分けるのがクラスタリングです。
「距離尺度」としては、普通の物理的な意味の距離でも、自分で新たに定義した抽象幾何学的な意味の距離でも、何でも有り得る訳です。今の場合は
>指定ではパタン間距離に「重み付きユークリッド距離」を使えとのこと
なので、「重み付きユークリッド距離」を使えばいい訳です。ところで
>2次元特徴のパタン集合を分類してグラフィカルに表示する
とのことなので、変数 x は2次元平面の横方向、変数 y は縦方向を表すとした方が分かりやすいでしょう。
このとき、j番目のクラスターの重心を Pj ≡(Xj,Yj)とすると、クラスター内の点 p ≡(x,y)と重心 Pj ≡(Xj,Yj)との間の「重み付きユークリッド距離」は、
d(p,Pj)^2 = wx (x - Xj)^2 + wy (y - Yj)^2
となります。両辺を d(p,Pj)^2 で割れば、これは楕円を表す方程式になります。
要するに、「重み付きユークリッド距離」は、普通のユークリッド距離と比較して、縦方向や横方向のデータ相関を考慮に入れてクラスタリングをしてみようとするものであることが分かります。
>重み係数wiをどのように設定すれば
>いいのか分かりません.
ユーザは自分で重み係数wi(≡{wx, wy})をいろいろ変えて、クラスタリング結果がどうなるか見たいので、wi(i = x~y)はユーザ入力できるようにしておけというのが、
>パタン間距離に「重み付きユークリッド距離」を使え
と指定してきた依頼者の意図だと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAで関数をつくる
-
65536は2の何乗なのでしょうか?
-
引き放し法による除算アルゴリ...
-
加速度から変位の変換について
-
モジュラス103の計算とは何でし...
-
バッチファイルでウインドウを...
-
CRC8を教えてください
-
matlabで計算終了
-
変化させるセルが変化しない
-
三菱シーケンサー works2 の日...
-
趣味で「乗換案内」みたいなソ...
-
アドオン利率を実質年率に変換
-
EXCELなどで「返す」という表現
-
構文解析を利用した計算プログ...
-
[ASP]日付と時間の比較
-
階乗のマクロ
-
パソコン
-
VBA入力フォームで労働時間の計...
-
ファイルの開き方
-
あるプログラムのコマンドライ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
VBAで関数をつくる
-
VBAの再計算が反映されない件に...
-
EXCELなどで「返す」という表現
-
matlabで計算終了
-
排他的論理和 BCC(水平パリテ...
-
変化させるセルが変化しない
-
引き放し法による除算アルゴリ...
-
モジュラス103の計算とは何でし...
-
C言語についてです。 再帰を使...
-
スレッド処理からダイアログを...
-
階乗のマクロ
-
Perlで時間の計算
-
エクセルで特定のセルのみを任...
-
傾いた四角形内の範囲の条件式
-
モジュロ
-
VBA入力フォームで労働時間の計...
-
三菱シーケンサー works2 の日...
-
Java 電卓の連続計算
-
パソコン
おすすめ情報