机器学习基础
本章涵盖了以下主题:
- 分类和回归之外的其他类型的问题;
- 评估问题,理解过拟合、欠拟合,以及解决这些问题的技巧;
- 为深度学习准备数据。
请记住,在本章中讨论的大多数技术都是机器学习和深度学习通用的,一部分用于解决过拟合问题的技术(如dropout)除外。
4.1 三类机器学习问题
在之前的所有例子中,尝试解决的是分类(预测猫或狗)或回归(预测用户在平台上花费的平均时间)问题。所有这些都是有监督学习的例子,目的是找到训练样例和目标之间的映射关系,并用来预测未知数据。
有监督学习只是机器学习的一部分,机器学习也有其他不同的部分。以下是3种不同类型的机器学习:
- 有监督学习;
- 无监督学习;
- 强化学习。
下面详细讲解各种算法。
4.1.1 有监督学习
在深度学习和机器学习领域中,大多数成功用例都属于有监督学习。本书中所涵盖的大多数例子也都是有监督学习的一部分。来看看有监督学习的一些常见的例子。
- 分类问题:狗和猫的分类。
- 回归问题:预测股票价格、板球比赛成绩等。
- 图像分割:进行像素级分类。对于自动汽车驾驶来说,从摄像机拍摄的照片中,识别出每个像素属于什么物体是很重要的。这些像素可以是汽车、行人、树、公共汽车等。
- 语音识别:OK Google、Alexa和Siri都是语音识别的例子。
- 语言翻译:从一种语言翻译成另一种语言。
4.1.2 无监督学习
在没有标签数据的情况时,可以通过可视化和压缩来帮助无监督学习技术理解数据。两种常用的无监督学习技术是:
- 聚类;
- 降维。
聚类有助于将所有相似的数据点组合在一起。降维有助于减少维数,从而可视化高维数据,并找到任何隐藏的模式。
4.1.3 强化学习
强化学习是最不流行的机器学习范畴。在真实世界中没有发现它的成功用例。然而,近年来有了些改变,来自Google的DeepMind团队成功地构建了基于强化学习的系统,并且在AlphaGo比赛中赢得世界冠军。计算机可以在比赛中击败人类的这种技术上的进展,曾被认为需要花费数十年时间才能实现。然而,使用深度学习和强化学习却可以这么快就达到目标,比任何人所预见的都要快。这些技术已经可以看到早期的成功,但可能需要几年时间才能成为主流。
在本书中,我们将主要关注有监督的技术和一些特定于深度学习的无监督技术,例如用于创建特定风格图片的生成网络:风格迁移(style transfer)和生成对抗网络(generative adversarial network)。
4.2 机器学习术语
前面几章出现了大量的术语,如果大家刚入门机器学习或深度学习领域,这些术语看起来会比较生疏。这里将列出机器学习中常用的多数术语,这些通常也在深度学习文献中使用。
- 样本(sample)或输入(input)或数据点(data point):训练集中特定的实例。我们在上一章中看到的图像分类问题,每个图像都可以被称为样本、输入或数据点。
- 预测(prediction)或输出(output):由算法生成的值称为输出。例如,在先前的例子中,我们的算法对特定图像预测的结果为0,而0是给定的猫的标签,所以数字0就是我们的预测或输出。
- 目标(target)或标签(label):图像实际标注的标签。
- 损失值(loss value)或预测误差(prediction error):预测值与实际值之间的差距。数值越小,准确率越高。
- 类别(classes):给定数据集的一组可能的值或标签。在前一章的例子中有猫和狗两种类别。
- 二分类(binary classification):将输入实例归类为两个互斥类别中的其中一个的分类任务。
- 多类别分类(multi-class classification):将输入实例归类为两个以上的不同类别的分类任务。
- 多标签分类(multi-label classification):一个输入实例可以用多个标签来标记。例如根据提供的食物不同来标记餐馆,如意大利菜、墨西哥菜和印度菜。另一个常见的例子是图片中的对象检测,它使用算法识别出图片中的不同对象。
- 标量回归(scalar regression):每个输入数据点都与一个标量质量(scalar quality)相关联,该标量质量是数值型的。这样的例子有预测房价、股票价格和板球得分等。
- 向量回归(vector regression):算法需要预测不