误差error,偏置bias,方差variance的见解

更新日志:2020-3-10

谢谢@ProQianXiao的指正。偏差-方差的确是在测试集中进行的。

之前的误解是,偏差和方差的计算是同一个模型对不同样本的预测结果的偏差和方差;而实际上是不同模型对同一个样本的预测结果的偏差和方差。

这时候就要祭出网上都有的这张图了

比如中间大红色点的是这个样本的真实标签,小小的蓝色点是不同样本的预测结果。接下来简介一下图:

1.最好的模型就是低偏差低方差,这样所有的模型觉得这个图片所属的标签相同,同时标签是真实标签

2.横排第二张图,所有的模型有不同的观点,导致预测结果方差很大,但是他们的预测结果都在真实标签附近徘徊,可能有点过拟合了

3.第二排的第一列,所有的模型都认为这个样本属于同一个标签,但是这个标签并不是真实标签,这就明显预测错误,有可能是模型刚初始化,所有权重都比较小且接近,也没训练,导致欠拟合。

4.第二排第二列,所有的模型都各抒己见,同时他们判断的结果与真实结果天差地别,这种情况我也不知道怎么称呼,不过训练久了一般不会出现这种情况吧。

综上,我们训练模型,通常会先出现方差小偏差大的情况,随后偏差慢慢减少,方差慢慢增大的情况,如果模型够好,也可能会出现偏差慢慢减少,方差慢慢减少的情况,这是最理想的结果。

——————————————————————————————————————————————

下面是之前的错误想法,是之前误解的偏差和方差是同一个模型在不同数据上的预测结果的偏差和方差。

不知怎么的,想到了这三个名词之间的关系,特地去查了一下,貌似学问还挺大。

以下纯属查阅资料,自己的理解,如有错误,谢谢下方评论纠正^_^

主要参考资料:知乎上关于这三个名词的讨论,以及周志华的《机器学习》这本书第45页,以及一篇英文文档。

偏置-方差是评估模型泛化能力的一个工具。

个人感觉这个评估是在训练的时候中进行的(训练过程用到了训练集和验证集),因为大部分文献说 “bias是期望输出与真实标记的差,如果bias过小会产生过拟合” ;那么如果我们将这个“期望输出”理解为测试集的期望输出,得到 (测试集期望输出)-(实际标记) 的值,而我们的最终目标就是让这个值最小,怎么可能是这个值越小,过拟合会越严重呢?所以只有是 (训练集期望输出)-(实际标记) 的值非常小的时候,才会造成过拟合。也就是我们常说的 “在训练集上的误差很小,但是在测试集上的误差很大,那么得到的模型很可能是产生过拟合的模型”。

再举个栗子,在训练RBM的时候,能量函数或者计算神经元激活概率时都有一个偏置,这个偏置就只是在训练的时候不断更新,怎么可能是在测试的时候更新呢?这里有一个思路,是否可以通过偏置的大小或者平均值来判断RBM是否过拟合了呢~~~这个以后测试一下

说了这么多乱糟糟的,总结一下:

先说三个相关数据标记:①样本的真实标记 ②样本在训练集中的标记(可能含噪声)③样本在训练时每次得到的输出标记

噪声(noise):训练集的标记与真实标记的误差平方的均值,即②-①的平方的均值。

偏置(bias):训练模型的时候,每一次训练得到的训练集预测标签与原始真实标签的偏离程度(即③与①的差),如果此偏离程度过小,则会导致过拟合的发生,因为可能将训练集中的噪声也学习了。所以说偏置刻画了学习算法本身的拟合能力,如果拟合能力不好,偏置较大,出现欠拟合;反之拟合能力过好,偏置较小,容易出现过拟合。在训练的时候可以发现这个bias理论上应该是逐渐变小的,表明我们的模型正在不断学习有用的东西。【当然这是针对只有一个训练集的情况下,如果有多个训练集,就计算出每一个样本在各个训练集下的预测值的均值,然后计算此均值与真实值的误差即为偏差】

方差(variance):同样是针对训练模型时每一次得到的训练集预测标签,但是此时是最终一次训练以后得到的所有标签之间的方差且与真实标签无关(即③本身的方差),即计算这些预测标签的均值,再计算(每一个标签-均值)的平方和。可以想象,刚开始方差肯定是很小的,因为刚开始学习,啥都不会,即使对于有或者无噪声的数据,我们都无法做出精准判断,然而随着学习的进行,有些我们会越学越好,但是会越来越多地受到噪声数据的干扰,方差也会越来越大

误差(error):预测标记与训练集中标记的误差(③和②的差)。

 

公式表示如下:

(以下样本均为训练集中的数据,与测试集毫无关系,且只训练了1个模型,用来测试的样本只是一类样本,比如拿一堆1来做分类;我当时有一个疑问就是我拿一个1和一个1000来分类,就算完全预测对,方差也很大。所以用来计算方差和均值的样本必须是同一类样本在模型的输出)

设样本真实标记为R,可能含噪声的训练集中的标记为T,最终训练得到的输出标记为P,符号E代表求平均。注意,R、T、P都是向量,表示有好几个样本。则

误差公式的证明详细请看周志华老师《机器学习》的P45

——————————————————————————————————————————————————————————————

整个理解过程主要碰到的疑问就是:

第一,bias的期望输出P到底来自测试集还是训练集。如果是测试集,怎么去解释bias越小过拟合。过拟合是测试集误差大。

第二,测试用的样本是原始标记是1和1000的时候,标签方差本身就很大,如何去理解这个方差小一点比较好。自己理解的是这个测试样本必须是同类样本,如果是1,那么所有拿来测试的必须全部是1,计算方差的时候,也就是计算标签为1的样本得到的实际输出的方差

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/246689.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【caffe-Windows】以mnist为例lmdb格式数据

前言 前面介绍的案例都是leveldb的格式,但是比较流行和实用的格式是lmdb,原因从此网站摘取 它们都是键/值对(Key/Value Pair)嵌入式数据库管理系统编程库。虽然lmdb的内存消耗是leveldb的1.1倍,但是lmdb的速度比level…

【caffe-Windows】mnist实例编译之model的使用-matlab

前言 针对上一个caffe文章留下的matlab手写数字识别的问题,感谢caffe中文社区的 ghgzh 的提示,原文请看:caffe中文社区 第一步 手写图片的制作方法我就不说了,直接把我自己画的几个数字放到云盘先: 三通道图像以及…

【caffe-Windows】训练自己数据——数据集格式转换

前言 看了mnist和cifar的实例,是不是想我们现实中一般都是一张张的图片,和实例里面都不一样呢?那么如何来进行训练呢?为了能够简便点,我们就不自己去采集数据集了,因为第一自己采集的数据集量可能不够&…

【caffe-windows】Linux至Windows平台的caffe移植

1、前言 主要参考两篇博客以及很多论坛解决细节问题: http://www.cnblogs.com/trantor/p/4570097.html https://initialneil.wordpress.com/2015/01/11/build-caffe-in-windows-with-visual-studio-2013-cuda-6-5-opencv-2-4-9/ 移植环境:Windows7…

【caffe-matlab】权重以及特征图的可视化

前言 移植了各种caffe,是时候进行下一步操作了,先拿可视化下手吧。大部分内容可能跟网上的方法不一样,大家看完我的博客最好去网上看看大牛们的博客,万一被我误导了,就罪过了o(╯□╰)o,开更.............…

【caffe-matlab】使用matlab训练caffe及绘制loss

前言 此博客主要介绍如何利用matlab一步一步训练caffe模型,类似使用caffe.exe 的train命令。 国际惯例,参考博客: http://caffe.berkeleyvision.org/tutorial/interfaces.html http://www.cnblogs.com/denny402/p/5110204.html 抱怨一…

【caffe-matlab】目标检测R-FCN算法于Windows下配置

前言 首先谢谢好友推荐的这篇论文及代码,前面学习的caffe可能比较浅显,想要深入caffe就可以从这个代码下手了,配置方法还是挺简单的,但是可能会出现部分问题。在作者的论文中有github的地址。注意,本文只介绍如何配置…

【写作】Texlive和Texmaker学习

前言 最近要看一些论文做一下笔记,所以准备使用一下比较流行的Texlive和Texmaker写一下。其实CSDN的Markdown也是不错滴。 首先国际惯例,贴几个地址: Texlive镜像下载地址:http://mirror.lzu.edu.cn/CTAN/systems/texlive/Imag…

《Neural Networks for Machine Learning》学习一

前言 最近报了一下Hinton大牛的coursera的神经网络课程,奈何比较懒,一直没看,还是写个博客督促自己比较好 贴一下课程地址:https://www.coursera.org/learn/neural-networks/home/week/1 第一讲主题是为何需要机器学习&#xf…

《Neural Networks for Machine Learning》学习二

前言 课程地址:https://www.coursera.org/learn/neural-networks/home/week/1‘’ 【Lecture 2】百度云下载地址:链接:http://pan.baidu.com/s/1nvMynhR 密码:ru3y 神经网络架构概览 前馈神经网络(Feed-Forward neural network)…

入门 | 初学者必读:解读14个深度学习关键词

作者:Matthew Mayo 机器之心编译 参与:Xuwen Wang、Chen Chen 微信公众号:(almosthuman2014)授权转载,禁止二次转载,点此为原文链接 本文介绍了包括 LSTM、ANNS、生物神经元、反向传播、多元感知…

深度 | 一篇文章带你进入无监督学习:从基本概念到四种实现模型(附论文)

作者:Eugenio Culurciello 机器之心编译 参与:李亚洲、武竞 微信公众号:(almosthuman2014)授权转载,禁止二次转载,点此为原文链接 这是今年 6 月份普渡大学副教授 Eugenio Culurciello 写的一篇…

【caffe-Windows】微软官方caffe之 Python接口配置及图片生成实例

前言 发现许多代码还是用python写的,所以还是配置一下接口吧,虽然博主不会Python,咳咳。在这里使用的python安装包是anaconda2,注意使用Python2.7版本的那个安装包。 官网地址:https://www.continuum.io/downloads …

判别模型的玻尔兹曼机论文源码解读

前言 三号要去参加CAD/CG会议,投了一篇关于使用生成模型和判别模型的RBM做运动捕捉数据风格识别的论文。这段时间一直搞卷积RBM了,差点把原来的实验内容都忘记了,这里复习一下判别式玻尔兹曼机的训练流程。 国际惯例,贴几个链接…

Jacobian矩阵和Hessian矩阵

原文转自:http://jacoxu.com/?p146 1. Jacobian 在向量分析中, 雅可比矩阵是一阶偏导数以一定方式排列成的矩阵, 其行列式称为雅可比行列式. 还有, 在代数几何中, 代数曲线的雅可比量表示雅可比簇:伴随该曲线的一个代数群, 曲线可以嵌入其中. 它们全部都…

为什么梯度下降法对于非线性可分数据有效

前言 晚上逛微博看到的,顺便拿过来翻译一下,做做笔记 国际惯例,来个原文链接: 原文地址:Why is gradient descent robust to non-linearly separable data? PDF拷贝:http://download.csdn.net/detail/…

卷积RBM源码解读

前言 卷积RBM相对RBM来说具有很多优势,详细的我也不说了,看文章就行。主要还是为了加深自己对细节部分的理解吧。 国际惯例,贴几个链接 卷积RBM的创始人Honglak Lee:http://web.eecs.umich.edu/~honglak/hl_publications.html#…

c语言:递归法求n的阶乘|练习题

一、题目 输入一个数n&#xff0c;用递归法求n的阶乘 二、思路分析 1、因为n!(n-1)!*n,所以&#xff0c;可以选择用递归法 三、代码截图【带注释】 四、源代码【带注释】 #include <stdio.h> //思路&#xff1a; //因为n!(n-1)!*n,所以&#xff0c;可以选择用递归法 int…

【caffe-Windows】cifar实例编译之model的生成

参考&#xff1a;<span style"font-family: Arial, Helvetica, sans-serif;">http://blog.csdn.net/chengzhongxuyou/article/details/50715455</span> 准备工作 按照之前的教程&#xff0c;成功生成过caffe&#xff0c;并且编译整个caffe.sln项目工程&a…

机器学习性能改善备忘单:32个帮你做出更好预测模型的技巧和窍门

文章来源&#xff1a;大数据文摘 作者 | Jason Brownlee 选文 | Aileen 翻译 | 姜范波 校对 | 寒小阳 机器学习最有价值(实际应用最广)的部分是预测性建模。也就是在历史数据上进行训练&#xff0c;在新数据上做出预测。 而预测性建模的首要问题是&#xff1a; 如何才能得…