k-means,k表示聚类的目标类别数(如果不知道,就是超参数)
一般应用中是先进行k-means聚类,然后再进行分类预测。
demo.py(k-means聚类,通过轮廓系数进行评估):
import pandas as pd
from sklearn.decomposition import PCA
from sklearn.cluster import KMeans
from sklearn.metrics import silhouette_score
# K-means 聚类 根据用户商品订单数据进行聚类。预测用户对某商品的喜好程度。
data = pd.read_csv("./demo.csv")
# 特征降维 PCA主成分分析
pca = PCA(n_components=0.9) # 保留90%的信息
data = pca.fit_transform(data)
print(data.shape) # (500, 27) 500个样本,降维到27个特征