机器学习

如果一个系统能够通过执行某一过程改进它的性能,这就是学习。
——赫尔巴特·西蒙

简介

这篇笔记简要记录机器学习方法的基本概念。

机器学习

  • 对象数据
  • 目的对未知新数据进行预测与分析,考虑学习什么样的模型和如何学习模型,以使模型对数据进行准确的预测与分析,同时也要考虑尽可能地提高学习效率。
  • 方法基于数据构建模型从而对数据进行预测与分析,监督/半监督/非监督/强化学习等。三要素,模型,模型选择的准则(策略),模型学习算法。

    监督学习
    基本假设,输入与输出的随机变量X,Y遵循联合概率分布P(X,Y)。
    目的,学习一个由输入到输出的映射(模型)。
    过程学习预测

模型

  • 非概率模型,决策函数;
  • 概率模型,条件概率。

策略

损失函数,度量模型一次预测的好坏;非负实值函数;值越小,模型越好。

常用的损失函数有,

  • 0-1损失,非凸,存在很多不足
  • Log损失,逻辑回归
  • 指数损失,AdaBoost
  • Hinge损失,支持向量机,对判定边界附近点惩罚力度较高
  • 感知损失,感知机,只考虑错分(简单),泛化能力不如Hinge

风险函数,度量平均意义下模型预测好坏;损失函数的期望,即期望风险;联合分布未知,无法直接计算;

根据大数定律,当样本容量N趋于无穷时,经验风险(模型关于训练集的平均损失)趋于期望风险。

但经验风险常常需要进行矫正,这就自然而然出现2种学习策略:经验风险最小化结构风险最小化

样本量很小时,经验风险最小化学习策略,会产生过拟合,为防止过拟合,结构风险在经验风险上加入表示模型复杂度的正则化项。即,结构风险=经验风险 + 正则化项

算法

学习模型的具体计算方法;求解最优模型;最优化问题。

模型选择

模型选择旨在避免过拟合并提高模型预测能力,这里有一重要概念Bias-variance tradeoff

Error=Bias+Variance
Bias,偏差,模型本身的精确度,样本上输出与真实值之间的误差;
Variance,方差,模型稳定性,模型每一次输出结果与模型输出期望之间的误差。

下图是,通常模型训练时,偏差与方差的变化曲线
bias_vari
可以发现,模型的复杂度较低时,模型没有很好捕捉数据特征,未能很好拟合数据,就会出现“欠拟合”现象,此时,表现为高方差,高偏差;
但如果一味地提高对训练数据的预测能力,模型在训练集性能远远优于测试集,就会出现“过拟合”现象,此时,表现为高方差,低偏差。
常用的模型选择方法:正则化、交叉验证。

正则化

模型复杂度的单调递增函数,模型越复杂,正则化值越大;

L0、L1、L2泛数

  • L0范数是指向量中非0的元素的个数;
  • L1范数是指向量中各个元素绝对值之和;
  • L2是指向量各元素的平方和后求平方根;
  • L0和L1都可实现稀疏性,L0难以优化求解,而L1是L0的最优凸优化,易优化求解;
  • L2防止过拟合,L2使w更小,模型复杂度更低,不过分拟合训练集,提高泛化能力

交叉验证

  • 数据充足时,我们可以随机地将数据集划分成3分,训练集(训练模型)、验证集(模型选择)、测试集(评估);
  • 数据集不充足,交叉验证选择更好的模型。

    交叉验证基本思想
    重复地使用数据,把给定数据进行划分,将划分的数据集组合为训练集与测试集,在此基础上反复地进行训练、测试及模型选择。有简单交叉验证(70%,30%)、K折交叉验证、留一交叉验证。

分享