k-means法は機械学習の参考書に掲載されているような基本的なクラスタリングのアルゴリズムです。 よく、教師なし学習の代表例としても教科書等で扱われることがあり、またk-meansのアルゴリズム自体が機械学習分野で登場するEMアルゴリズムといったパラメータ学習方法に近しい手法を用いていることもあり、k-meansを学ぶことは機械学習の手法を学ぶ上で非常に重要と言えます。 また実際の課題を解こうとする際に、主成分分析(PCA)で低次元空間に次元変換した上で、k-meansでクラスタリングするなどをすることもあります。 今回は、k-meansのアルゴリズムを勉強することを目的とし、scikit-learn等のライブラリを実装せずにスクラッチでk-meansを実装して学んでいきます。本書の内容は、機械学習の著名な参考書であるPRMLの下巻を参考にしています。本記事を参考にPRMLを読むとより理

