コンテンツにスキップ
Wikipedia

k平均法

出典: フリー百科事典『ウィキペディア(Wikipedia)』
(C-平均法から転送)
この記事は英語版の対応するページを翻訳することにより充実させることができます。(2024年5月)
翻訳前に重要な指示を読むには右にある[表示]をクリックしてください。
  • 英語版記事を日本語へ機械翻訳したバージョン(Google翻訳)。
  • 万が一翻訳の手がかりとして機械翻訳を用いた場合、翻訳者は必ず翻訳元原文を参照して機械翻訳の誤りを訂正し、正確な翻訳にしなければなりません。これが成されていない場合、記事は削除の方針G-3に基づき、削除される可能性があります。
  • 信頼性が低いまたは低品質な文章を翻訳しないでください。もし可能ならば、文章を他言語版記事に示された文献で正しいかどうかを確認してください。
  • 履歴継承を行うため、要約欄に翻訳元となった記事のページ名・版について記述する必要があります。記述方法については、Wikipedia:翻訳のガイドライン#要約欄への記入を参照ください。
  • 翻訳後、{{翻訳告知|en|k-means clustering|...}}ノートに追加することもできます。
  • Wikipedia:翻訳のガイドラインに、より詳細な翻訳の手順・指針についての説明があります。
k平均法の収束
機械学習および
データマイニング

カテゴリ Category:機械学習

カテゴリ Category:データマイニング

k平均法(kへいきんほう、: k-means clustering)は、非階層型クラスタリングアルゴリズム。クラスタの平均を用い、与えられたクラスタ数k個に分類することから、MacQueen がこのように命名した。k-平均法(k-means)、c-平均法(c-means)とも呼ばれる。

何度か再発見されており、まず、Hugo Steinhus1957年に発表し[1] 、Stuart Lloydが1957年に考案し、E.W.Forgyが1965年に発表し[2] 、James MacQueenが1967年に発表しk-meansと命名した[3]

数式で表現すると、下記最適化問題を解くアルゴリズム[4] 。本アルゴリズムでは最小値ではなく初期値依存の極小値に収束する。

a r g m i n V 1 , , V k i = 1 n min j x i V j 2 {\displaystyle \operatorname {arg,円min} _{V_{1},\dotsc ,V_{k}}\sum _{i=1}^{n}\min _{j}\left\|x_{i}-V_{j}\right\|^{2}} {\displaystyle \operatorname {arg,円min} _{V_{1},\dotsc ,V_{k}}\sum _{i=1}^{n}\min _{j}\left\|x_{i}-V_{j}\right\|^{2}}

単純なアルゴリズムであり、広く用いられている。分類をファジィ化したファジィc-平均法エントロピー法をはじめ、データ構造を発見するさまざまな応用手法が提案されている。上記の最適化問題はNP困難であるが、k-平均法は局所解を求める効率的なヒューリスティックである。k-平均法は混合正規分布に対するEMアルゴリズムの特殊な場合である。

アルゴリズム

[編集 ]

k-平均法は、一般には以下のような流れで実装される[5] [6] 。データの数を n {\displaystyle n} {\displaystyle n}、クラスタの数を k {\displaystyle k} {\displaystyle k} としておく。

  1. 各データ x i ( i = 1 , , n ) {\displaystyle x_{i}(i=1,\dotsc ,n)} {\displaystyle x_{i}(i=1,\dotsc ,n)} に対してランダムにクラスタを割り振る。
  2. 割り振ったデータをもとに各クラスタの中心 V j ( j = 1 , , k ) {\displaystyle V_{j}(j=1,\dotsc ,k)} {\displaystyle V_{j}(j=1,\dotsc ,k)} を計算する。計算は通常割り当てられたデータの各要素の算術平均が使用されるが、必須ではない。
  3. x i {\displaystyle x_{i}} {\displaystyle x_{i}} と各 V j {\displaystyle V_{j}} {\displaystyle V_{j}} との距離を求め、 x i {\displaystyle x_{i}} {\displaystyle x_{i}} を最も近い中心のクラスタに割り当て直す。
  4. 上記の処理で全ての x i {\displaystyle x_{i}} {\displaystyle x_{i}} のクラスタの割り当てが変化しなかった場合、あるいは変化量が事前に設定した一定の閾値を下回った場合に、収束したと判断して処理を終了する。そうでない場合は新しく割り振られたクラスタから V j {\displaystyle V_{j}} {\displaystyle V_{j}} を再計算して上記の処理を繰り返す。

結果は、最初のクラスタのランダムな割り振りに大きく依存することが知られており、1回の結果で最良のものが得られるとは限らない。そのため、何度か繰り返して行って最良の結果を選択する手法や、k-means++法のように最初のクラスタ中心点の振り方を工夫する手法などが使用されることがある。

なお、このアルゴリズムではクラスタ数 k は最初に所与のものとして定めるため、最適なクラスタ数を選ぶには他の計算等による考察を用いる必要がある。

脚注

[編集 ]
  1. ^ Steinhaus, H. (1957). "Sur la division des corps matériels en parties" (French). Bull. Acad. Polon. Sci. 4 (12): 801–804. MR 0090073. Zbl 0079.16403. 
  2. ^ E.W. Forgy (1965). "Cluster analysis of multivariate data: efficiency versus interpretability of classifications". Biometrics 21: 768–769. 
  3. ^ MacQueen, J. B. (1967). Some Methods for classification and Analysis of Multivariate Observations. Proceedings of 5th Berkeley Symposium on Mathematical Statistics and Probability. Vol. 1. University of California Press. pp. 281–297. MR 0214227. Zbl 0214.46201 . 2009年4月7日閲覧
  4. ^ Hastie, Trevor、Robert, Tibshirani、Jerome, Friedman『統計的学習の基礎 ―データマイニング・推論・予測―』共立出版、2014年6月25日。ISBN 978-4320123625 
  5. ^ "クラスタリング (クラスター分析)". 2013年8月7日閲覧。
  6. ^ "クラスタ生成の統計アルゴリズム 〜 階層的手法、k-means法". 2013年8月7日閲覧。

参考文献

[編集 ]
  • 宮本定明 『クラスター分析入門 ファジィクラスタリングの理論と応用』 森北出版株式会社、1999年、ISBN 4-627-91651-5

関連項目

[編集 ]

AltStyle によって変換されたページ (->オリジナル) /