【动手学深度学习】 1前言

李沫《动手学深度学习》课程学习

具体代码保存在自己的内存中,学完之后会考虑将资源全部上传,写文档的目的是保留一些自己认为重要的内容、调试的过程、练习的内容,尽力一周一章的学习进度。

目录

1.1 关键组件

1.1.1 数据(data)

1.1.2 模型(model)

1.1.3 目标函数(objective function)

1.1.4 优化算法

1.2 各种机器学习问题

1.2.1 监督学习

1.2.1.1 回归

1.2.1.2 分类

1.2.1.3 标记问题

1.2.1.4. 搜索

1.2.1.5 推荐系统

1.2.1.6 序列学习

1.2.2 无监督学习

1.2.3 与环境互动

1.2.4 强化学习

1.3. 小结


1.1 关键组件

1.1.1 数据(data)

1、数据由样本(example、sample)组成,大部分时候遵循独立同分布(independently and identically distributed, i.i.d.).

2、样本有时也叫做数据点(data point)或者数据实例(data instance),通常每个样本由一组称为特征(features,或协变量(covariates))的属性组成。 机器学习模型会根据这些属性进行预测。

3、要预测的是一个特殊的属性,它被称为标签(label,或目标(target))

4、当每个样本的特征类别数量都是相同的时候,其特征向量是固定长度的,这个长度被称为数据的维数(dimensionality)。 

5、数据集分成两部分:训练数据集用于拟合模型参数,测试数据集用于评估拟合的模型。 

1.1.2 模型(model)

1.1.3 目标函数(objective function)

1、在机器学习中,我们需要定义模型的优劣程度的度量,这个度量在大多数情况是“可优化”的,我们称之为目标函数(objective function)。 

2、通常定义一个目标函数,并希望优化它到最低点。 因为越低越好,所以这些函数有时被称为损失函数(loss function,或cost function)。

3、通常,损失函数是根据模型参数定义的,并取决于数据集。 在一个数据集上,我们通过最小化总损失来学习模型参数的最佳值。 

4、当一个模型在训练集上表现良好,但不能推广到测试集时,我们说这个模型是“过拟合”(overfitting)的。

1.1.4 优化算法

1、一旦我们获得了一些数据源及其表示、一个模型和一个合适的损失函数,我们接下来就需要一种算法,它能够搜索出最佳参数,以最小化损失函数。

2、深度学习中,大多流行的优化算法通常基于一种基本方法–梯度下降(gradient descent)。

3、 简而言之,在每个步骤中,梯度下降法都会检查每个参数,看看如果你仅对该参数进行少量变动,训练集损失会朝哪个方向移动。 然后,它在可以减少损失的方向上优化参数。

1.2 各种机器学习问题

1.2.1 监督学习

监督学习可以理解为样本的组成是 特征+标签

【动手学深度学习】 1前言_第1张图片

1.2.1.1 回归

当标签取任意数值时,我们称之为回归问题。 我们的目标是生成一个模型,它的预测非常接近实际标签值。

判断回归问题的一个很好的经验法则是,任何有关“多少”的问题很可能就是回归问题。比如:

  • 这个手术需要多少小时?

  • 在未来六小时,这个镇会有多少降雨量?

1.2.1.2 分类

 在分类问题中,我们希望模型能够预测样本属于哪个类别(category,正式称为(class))

分类问题可以分为二元分类、多元分类、层次分类

1.2.1.3 标记问题

学习预测不相互排斥的类别的问题称为多标签分类(multi-label classification)。 举个例子,人们在技术博客上贴的标签,比如“机器学习”、“技术”、“小工具”、“编程语言”、“Linux”、“云计算”、“AWS”。 一篇典型的文章可能会用5-10个标签,因为这些概念是相互关联的。 关于“云计算”的帖子可能会提到“AWS”,而关于“机器学习”的帖子也可能涉及“编程语言”。

1.2.1.4. 搜索

即使结果集是相同的,集内的顺序有时却很重要。

该问题的一种可能的解决方案:首先为集合中的每个元素分配相应的相关性分数,然后检索评级最高的元素。

1.2.1.5 推荐系统

1.2.1.6 序列学习

 序列学习需要摄取输入序列或预测输出序列,或两者兼而有之。 具体来说,输入和输出都是可变长度的序列。

1.2.2 无监督学习

——数据中不含有“目标”的机器学习问题

  • 聚类(clustering)问题:没有标签的情况下,我们是否能给数据分类呢?比如,给定一组照片,我们能把它们分成风景照片、狗、婴儿、猫和山峰的照片吗?同样,给定一组用户的网页浏览记录,我们能否将具有相似行为的用户聚类呢?

  • 主成分分析(principal component analysis)问题:我们能否找到少量的参数来准确地捕捉数据的线性相关属性?比如,一个球的运动轨迹可以用球的速度、直径和质量来描述。再比如,裁缝们已经开发出了一小部分参数,这些参数相当准确地描述了人体的形状,以适应衣服的需要。另一个例子:在欧几里得空间中是否存在一种(任意结构的)对象的表示,使其符号属性能够很好地匹配?这可以用来描述实体及其关系,例如“罗马” − “意大利” + “法国” = “巴黎”。

  • 因果关系(causality)和概率图模型(probabilistic graphical models)问题:我们能否描述观察到的许多数据的根本原因?例如,如果我们有关于房价、污染、犯罪、地理位置、教育和工资的人口统计数据,我们能否简单地根据经验数据发现它们之间的关系?

  • 生成对抗性网络(generative adversarial networks):为我们提供一种合成数据的方法,甚至像图像和音频这样复杂的非结构化数据。潜在的统计机制是检查真实和虚假数据是否相同的测试。

1.2.3 与环境互动

【动手学深度学习】 1前言_第2张图片

1.2.4 强化学习

【动手学深度学习】 1前言_第3张图片

1.3. 小结

  • 机器学习研究计算机系统如何利用经验(通常是数据)来提高特定任务的性能。它结合了统计学、数据挖掘和优化的思想。通常,它是被用作实现人工智能解决方案的一种手段。

  • 表示学习作为机器学习的一类,其研究的重点是如何自动找到合适的数据表示方式。深度学习是通过学习多层次的转换来进行的多层次的表示学习。

  • 深度学习不仅取代了传统机器学习的浅层模型,而且取代了劳动密集型的特征工程。

  • 最近在深度学习方面取得的许多进展,大都是由廉价传感器和互联网规模应用所产生的大量数据,以及(通过GPU)算力的突破来触发的。

  • 整个系统优化是获得高性能的关键环节。有效的深度学习框架的开源使得这一点的设计和实现变得非常容易。

你可能感兴趣的:(知识学习,人工智能,机器学习)