scikit-learn 实战之非监督学习
一、实验介绍
1.1 实验内容
非监督学习(英语:Unsupervised learning)是机器学习中十分重要的一个分支。这是实验课程的第一章节,将带你了解什么是非监督学习?并学会用 K-Means 算法完成一个聚类实验。
1.2 实验知识点
- 非监督学习概念
- K-Means 聚类
1.3 实验环境
- python2.7
- Xfce 终端
- ipython 终端
1.4 数据与代码获取
你可以通过下面命令下载代码与数据,作为参照对比进行学习。
$ wget http://labfile.oss.aliyuncs.com/courses/880/k_means_cluster.py
$ wget http://labfile.oss.aliyuncs.com/courses/880/cluster_data.csv
二、什么是非监督学习?
什么是非监督学习?笼统来讲,它和监督学习是一个相对的概念。在监督学习的过程中,我们需要对训练数据打上标签,这是必不可少的一步。而非监督学习中,就不再不需要提前对数据进行人工标记。
举个例子,比如我们现在有一堆动物的照片。在监督学习中,我们需要提前对每张照片代表的动物进行标记。这一张是狗,那一张是猫,然后再进行训练。最后,模型对于新输入的照片,就能分清楚动物的类别。
当进行非监督学习时,就不需要提前对照片进行标记了。我们只需要将所有的训练样本照片「喂」给算法即可。注意,这个时候和监督学习有一些不同,非监督学习只能识别出训练样本里包含了几种类别的动物,而并不能直接告诉你这只是猫,那一只是狗。但是,这里的类别数量一般都不会太大,你可以手动对类别进行