Python scikit-learn DBSCANでクラスタリングする

DBSCANとは DBSCANはクラスタに属さないデータポイントも判別できるアルゴリズム。 各データポイントは距離esp内にmin_samplesの他データポイントがあるか確認し、存在する場合は範囲内のデータポイントをクラスタ化する。 距離esp内のデータポイントがmin_s…

Python scikit-learn 凝集型クラスタリングを使用する

凝集型クラスタリングとは データポイントを単クラスタと仮設定し、最も似たクラスタ同士を指定の数のクラスタ数になるまで集めていく。 また、クラスタの結合は少ない数のクラスタ同士で結合していこうとする。 "最も似た"のアルゴリズムは以下の3種類があ…

Python scikit-learn k-meansでクラスタリングする

k-means クラスタリングとは 指定したクラスタの数の重心点を配置し、最も近いデータポイントに対して1次クラスタ分けを行う(Assign Point(1)) 各クラスタごとの重心点をクラスタの重心に合うよう移動させていく(Recompute center(1)) 重心点を移動させたこ…

Python scikit-learnでt-SNE 多様体学習を可視化する

t-SNE 多様体学習 高次元データの各データポイントの類似度を距離として計算し、2次元(または3次元)空間に配置したランダムな点に距離を元にして配置していく。 2次元または多くても3次元に圧縮するのが一般的らしい。また、学習モデルを別の行列に対してtra…

Python scikit-learnでNMF分解を行う

非負値行列因子分解(NMF)とは、PCAと違って、第2成分以降が直交するベクトルではなく、すべてのベクトルが正の方向指す分析ベクトルとなる。 特徴量ごとにまとまりのあるデータに対しての特徴が掴みやすくなる。らしい。 元となる行列に近似する行列Yとなる…

Python scikit-learnで主成分分析を行う

主成分分析とは、多次元の特徴量(説明変数)を統合して、次元削減を行う手法。総合的な特徴量を表す第一成分とそれに直交する第二成分以降からなる。統合する特徴量は元となる特徴量の相関行列から計算する。 左上の散布図に対して、主成分分析を行った時、右…

Python scikit-learn preprocessingでデータセットのスケール処理を行う

sklearn.preprocessingの各メソッドを利用してデータセットのスケール処理を行えます。 スケール処理とは、標準化のようにデータ分布の性質を変えずにデータの値の増減を行うこと。 各メソッドは以下の通り。 StandardScaler 標準化、平均値を0、分散を1にす…