• 机器学习第三堂课20210318


    过拟合

     模型的泛化能力:训练集、测试集。训练集上学到的模型在测试集上的性能。

    本节课研究的是:源域和测试域来自相同的分布,独立同分布。

    迁移学习transfer Learnig:源域和测试域来自不同的分布,就是迁移学习,很复杂。

    欠拟合和过拟合都不行。

    不过现实中条件有限,无法得知数据的真实分布,所以通常使用大容量模型+正则化来得到不错的结果。

    关于统计学习statistical learning:随机变量(x,y)的联合概率分布Pxy(X=x,Y=y);条件概率Pxy(Y=y|X=x0)、Pxy(Y=y|X=x1)。

    统计学习三要素

    方法=模型+策略+算法:统计学习方法都是由模型、策略和算法构成,这称为统计学习三要素

     模型期望

     以上表达式描述的就是样本服从真实分布情况下,样本(随机变量)X在以 Θ Theta Θ为参数的模型中输出的期望(平均的概率输出),极限情况下即为1。

    偏差—方差权衡

    误差分解:噪声、偏差和方差。

    理想模型、随机误差、学习误差。

    学习误,模型期望,偏差+方差

    偏差:理想模型和现实模型之间的差距。取一个期望,离靶心很近。关注数据和靶心的离散程度。

    方差:与过拟合密切相关。关注数据本身的离散程度。

    偏差-方差与模型复杂度:

     欠拟合解决办法:更换描述能力更强的模型。

    过拟合解决办法:扩增训练集、正则化、减少模型复杂度。

    训练集大小的影响等等。

    模型选择

    简单结论:不存在通用的学习算法。每个学习算法都有其特定的任务,为了学习成功,要采用一些关于任务的先验知识。

    交叉验证(cross validation)超参数里面找到最优解,找到最好的参数。

    数据集划分:训练集、验证集和测试集。

    注意:现在一般可能在测试集上面进行调参,但是因为看过测试集了,数据偷看,所以测试集间接参与了模型的训练,没有把测试集的标签来测试模型,但是用测试集的标签来训练模型。为什么选择这个超参数?可能使用了测试集,选好测试集,然后进行训练和测试,这是一个问题。

    训练集和测试集都是公开的,那么性能需要存疑。这种做法本身是不规范的,虽然大家是这么做的,可能性能不准。

    机器学习公开的比赛,会公布训练集,然后自己提高模型到server,这个服务器是网络公开的。

    正则化

     基于最小均方误差的最小二乘法,加入正则项的改良最小二乘法(岭回归)

    正则化通过惩罚模型来实现简单的模型。

     正则化系数的影响,学习的是参数W,训练的是超参数(正则化系数)。

    1、超参数?

    【超参数的值不是学习出来的】:大多数机器学习算法都有超参数,可以设置来控制算法行为。超参数的值不是通过学习算法本身学习出来的。
    【超参数如果学习太难优化】:有时一个选项被设为学习算法不用学习的超参数,是因为它太难优化了。更多的情况是该选项必须是超参数,是因为它不适合在训练集上学习。
    【超参数是我们自己设定的】:这适用于控制模型容量的所有超参数。如果在训练集上学习超参数,这些超参数总是趋向于最大可能的模型容量,导致过拟合。

     参考链接:https://blog.csdn.net/qq_16137569/article/details/81504853

    https://www.cnblogs.com/noluye/p/11241843.html

     https://blog.csdn.net/qq_30335773/article/details/107535793

    https://www.cnblogs.com/Renyi-Fan/p/13792258.html

    雪儿言
  • 相关阅读:
    算法系列(三)
    .net页面生命周期
    初级程序员的学习方法见解
    .net面向对象学习笔记(二)
    算法系列(二)
    “automation服务器不能创建对象”的问题的解决方案大全
    UNKNOWN.RPT 无法将请求提交后台处理
    水晶报表ActiveX控件打印
    .net中调用js乱码解决办法
    GridView自动序号
  • 原文地址:https://www.cnblogs.com/weixq351/p/14553880.html
Copyright © 2020-2023  润新知