入门机器学习实用指南Hands-On Machine Learning with Scikit-Learn & TensorFlow (第四章)

我对本书中的代码做了详尽的注释,放到了我的github,star我哦(✪ω✪)
本系列主要针对一些阅读本书过程中遇到的问题进行解答,不罗列知识点。如果遇到其他问题欢迎私信我。文章最后会对本章节内容做总结。

Q:凸函数与凹函数
原文:线性回归模型的MSE成本函数恰好是个凸函数

凸函数 convex function凹函数 concave function可以按以下方法来记忆凸函数和凹函数,凸函数曲线上方的图形是往下凸的,所以称之为凸函数;凹函数上方图形是往下凹的,所以称之为凹函数。只要记得和中文里的凹凸是相反的就可以了。
更多记忆方法参考知乎

Q:代码
原文
m = 100
X = 6 * np.random.rand(m, 1) - 3
y = 0.5 * X**2 + X + 2 + np.random.randn(m, 1)

需要注意这里一句是np.random.rand():生成均匀分布的伪随机数,介于(0,1)之间;
另一句是np.random.randn(),生成正态分布的伪随机数。

Q:偏差/方差权衡

https://blog.csdn.net/ChenVast/article/details/79257387
当训练集和测试集的误差收敛但却很高时,为高偏差。
左上角的偏差很高,训练集和验证集的准确率都很低,很可能是欠拟合。
我们可以增加模型参数,比如,构建更多的特征,减小正则项。
此时通过增加数据量是不起作用的。

当训练集和测试集的误差之间有大的差距时,为高方差。
当训练集的准确率比其他独立数据集上的测试结果的准确率要高时,一般都是过拟合。
右上角方差很高,训练集和验证集的准确率相差太多,应该是过拟合。
我们可以增大训练集,降低模型复杂度,增大正则项,或者通过特征选择减少特征数。

理想情况是是找到偏差和方差都很小的情况,即收敛且误差较小;偏差和方差相互影响,为此需要找到偏差与方差之间的权衡,故称之偏差/方差权衡。
转自Alice熹爱学习
注意这里的学习曲线和书中的学习曲线的区别,此处纵坐标是准确率,绘出的图线一般训练集在上,测试集在下,且曲线越高模型预测越好;书中的图形纵坐标是RMSE,性质与此处相反。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值