[机器学习]对hypothesis的评价方式

本文介绍了在机器学习中,如何评价一个hypothesis的性能。通过错误率、Precision/Recall以及F1 Score等指标,详细阐述了如何全面评估预测模型的优劣。错误率可能无法反映实际情况,例如在癌症预测系统中。Precision和Recall之间存在权衡,F1 Score则提供了综合评价。正确的评价标准选择取决于具体应用需求。

机器学习算法的主要用途之一就是 预测。通常,使用机器学习算法的流程是


question 》data 》feature 》 algorithm 》 hypothesis 》 evaluation


当数据通过 算法训练得到一个hypothesis之后,我们要用这个hypothesis对新的数据进行预测,那么在此之前,我们先要对这个hypothesis进行评估,判断它是否是一个好的hypothesis。


先约定一些变量

X_train: 用于训练的数据 matrix

Y_train: 用于训练的结果 vector


X_cv: 用于cross validation 的数据matrix

Y_cv: 用于cross validation 的结果vector (ps: cross validation 是用于选择更好的算法参数,从而得到更好的训练结果hypothesis)


X_test:  用于测试的数据matrix

Y_test: 用于测试的结果vector


model:   对X_train,Y_train训练得到的模型(一组参数,代表一个hypothesis)

Y_pred: 通过model对X_cv预测得到的结果vector


下面介绍一些常用的评价方式(以classification为例)

1,直接计算错误率


 error= mean(Y_pred != Y_cv);


这种方法很直观,就是看预测的结果和实际的结果有多少异同,可以判断预测的error,但有时候它做的还不够好。

比如对于一个癌症预测系统,复杂的机器学习算法预测error为1%,这个准确率看上去很好,但是数据集中患癌症的人的概率0.5%。如果有人的算法规则是 :y = 0 ,即对所有的人都预测为 “没有癌症”,那么他这个系统的错误率只有0.5%。

通过这个例子可以说明,对于hypothesis应该有多方面的评价,不能仅计算准确率。邮件分类系统有着同样情况。


2,Precision/Recall



同样是上述 癌症预测系统,如果采用 y=0的算法,根据recall的计算公式可知,recall=0,这足以说明 y=0不是一个好的hypothesis。


precision和recall之间的权衡


还是以癌症系统为例:

logistic regression : 0 <= h(x) <= 1

predict 1 if h(x) >= 0.5

predict 0 if h(x) < 0.5


case1: 只有在非常确定的情况下,才预测y=1(cancer),precision要高

--调整binary threshold, 把0.5改成0.7,或者更高。这种做法是说,当有70%的概率患癌症时,才预测为y=1。结果会得到 higher precision,lower recall


case2: 避免漏掉太多癌症案例(false negative要小)

--调整binary threshold,把0.5改为0.3或者更低。

结果就是 higher recall, lower precision


一般情况下,预测 当 h(x) >= threshold, y = 1 

precision 与recall存在下图的关系



3,F1 Score


当 P或者R为0时,F = 0, 当P和R都为1时,F = 1;所以,F Score越高,代表这个算法越好

F1 Score通过将 P和R两个数值组合起来,得到一个综合的对算法的评分,可以较好的指导选择算法


对于机器学习系统的评价标准有很多,对同一个系统,可以根据不同的需求使用不同的评价标准。

Always on the way


参考资料:

1,practical machine learning --Coursera

2,machine learning,lecture 7 --Coursera

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值