博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
改进算法1
阅读量:1873 次
发布时间:2019-04-26

本文共 1231 字,大约阅读时间需要 4 分钟。

当训练好一个模型之后预测新的数据,当发现预测情况不是很好的时候,怎么改进?

1.得到更多的训练数据。但有的时候获取更多的数据并不是很有帮助

2.尝试选用更少的特征

3.尝试增加更多的特征

4.增加多项式特征,就是已有特征之间的组合:x_{1}^{2},x_{2}^{2},x_{1}x_{2}

5.增加正则化参数,减小正则化参数

怎么样能选择最适合改进的方法呢?或者说排除上面的一些方法

评估该算法的性能(机器学习诊断法),从而能知道影响性能的关键和改进的方面:

训练误差最小化不一定得到了最好的性能,因为会过拟合。

那就要评价假设:使用验证集来度量误差,具体的如果对于回归问题,是误差;对于分类问题,是分类误差

欠拟合---偏差,过拟合---方差;如果算法的表现没有预期的那么好,那么如何确定是哪方面的问题?

如果是高偏差的问题,那么训练集误差和验证集误差都比较大;如果是高方差,那么训练集误差小,验证集误差大。

1.得到更多的训练数据(但有的时候获取更多的数据并不是很有帮助):解决高方差问题

2.尝试选用更少的特征:解决高方差问题

3.尝试增加更多的特征:解决高偏差问题

4.增加多项式特征,就是已有特征之间的组合:x_{1}^{2},x_{2}^{2},x_{1}x_{2}等:解决高偏差问题

5.增加正则化参数,解决高方差问题

6.减小正则化参数:解决高偏差问题

加入正则化,选区合适的参数的时候,选取验证集最好效果的参数。如果不同的正则参数训练出来的模型,对验证集,训练集进行预测,得到的误差图像,这个时候,如果正则化参数太大就会是高偏差即欠拟合问题,则会表现训练集误差和验证集误差都大;如果正则化参数太小就是高方差即过拟合问题,则表现训练集误差小,验证集误差大。因此通过增大正则参数来解决高方差,减小正则参数来解决高偏差。

利用学习曲线来确定是高偏差问题还是高方差问题。

学习曲线是,在假设下面,使用训练数据集中的m个样本进行训练,得到模型,然后得到训练误差和验证误差(注意这里是对m个样本,具体的训练集上之前训练的m个样本,验证集上新的m个样本)。随着m的增大而训练模型,得到误差;这样就画出来下面的学习曲线。我们可以知道当数据越多的时候,我们所关心的验证误差将会越来越小,当到达一定的数据量的时候就会保持平衡,意味着数据增加不会起帮助(下面的高偏差问题)

那么对于高偏差和高方差的曲线各是什么呢?下面给出:

高偏差状况是可以判断增加数据没有意义了

可以看到在整个训练集训练完了,这两条误差曲线还有很大的一个gap,看着曲线的趋势,增加数据可以降低验证误差(这是我们的目的),所以可以判断增加数据对于改善模型是有效的。

那么总结上面改进算法的方法都是解决什么问题的:

1.得到更多的训练数据(但有的时候获取更多的数据并不是很有帮助):解决高方差问题

2.尝试选用更少的特征:解决高方差问题

3.尝试增加更多的特征:解决高偏差问题

4.增加多项式特征,就是已有特征之间的组合:x_{1}^{2},x_{2}^{2},x_{1}x_{2}等:解决高偏差问题

5.增加正则化参数,解决高方差问题

6.减小正则化参数:解决高偏差问题

 

 

 

 

转载地址:http://mawbf.baihongyu.com/

你可能感兴趣的文章
pymysql 的基础应用
查看>>
Html+Css实现 启橙装饰网 项目
查看>>
JavaScript 实现哥德巴赫猜想
查看>>
JavaScript DOM
查看>>
Python 管理程序改进——连接MYSQL
查看>>
Python 爬虫
查看>>
Python 爬虫-百度风云榜的电影top50
查看>>
Python 爬虫-豆瓣影星图片下载
查看>>
Excel数据基础操作
查看>>
网页端数据库操作界面—主题函数文件
查看>>
网页端数据库操作界面-Html页面(1)
查看>>
网页端数据库操作界面-Html页面(2)
查看>>
网页端数据库操作界面-Html页面(3)
查看>>
Excel 高级筛选
查看>>
Python爬虫 百度热搜热点
查看>>
Python 百度热搜 全页面爬取
查看>>
爬取小说——爬取书的地址
查看>>
爬取小说——爬取章节地址
查看>>
爬取小说——爬取标题和正文
查看>>
爬取小说——储存为TXT格式
查看>>