机器学习(Machine Learning)就是让计算机从数据中进行自动学习,得到某种知识或规律。
从观测数据样本中寻找规律,并利用学习到的规律模型对未知或无法观测的数据进行预测。
机器学习的任务:利用一些方法(比如梯度下降)求出损失函数的最小值。
一、机器学习三个基本要素:
模型
1.1线性模型
1.2非线性模型
如果非线性模型中的函数本身可作为基函数,且存在非线性函数,则该非线性模型等价于神经网络模型。
2.学习准则
2.1损失函数
用来量化模型预测值与标签值之间的差异
最典型的损失函数为0-1损失函数(如果标签值=预测值输出0,反之输出1)该模型能够客观的评价模型的好坏,但是数学性质很差,不连续且导数=0,难以优化。因此损失函数常用连续可微的损失函数替代。
平方损失函数经常用在预测标签y为你实数值的时候。
交叉熵损失函数一般用于分类问题,理解为负对数似然函数。
Hinge损失函数,取0与1-y的最大值。
过拟合Overfitting:模型在训练集上错误率很低,但是在未知数据上错误率很高。
加入正则化限制模型能力,使其不要过度地最小化经验风险,避免过拟合。(为什么?)
L1正则化:添加正则化项后,损失函数最小值就是方形与J0等值线的交点。当二维时,交点即为(0,w),当w越小时候代表α越大;当多维时,有更多的坐标存在0交点,产生稀疏模型。
L2正则化:可以看到交点与L1正则化不同,w1与w2为0的机会会明显减少。w很小时,即时有较大输入,输出还是会趋于平稳和更加平滑。
过拟合时W都非常大,故加入正则化后减少W的值可以防止过拟合。
从图上直观理解,能否理解为不加入正则化项,拟合函数曲线需要顾及到每一个点,导致导数绝对值非常大,从而导致系数非常大,也就是W非常大,而加入正则化通过约束参数的范数来约束系数的大小。
3.优化算法
参数优化(机器)、超参数优化(人工经验)
梯度下降法
针对梯度下降法,除了加入正则化外,还可以进行提前停止来防止过拟合。
批量梯度下降法:每次迭代时取N个样本,计算每个样本上损失函数的梯度并求和。当样本数量N很大时,空间复杂度比较高,每次迭代的计算开销也很大。
随机梯度下降法:每次迭代时只取一个样本,计算这个样本损失函数的梯度并更新参数。当经过足够次数的迭代时,随机梯度下降也可以收敛到局部最优解。
随机梯度下降法训练过程:
输入:训练集D,验证集v,学习率α
随机初始化参数
repeat
对训练集D中的样本随机排序;
for n = 1 ...N do
从训练集D中选取样本(x,y)
更新参数
end
until 模型在验证集v上的错误率不再下降
输出:参数
小批量梯度下降法:批量梯度下降法与随机梯度下降法的折中。
二、线性回归
参数学习
1.1经验风险最小化
平方损失函数
最小二乘法
1.2结构风险最小化
最大似然估计
最大后验估计
三、偏差-方差分解
为了避免过拟合,我们经常会在模型的拟合能力和复杂度之间进行权衡。拟合能力强的模型一般复杂度会比较高,容易导致过拟合。相反,如果限制模型的复杂度,降低其拟合能力,又可能会导致欠拟合。
因此,如何在模型的拟合能力和复杂度之间取得一个较好的平衡,对一个机器学习算法来讲十分重要。偏差-方差分解为我们提供了一个很好的分析和指导工具。
四、机器学习算法的类型
监督学习
回归:标签为连续值,输出也是连续值
分类:标签是离散的类别,学习到的模型为分类器
结构化学习:标签为结构化对象:序列、树或图
2.无监督学习
不包含目标标签的训练样本中自动学到一些有价值的信息,如聚类、密度估计、特征学习、降维。
3.强化学习
一种交互学习的机器学习算法
五、数据的特征表示
特征学习
传统的特征学习
特征选择:保留有用特征,移除冗余或无关的特征
正则化:也可以实现特征选择,因为正则化会导致稀疏特征,间接实现特征选择。
2.特征提取
构造一个新的特征空间,并将原始特征投影在新的空间中得到新的表示。
3.深度学习方法
传统的特征提取一般是和预测模型的学习分离的。我们会通过主成分分析或线性判别分析等方法抽取出有效的特征,然后再基于这些特征来训练一个具体的机器学习模型。
将特征的表示学习和机器学习的预测学习有机地统一到一个模型中,建立一个端到端的学习算法,就可以有效地避免它们之间准则的不一致性。
神经网络:输出层作为预测学习,其他层作为表示学习。
什么是端到端?--
输入原始数据,输出就是结果
原始非端到端输入端不是原始数据,而是原始数据中提取的特征。
对于图像而言,非端到端就是类似rcnn的网络,需要先从图像中确定候选框,然后送入cnn网络中判定是不是目标,以及目标的类别是什么。(cnn本质是分类,没有目标定位)
原理与二阶段网络原理类似,何为二阶段模型? 第一阶段是给出候选框,第二阶段是对候选框进行一个判定。
端到端的网络就是类似yolo系列,输入是原始图像,输出直接是目标框以及类别和位置。
六、评价指标
准确率
错误率
精确率和召回率
宏平均和微平均
交叉验证:把原始数据集平均分为K组不重复的子集,每次选K-1个子集作为训练集,剩下的一组子集作为验证集。这样可以进行K次实验并得到K个模型,将这K个模型在各自验证集上的错误率的平均作为分类器的评价。
七、理论和定理
PAC学习理论:帮助分析一个机器学习方法在什么条件下可以学习到一个近似正确的分类器。
没有免费午餐定理:特定任务需要特定算法。
奥卡姆剃刀原理:类似于正则化思想,简单的模型泛化能力更好。
丑小鸭定理:一切相似性的标准都是主观的
归纳偏置:对问题先做一些假设。
八、总结
机器学习思想是深度学习思想的基础和原理。总而言之机器学习就是三个基本要素:模型、学习准则(损失函数)、优化算法。就是一个使得损失函数最小化的优化问题。