对于模型评估部分,他的各种结果到底是什么意义

2019/02/21

为什么要进行模型评估

根据“No Free Leach"理论,没有可以适用于所有问题的算法或者模型,所以在进行测试的过程中, 必然要测试多种算法来选择最好的。这个时候不同的算法他体现出来的性能是不一样的,必然就要有多种评价参数来进行对比。

为什么需要交叉验证这种方式

在kaggle上,一些数据集是已经对训练集和测试集进行了区分,这种情况我觉得是不用再进行数据集的切分,直接进行交叉验证的,只需要直接在测试集上进行测试即可。(个人想法)
需要交叉验证的场景,是指那种数据量比较少的情况下,仅仅有训练数据,训练误差并不能体现出你相应的性能,要充分利用有限的数据。
进行多次验证或者将测试集的比例增大,可以在统计学上提高算法的置信度。

进行交叉验证的时候,需要考虑类别的分布吗

这个好像是有的,主要就是为了得到具有代表性的训练和测试集。
书里也对这部分进行了描述,他的说法叫做:stratification,我看sklearn中也有这个内容。
(官方文档[2]提到了这种方法sklearn.model_selection.StratifiedKFold,但要指定参数shuffle=True ,并且这个已经确定,跟原始数据的比例是一样的2019/02/27)

(但是一定注意,在样本非均衡的情况下,又是什么样的)

最终产生的模型

很久之前我在学习这部分内容(交叉验证)的时候,我就很纳闷,既然测试的每个内容不一样,我是选择哪个模型呢。不仅仅是书[1],还有很多文章,都指出,最后的步骤应该是把测试集也放回到训练集中,然后利用所有的数据来生成最终的模型,这样做的目的也很简单,就是为了最大化的使用数据。

可用的评价参数

我知道的几个评价参数:准确率、混淆矩阵、ROC曲线、AUC值、F1分数。

准确率:这个算是最基础的,算法在构建的过程中同时会利用这个参数来调优。
sklearn中分类器的方法score是所有类别被分类正确的平均准确值,metrics.accuracy_score
混淆矩阵可以直接看出来多个类别他的分类效果,从混淆矩阵中可以得到相应的这个算法测试得到的精确率和召回率等,还有F1分数。虽然F1分数的公式推导利用了精确率和召回率,是可以得到相应的多分类情况的推广的。


ROC这个东西的计算比较复杂,
https://stackoverflow.com/a/47562197
这个回答简单易懂,另外,我记得是,只有你的分类效果最终是带有概率的才能绘制这个曲线,我去查下相关的资料。
上面这个问题的解答:
https://stats.stackexchange.com/a/331742
而且看完这个回答之后,就感觉自己对这部分的内容,真的是一点也没没懂。
https://stats.stackexchange.com/a/105577
https://docs.eyesopen.com/toolkits/cookbook/python/plotting/roc.html


这些参数,本质上是足够的。在很多论文中,基本上就是围绕这些内容作为最后的评价参数


https://www.reddit.com/r/MLQuestions/comments/7e9zft/kfold_cross_validation_vs_train_test_split/
(这个网址提供的内容,对我更是一个打击,,这就跟是说,我原来的时候都没明白我要干什么。)
这里要解释的内容是说,针对模型评估和模型调参,不同的内容针对的目标是不一样的。

(关于模型评估的部分,利用什么网格搜索调优参数,这种还是需要掌握;特别是今天看到了你如果是在非均衡样本的情况下是怎么处理的。 2019/02/26)

结语

2019/02/21
模型评估部分的内容,远比我想象中的内容要复杂的多。这次基本上对很多内容都通了,但还是不够准确。

参考文献

[1]I. H. Witten, E. Frank, and M. A. Hall, Data mining: practical machine learning tools and techniques, 3rd ed. Burlington, MA: Morgan Kaufmann, 2011.
[2]sklearn.model_selection.StratifiedKFold

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值