机器学习模型的实用建议

高方差/偏差的解决策略

高方差就是模型的训练误差与验证误差相去甚远,一般由于模型过拟合使得训练误差很低而验证误差很高;高偏差就是模型的训练误差与验证误差非常逼近但是都很高,往往由于模型欠拟合使得两者误差都很高。

高方差 高偏差
搜集更多的样本 获得额外特征
属性约简 获得多项式、核特征
增大正则化系数 减小正则化系数

引入一种观察算法性能的工具:学习曲线。学习曲线是一条反映训练误差与验证误差随训练样本量之间关系的曲线。如果算法是高偏差,那么你收集再多数据集也没用。高偏差的学习曲线训练线和验证线在很高的地方逼近,高方差的学习曲线训练线和验证线之间间距很大。

原文地址:https://www.cnblogs.com/luyunan/p/12254420.html

时间: 2024-08-01 03:20:32

机器学习模型的实用建议的相关文章

8个经过证实的方法:提高机器学习模型的准确率

来自 http://datartisan.com/article/detail/74.html 导语: 提升一个模型的表现有时很困难.如果你们曾经纠结于相似的问题,那我相信你们中很多人会同意我的看法.你会尝试所有曾学习过的策略和算法,但模型正确率并没有改善.你会觉得无助和困顿,这是90%的数据科学家开始放弃的时候. 不过,这才是考验真本领的时候!这也是普通的数据科学家跟大师级数据科学家的差距所在.你是否曾经梦想过成为大师级的数据科学家呢? 如果是的话,你需要这 8 个经过证实的方法来重构你的模型

R语言︱机器学习模型评估方案(以随机森林算法为例)

R语言︱机器学习模型评估方案(以随机森林算法为例) 笔者寄语:本文中大多内容来自<数据挖掘之道>,本文为读书笔记.在刚刚接触机器学习的时候,觉得在监督学习之后,做一个混淆矩阵就已经足够,但是完整的机器学习解决方案并不会如此草率.需要完整的评价模型的方式. 常见的应用在监督学习算法中的是计算平均绝对误差(MAE).平均平方差(MSE).标准平均方差(NMSE)和均值等,这些指标计算简单.容易理解:而稍微复杂的情况下,更多地考虑的是一些高大上的指标,信息熵.复杂度和基尼值等等. 本篇可以用于情感挖

R语言︱机器学习模型评价指标+(转)模型出错的四大原因及如何纠错

笔者寄语:机器学习中交叉验证的方式是主要的模型评价方法,交叉验证中用到了哪些指标呢? 交叉验证将数据分为训练数据集.测试数据集,然后通过训练数据集进行训练,通过测试数据集进行测试,验证集进行验证. 模型预测效果评价,通常用相对绝对误差.平均绝对误差.根均方差.相对平方根误差等指标来衡量. 只有在非监督模型中才会选择一些所谓"高大上"的指标如信息熵.复杂度和基尼值等等. 其实这类指标只是看起来老套但是并不"简单",<数据挖掘之道>中认为在监控.评估监督模型

为什么一些机器学习模型需要对数据进行归一化?

为什么一些机器学习模型需要对数据进行归一化? http://www.cnblogs.com/LBSer/p/4440590.html 针对这个问题参考了wiki的解释:http://en.wikipedia.org/wiki/Feature_scaling.“归一化后有两个好处:1)归一化后加快了梯度下降求最优解的速度:2)归一化有可能提高精度”. 1 归一化为什么能提高梯度下降法求解最优解的速度? 斯坦福机器学习视频做了很好的解释:https://class.coursera.org/ml-0

tensorflow机器学习模型的跨平台上线

在用PMML实现机器学习模型的跨平台上线中,我们讨论了使用PMML文件来实现跨平台模型上线的方法,这个方法当然也适用于tensorflow生成的模型,但是由于tensorflow模型往往较大,使用无法优化的PMML文件大多数时候很笨拙,因此本文我们专门讨论下tensorflow机器学习模型的跨平台上线的方法. 1. tensorflow模型的跨平台上线的备选方案 tensorflow模型的跨平台上线的备选方案一般有三种:即PMML方式,tensorflow serving方式,以及跨语言API方

解释机器学习模型的一些方法(二)——在受监管的行业使用机器学习

对于在受监管行业中工作的分析师和数据科学家来说,尽管机器学习可能会带来『能极大提高预测精度』这一好处,然而它可能不足以弥补内部文档需求以及外部监管责任所带来的成本.对于实践者而言,传统线性模型技术可能是预测模型中的唯一选择.然而,创新和竞争的驱动力并不因为你在一个受监管的模式下工作就会止息.在银行,保险以及类似受监管垂直领域里,数据科学家和分析师正面对着这样一个独一无二的难题:他们必须要找到使预测越来越精准的方案,但前提是,保证这些模型和建模过程仍然还是透明.可解释的. 在这一节中所展现的技巧,

解释机器学习模型的一些方法(三)——理解复杂的机器学习模型

在这一部分中我们所要展现的技术,可以为非线性.非单调的响应函数生成解释.我们可以把它们与前两部分提到的技巧结合起来,增加所有种类模型的可解释性.实践者很可能需要使用下列增强解释性技巧中的一种以上,为他们手中最复杂的模型生成令人满意的解释性描述. 代理模型 图14.  为了解释复杂神经网络而使用代理模型的示意图 代理模型是一种用于解释复杂模型的简单模型.最常见的建立方法是,对原始输入和复杂模型给出的预测值建立简单线性回归或者决策树模型.代理模型中所展示的系数.变量重要性.趋势以及交互作用,是复杂模

使用ML.NET + ASP.NET Core + Docker + Azure Container Instances部署.NET机器学习模型

本文将使用ML.NET创建机器学习分类模型,通过ASP.NET Core Web API公开它,将其打包到Docker容器中,并通过Azure Container Instances将其部署到云中. 先决条件 本文假设您对Docker有一定的了解.构建和部署示例应用程序还需要以下软件/依赖项.重要的是要注意应用程序是在Ubuntu 16.04 PC上构建的,但所有软件都是跨平台的,应该适用于任何环境. Docker Azure CLI .NET Core 2.0 Docker Hub Accou

评估机器学习模型的几种方法(验证集的重要性)

什么是评估机器学习模型     机器学习的目的是得到可以泛化(generalize)的模型,即在前所未见的数据上表现很好的模型,而过拟合则是核心难点.你只能控制可以观察的事情,所以能够可靠地衡量模型的泛化能力非常重要. 如何衡量泛化能力,即如何评估机器学习模型. 评估模型的重点是将数据划分为三个集合:训练集.验证集和测试集.在训练数据上训练模型,在验证数据上评估模型.一旦找到了最佳参数,就在测试数据上最后测试一次. 为什么需要验证集 原因在于开发模型时总是需要调节模型配置,比如选择层数或每层大小