引言
通常采用观测数据或环境交互的形式,机器学习算法会累计更多的经验。
1.1 日常生活中的机器学习
数据集输入–>对样本进行标注–>调整程序算法的参数–>达到最佳性能
- 参数:可以看作旋钮,旋钮的转动可以调整程序的行为
- 模型:任一调整参数后的程序被称为模型
- 模型族:通过操作参数而生成的所有不同程序(输入–输出映射)的集合称为“模型族”
- 学习算法:使用数据集来选择参数的源程序称为学习算法
- 学习:是一个训练模型的过程,用数据训练模型
训练过程:
- 从一个随机初始化参数的模型开始,这个模型基本没有“智能”
- 获取一些数据样本
- 调整参数,使模型在这些样本中表现得更好
- 重复步骤 (2) 和 (4) ,直到模型在任务中的表现令人满意
1.2 机器学习中的关键组件
核心组件
- 可以用来学习的数据(data)
- 如何转换数据的模型(model)
- 一个目标函数(objective function),用来量化模型的有效性
- 调整模型参数以优化目标函数的算法(algorithm)
1.2.1 数据
- 数据集:每个数据集由一个个样本(example, sample)组成;也可以叫它们数据点、数据实例
- 样本:通常每个样本由一组称为**特征(featur)(协变量covariate)**的属性组成
- 标签(目标):机器学习根据属性进行预测,得到的预测值
【例】:
200 X 200 的彩色照片由 200 X 200 X 3 = 120000 个数值组成,其中“3”对应每个空间位置的红、绿、蓝通道的强度。 - 数据的维数:特征向量的长度
正确的输入才会换来正确的输出
1.2.2 模型
深度学习的模型由神经网络错综复杂地交织在一起,包含层层数据转换。
1.2.3 目标函数
我们需要定义对模型的优劣程度的度量,这个度量在大多数情况下是“可优化的”,这被称为目标函数通常定义一个目标函数,并希望优化它到最小值。因为越小越好,所以这些函数被称为“损失函数(loss function \ cost function)”。最常见的损失函数是平方误差(squared error),即预测值与实际值之差的平方。
训练数据集合用于拟合模型参数,测试数据集用于评估拟合的模型。
【过拟合】
模型在训练集上表现良好,但不能推广到训练集。
1.2.4 优化算法
当我们获得了一些数据源及其表示、一个模型和一个合适的损失函数,接下来就需要一种算法,它能够搜索出最佳参数,以最小化损失函数。 深度学习中,大多流行的优化算法通常基于一种基本方法–梯度下降(gradient descent)。 简而言之,在每个步骤中,梯度下降法都会检查每个参数,看看如果仅对该参数进行少量变动,训练集损失会朝哪个方向移动。 然后,它在可以减少损失的方向上优化参数。
1.3 各种机器学习问题
1.3.1 监督学习
监督学习(supervised learning)擅长在“给定输入特征”的情况下预测标签。每个“特征-标签”对都称为一个样本(example)。我们的目标是生成一个模型,能够将任何输入特征映射到标签(即预测)。
【输入一个特征—>给出一个标签】
【例】
- 根据计算机断层扫描(Computed Tomography,CT)肿瘤图像,预测是否为癌症;
- 给出一个英语句子,预测正确的法语翻译;
- 根据本月的财务报告数据,预测下个月股票的价格;
监督学习的学习过程一般可以分为三大步骤:
- 从已知大量数据样本中随机选取一个子集,为每个样本获取真实标签。有时,这些样本已有标签(例如,患者是否在下一年内康复?);有时,这些样本可能需要被人工标记(例如,图像分类)。这些输入和相应的标签一起构成了训练数据集;
- 选择有监督的学习算法,它将训练数据集作为输入,并输出一个“已完成学习的模型”;
- 将之前没有见过的样本特征放到这个“已完成学习的模型”中,使用模型的输出作为相应标签的预测。
1. 回归
判断回归问题的一个很好的经验法则是,任何有关“有多少”的问题很可能就是回归问题。回归是训练一个回归函数来输出一个数值。
2. 分类
关于“哪一个的问题就是分类问题”。分类是训练一个分类器来输出预测的类别。
3. 标注问题
学习预测不相互排斥的类别的问题称为**多标签分类(multi-label classification)。
4. 搜索
学习算法需要输出有序的元素子集。
5.推荐系统
检索得分最高的对象集。
6.序列学习
序列学习需要摄取输入序列或预测输出序列。
- 标记和解析:输入和输出的数量基本上是相同的
- 自动语音识别
- 文本到语音
- 机器翻译
监督学习需要向模型提供巨大数据集:每个样本包含特征和相应的标签值。
1.3.2 无监督学习
如果工作没有十分具体的目标,就需要“自发”地去学习了。 比如,老板可能会给我们一大堆数据,然后要求用它做一些数据科学研究,却没有对结果有要求。 这类数据中不含有“目标”的机器学习问题通常被为无监督学习(unsupervised learning), 本书后面的章节将讨论无监督学习技术。 那么无监督学习可以回答什么样的问题呢?来看看下面的例子。
-
聚类(clustering)问题:没有标签的情况下,我们是否能给数据分类呢?比如,给定一组照片,我们能把它们分成风景照片、狗、婴儿、猫和山峰的照片吗?同样,给定一组用户的网页浏览记录,我们能否将具有相似行为的用户聚类呢?
-
主成分分析(principal component analysis)问题:我们能否找到少量的参数来准确地捕捉数据的线性相关属性?比如,一个球的运动轨迹可以用球的速度、直径和质量来描述。再比如,裁缝们已经开发出了一小部分参数,这些参数相当准确地描述了人体的形状,以适应衣服的需要。另一个例子:在欧几里得空间中是否存在一种(任意结构的)对象的表示,使其符号属性能够很好地匹配?这可以用来描述实体及其关系,例如“罗马” - “意大利” + “法国” = “巴黎”。
-
因果关系(causality)和概率图模型(probabilistic graphical models)问题:我们能否描述观察到的许多数据的根本原因?例如,如果我们有关于房价、污染、犯罪、地理位置、教育和工资的人口统计数据,我们能否简单地根据经验数据发现它们之间的关系?
-
生成对抗性网络(generative adversarial networks):为我们提供一种合成数据的方法,甚至像图像和音频这样复杂的非结构化数据。潜在的统计机制是检查真实和虚假数据是否相同的测试,它是无监督学习的另一个重要而令人兴奋的领域。
1.3.3 与环境互动
1.3.4 强化学习
1.4 起源
高斯发明了最小均方算法。
1.5 深度学习的发展
略
1.6深度学习的成功案例
略
1.7 特点
略
小结
- 机器学习研究计算机系统如何利用经验(通常是数据)来提高特定任务的性能。它结合了统计学、数据挖掘和优化的思想。通常,它是被用作实现人工智能解决方案的一种手段。
- 表示学习作为机器学习的一类,其研究的重点是如何自动找到合适的数据表示方式。深度学习是通过学习多层次的转换来进行的多层次的表示学习。
- 深度学习不仅取代了传统机器学习的浅层模型,而且取代了劳动密集型的特征工程。
- 最近在深度学习方面取得的许多进展,大都是由廉价传感器和互联网规模应用所产生的大量数据,以及(通过GPU)算力的突破来触发的。
- 整个系统优化是获得高性能的关键环节。有效的深度学习框架的开源使得这一点的设计和实现变得非常容易。
练习
略
注意!!!
本博客仅用于本人学习笔记作用,所有资料来源都来自于李沐大神,博客中图片为沐神书上的图片。如有侵权,请联系本人删除,谢谢。
资料来源:https://zh-v2.d2l.ai/chapter_introduction/index.html