聚类的一个应用就是半监督学习。这在现实案例中,有很多未标记的实例,而很少带标签的实例。可以使用聚类将标签传播到同一集群中的其他实例,比如最接近中心点的一定范围的实例。
1、传统的逻辑回归模型应用在mnist数据集上,使用50个案例精度83.33%,但是这在实际应用中就是只有人工标记的50个实例。
2、那么使用聚类找到最接近中心点的mnist图像,成为代表性图像。kmeans.fit_transform返回距离中心点的距离,相对于降低维度未为50。numpy.argmin给出axis方向最小值的下标。
3、根据X_train[representative_digit_idx]画出这50个代表性的图像。
4、标记这50个代表性图形。
5、再次使用逻辑回归模型,精度达到91.33%
6、将标签传播到统一集群中的所有实例,再次训练发现精度达到92.44%。
7、集群边界附近的实例往往会被错误标记,如果将标签传播到中心点附近的75%的实例,可以得到92.67的精度。
而实际的准确率为95%,使用聚类进行半监督学习达到了92%的准确率。
聚类算法在目前能够收集到的带标签的实例上进行训练,对未标记的实例进行预测。
网友评论