统计学习方法:概论 (一)

损失函数

  1. 0-1损失:预测和实际相同时损失为0,不同时为1。
  2. 平方损失:预测与实际的误差平方值。
  3. 绝对损失:预测与实际的误差绝对值。
  4. 对数损失:-logP(Y|X),在当前模型下对于输入X预测得到的真实类别Y的概率为P(Y|X),模型好的情况下这个值应该为1,对应的对数值应该为0,最小化对数损失。


经验风险与结构风险

  • 经验风险:在训练数据上的累积误差,即所有样本的损失之和。
  • 结构风险:除了考虑经验风险,还考虑了模型复杂度的正则项(罚项)。


过拟合:所选模型参数过多,复杂度过高,在已知数据上效果很好,但在未知数据上效果很差。

    解决方法:正则化;交叉验证。


交叉验证

  1. 简单交叉:将已有样本的一部分作为训练,一部分作为测试。
  2. S折交叉:数据分为S折,其中 (S-1)折作为训练,1折作为测试。
  3. 留一交叉:数据非常少时,S=N,N为样本数据量,只留一个样本作为测试。


生成模型VS判别模型

  • 生成模型:由数据学习联合概率分布P(X,Y),然后求出条件概率分布P(Y|X)=P(X,Y)/P(X)。模型表示了给定输入X产生输出Y的生成关系。典型的生成模型有朴素贝叶斯和隐马尔可夫模型。
  • 判别模型:由数据直接学习决策函数Y=f(X)或条件概率分布P(Y|X)作为预测的模型,即判别模型。判别方法关心的是给定输入X,应该预测什么样的输出Y。典型的判别模型有k近邻,感知机,局册数,逻辑斯蒂回归模型,最大熵模型,支持向量机,提升方法和条件随机场。

具体的可参见我另一篇博文:生成模型 VS 判别模型 (含义、区别、对应经典算法)

两种方法各有优缺点,适合不同条件的学习问题。

  • 生成方法:可以还原出联合概率分布;学习收敛速度更快,即当样本容量增加的时候,学习到的模型可以更快地收敛于真实模型;当存在隐变量时,仍可以用生成方法学习,而判别不行。
  • 判别模型:直接学习条件概率或决策函数,直接面对预测,学习的准确率更高;由于直接学习条件概率或决策函数,可以对数据进行各个程度上的抽象、定义特征并使用特征,可以简化学习问题。


精确率VS召回率

  • 精确率:所有被预测为正例的样本中真正的正例比例   TP/(TP+FP)
  • 召回率:所有真正的正例中被准确预测为正例的比例   TP/(TP+FN)

F1值:精确率和召回率的调和均值,F1=2TP/(2TP+FP+FN)


标注问题:是分类的一个推广,输入是一个序列,输出也是一个序列,和输入序列中的元素一一对应。例如词性标注中,输入是一个句子,输出是句子中每一个单词的词性标注。




猜你喜欢

转载自blog.csdn.net/u010358304/article/details/80668628