建模——模型评估笔记1

       一般地,数据划分成2块,一块训练集,用来训练模型,一块测试集,用来测试评估模型。这时会出现一个问题,训练好的模型有可能在测试集上出现过拟合,所谓过拟合就是指模型在训练集上有较高的分数,但是在测试集上预测不出有价值的信息,也可以理解成缺乏泛化能力。为了解决这类问题,要再准备一块验证集,模型训练好之后在验证集上对模型进行评估,如果评估结果较好就在测试集上进行最后的测试评估。


       这时又会出现另一个问题,当数据划分成3块时,数据量会大大减少,结果会依赖于训练和验证的选择上。为了解决这个问题,引入交叉验证,所谓交叉验证,最基础的是把数据分成K折,K-1折用来训练,剩余的1折用来验证,每一折都会充当一次验证集,这个方法优点是不需要单独分出来验证集,而且每个数据都可以参与到模型训练验证,缺点是计算代价大,需要进行K次训练验证。这个方法对数据量小的建模比较友好。


       有函数可以直接用来做交叉验证,cross_val_score,还有一个是cross_validate,后者能指定多个打分类型,比如同时查看准确率和召回率,除了能返回测试的打分情况,还能返回训练上的打分情况、拟合次数等,后者返回信息更多,前者只返回测试上的打分情况。


       交叉验证默认返回的是预测的准确率,与准确率常联系起来的有召回率,所谓准确率是针对预测样本来说的,有多少个预测样本预测正确了,比如100个预测样本,预测准确的有80个,那么准确率就是80%。所谓召回率,我看了几个例子,更多的是说到分类问题上,就是针对实际样本而言,有多少样本正确的预测出来了。

       如果不用交叉验证评估模型,使用普通的打分函数,比如score也能评估模型。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值