机器学习方法很多,但刚入门时可以先问一个非常实用的问题:训练数据里有没有标准答案?
这个问题把常见任务分成了监督学习和无监督学习。
监督学习:拿着答案练习
监督学习使用带标签的数据训练模型。
例如垃圾短信识别的数据可能长这样:
| 短信内容 | 标签 |
|---|---|
| 您的验证码是 3812 | 正常短信 |
| 恭喜中奖,点击链接领取 | 垃圾短信 |
短信内容是输入,标签是正确答案。模型先作出预测,再把预测和答案比较,根据错误调整参数。
常见监督学习任务包括:
- 分类:预测类别;
- 回归:预测连续数值;
- 图像识别、文本分类和价格预测。
无监督学习:没有答案,自己找结构
无监督学习的数据没有预先给出的标签。模型要做的是发现样本之间的结构、相似性或分布规律。
例如商店拥有大量用户消费记录,却没有给用户分类。聚类算法可以根据消费习惯,把相似用户分到同一组。
常见无监督学习任务包括:
- 聚类;
- 降维;
- 异常检测;
- 数据分布探索。
两者不是谁更高级
它们解决的是不同问题。
有明确答案并且希望预测新样本时,通常考虑监督学习;没有标签,只想探索数据结构时,可以考虑无监督学习。
现实项目还会遇到半监督学习、自监督学习和强化学习。初学阶段不必一次记完,先掌握“有没有人工提供的答案”这条主线。
最容易混淆的地方
“监督”不是有人盯着电脑训练,而是数据中存在用于监督模型学习的目标值。
无监督学习也不是随便学习。它仍然有明确的算法目标,例如让同一组里的样本更相似、不同组之间差异更大。
这一课先记住什么
- 有标签、需要学习输入到答案的映射:监督学习。
- 没有标签、需要发现数据内部结构:无监督学习。
下一课继续拆分监督学习:分类和回归到底有什么不同。
留言讨论