机器学习中的关键组件
数据
每个数据集由一个个样本组成,大多时候,它们遵循独立同分布。样本有时也叫作数据点或数据实例,通常每个样本由一组称为特征或协变量的属性组成。机器学习会根据这些属性进行预测,预测得到的称为标签或目标。
目标函数
在机器学习中,需要定义对模型的优劣程度的度量,这个度量在大多数情况下是“可视化”的,这被称为目标函数。通常定义一个目标函数,并希望优化它到最小值。
当任务在试图预测数值时,最常见的损失函数是平方误差,即预测值与实际值之差的平方。当试图解决分类问题时,最常见的目标函数是最小化错误率,错误率即预测与实际情况不符的样本比率。有些目标函数(平方误差)很容易被优化,有些目标函数(错误率)由于不可微性或其他复杂性难以直接优化。
通常,损失函数是根据模型参数定义的,并取决于数据集。在一个数据集上,可以通过最小化总损失来学习模型参数的最佳值。该数据集由一些为训练而采集的样本组成,称为训练数据集或训练集。可用数据集通常可以分为两部分:训练数据集用于拟合模型参数,测试数据集用于评估拟合的模型。然后观察模型在这两部分数据集上的性能。当一个模型在训练集上表现良好,但不能推广到测试集时,这个模型被称为过拟合的。
优化算法
深度学习中,大多数流行的优化算法通常基于一种基本方法--梯度下降
机器学习分类及其问题
监督学习
监督学习擅长在“给定输入特征”的情况下预测标签。每个“特征-标签”对都称为一个样本。即使标签是未知的,样本也可以指代输入特征。目标是生成一个模型,该模型能够将任何输入特征映射到标签(即预测)。
监督学习在训练参数时,为模型提供了一个数据集,其中每个样本都有真实的标签。在给定一组特定的可用数据的情况下,估计未知事物的概率。
监督学习的学习过程
从已知大量数据样本中随机选取一个子集,为每个样本获取真实标签。有时,这些样本已有标签;有时,这些样本可能需要被人工标注。这些输入和相应标签一起构成了训练数据集。
选择有监督的学习算法,它将训练数据集作为输入,并输出一个“已完成学习的模型”
将之前没有见过的样本特征放到这个“已完成学习的模型”中,使用模型的输出作为相应标签的预测
监督学习的模型
回归
回归问题是由输出决定的,此时的目标是生成一个模型,使它的预测值非常接近实际标签值。
分类
分类问题希望模型能够预测样本属于哪个类别,其正式称为类。
分类器可能会输出图像是猫的概率为0.9,也就是分类器确定图像描绘的是一只猫的概率为90%。预测类别的概率传达了模型的不确定性。
无监督学习
数据中不含有“目标”的机器学习问题通常被称为“无监督学习”
无监督学习主要解决的问题
①聚类问题;②主成分分析问题;③因果关系和概率图模型;
④生成对抗网络(提供一种合成数据的方法)
与环境互动
无论是监督学习还是无监督学习,我们都会预先获取大量数据,然后启动模型,不再与环境交互。所有的学习都是在算法与环境断开后进行的,被称为离线学习
离线学习的优点:我们可以孤立地进行模式识别,而不必分心于其他问题
缺点:能解决的问题相当有限
强化学习
智能体在一系列的时间步骤上与环境交互。在每个特定时间点,智能体从环境接受一些观测,并且必须选择一个动作,然后通过某种机制(执行器)将其传输回环境,最终智能体从环境中获得奖励。此后,新一轮循环开始。
神经网络的起源
神经网络的核心是当今大多数网络中都可以找到的几个关键原则:
①线性和非线性处理单元的交替,通常称为层
②使用链式规则(反向传播)一次性调整网络中的全部参数