当你打开邮箱时,如今已经很少看到垃圾邮件了,因为它们会被自动过滤到单独的文件夹中。如果你收到一份用陌生语言写的文档,只需点击一下就可以翻译成你能理解的语言。你的银行甚至会在你意识到信用卡被盗之前,根据可疑活动自动冻结你的信用卡。你喜欢的流媒体服务总是能推荐你喜欢的电影,而你从喜欢的商店收到的优惠也总是恰好是你需要的。
这一切都要归功于机器学习(Machine Learning, ML),它是当前蓬勃发展的人工智能(Artificial Intelligence, AI) 的一个子领域。机器学习能够解决的问题范围非常广泛,我们这里只会简要介绍其中的一部分。
机器学习在现实生活中不断帮助我们——医生正在部分自动化病人的诊断过程;还有很多应用通过光学字符识别(OCR)和文本转语音系统帮助有视觉障碍等残疾的用户。
机器学习算法也是许多安全系统的核心,例如信用卡欺诈检测,这属于更广泛的异常检测问题。人脸识别被应用在各种场景中,从自动执法系统到手机屏幕解锁。我们甚至可以根据历史数据来预测未来,例如天气预报、汇率预测或商品需求预测,这些都属于时间序列预测。
本主题将对机器学习的世界做一个简要介绍。
什么是机器学习?
你可能经常听到“机器学习”这个词,但它到底是什么意思呢?
机器学习的目标是创建能够从过去经验中学习,并将学到的知识应用到新情况中的算法。
我们来看一个例子。
假设我们想创建一个基于机器学习的垃圾邮件过滤系统。为此,我们需要收集一些过去收到的邮件,其中既包括正常邮件,也包括被标记为垃圾邮件的邮件,并把这些邮件连同对应的标签一起输入给算法。
算法会尝试学习如何区分这两类邮件。当学习过程完成后,我们的模型就能够分析新的邮件,并将垃圾邮件过滤出来。
在机器学习中,模型(model) 指的是算法从数据中学习得到的结果,也就是算法运行在数据上的输出。
模型和机器学习算法的区别是:
- 算法:只描述了处理问题的步骤和方法
- 模型:包含了数据以及这些方法,并能够用来进行预测
关键的一点是:
我们并不会告诉算法垃圾邮件和正常邮件有什么具体区别,而只是给它展示一些历史示例,让算法自己找出规律。
是不是很神奇?
还需要注意的是,不同用户对于垃圾邮件的定义可能不同。例如,一封关于机器学习夏令营的邮件对你来说可能很有价值,但对于一个研究中世纪音乐的人来说可能就是垃圾邮件。
因此,如果把同一个机器学习算法应用在不同的数据集上(例如你的邮箱和你朋友的邮箱),最终得到的垃圾邮件过滤器也会完全不同。
机器学习可以用于解决很多不同的问题。
大体来说,机器学习主要有三种设置:
- 监督学习(Supervised Learning)
- 无监督学习(Unsupervised Learning)
- 强化学习(Reinforcement Learning)
需要注意的是,这种分类并不是绝对的,也存在一些混合方法。
监督学习(Supervised Learning)
在监督学习中,我们的目标是:
在带有正确答案的数据上训练模型,然后预测新的数据结果。
这种带有正确答案的数据被称为带标签数据(labeled data)。
模型的目标是学习数据与标签之间的关系,并在给定输入时预测正确的输出。
如果标签只有少数几个离散值,这类问题称为分类问题(classification)。
例如:
- 垃圾邮件检测
- 类别:垃圾邮件 / 正常邮件
再举一个例子:
我们想训练一个模型识别手写数字。
每张图片必须属于 0 到 9 的 10 个类别之一。
另一个分类例子是文本分类。
例如一篇文章可能属于以下主题:
- 政治
- 经济
- 体育
- 文化
- 爱好
一篇文章可能同时属于多个类别,例如:
- 政治 + 经济
- 体育 + 爱好
模型的任务就是预测每篇文章属于哪些主题。
如果标签是数值型数据,问题就被称为回归问题(regression)。
例如:
- 根据教育、职业和背景预测一个人的年收入
- 根据房屋位置和面积预测房价
无监督学习(Unsupervised Learning)
另一种机器学习方式是无监督学习。
在这种情况下,输入数据没有标签,也就是说我们不知道正确答案是什么。
一个典型的无监督学习算法是聚类(clustering)。
它的目标是根据数据之间的相似度,将数据分成多个簇(cluster)。
例如:
市场研究
企业可以根据消费者的购买行为,将消费者分成不同的群体。
生物信息学
科学家可以通过聚类分析找到具有相似功能的基因。
无监督学习还经常用于解决异常检测(anomaly detection) 问题。
目标是自动检测明显不同于正常数据的异常事件。
异常检测广泛应用于:
- 银行欺诈检测
- 航空安全系统
- 健康监测系统
监督学习和无监督学习的主要区别在于:
- 监督学习:使用带标签的数据,模型知道正确答案
- 无监督学习:没有标签,算法必须自己发现数据中的结构
强化学习(Reinforcement Learning)
在强化学习中,我们有一个智能体(agent) 与环境进行交互。
智能体通过不断试错(trial and error) 来找到最优策略。
问题通常被描述为:
通过采取不同的行动来最大化奖励(reward)。
与监督学习不同:
- 没有现成的数据告诉我们最佳策略
- 没有“正确标签”
强化学习的现实应用包括:
金融领域
仅靠历史数据可能不足以决定何时买入、卖出或持有股票,而强化学习可以学习最大化收益的策略。
最著名的强化学习应用之一是 AlphaGo。
AlphaGo 结合了:
- 监督学习
- 强化学习
它在 2015 年首次击败职业围棋选手。
总结
机器学习算法可以从已有数据中学习,并将学到的知识应用到未知数据中。
- 监督学习:从数据中学习预测目标变量
- 无监督学习:探索数据中的隐藏结构
- 强化学习:通过试错寻找最优策略
部分信息可能已经过时









