Accuracy、Precision、Recall、F1 score、cross-validation交叉验证
一、参考
- 关于Precision、Recall、F1 score的在Youtube贪心学院的“自然语言处理NLP完整课程”–105
https://www.youtube.com/watch?v=2LveVagyiOY&list=PLt2F7ir0KONoH2HXXlKpBSmUKkokOgOvr&index=105 - 关于cross-validation交叉验证的在Youtube贪心学院的“自然语言处理NLP完整课程”–135、136、140
https://www.youtube.com/watch?v=Uzj6L8d67Ug&list=PLt2F7ir0KONoH2HXXlKpBSmUKkokOgOvr&index=136
二、原理
-
因为召回率和精确率是一个互斥的关系,一个上升肯定会导致一个的下降。故设计出了一种F1 score来作为召回率和精确率的平均的一个算法,F1 score既可以表示召回率又可以表示精确率。
-
如果想计算整体的样本的精确率和召回率的话,则需要分别求正样本和负样本的召回率、精确率以及F1 score,然后求和再/2(如果是2分类的话)
-
cross-validation交叉验证
-cv = 5,就是设计一个5行的每行分为5个空间的数据集,每行数据集从Traning dataset里出,分成四个train训练集和一个validation验证集。(假设选了10个λ作为范围,例如:λ=[0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0])分别把每一个λ带入求解平均准确率P,找到平均准确率P最大时的λ的值作为最终选择的确定超参数。
-所以cross-validation的作用就是从一个范围内选择最合适的值作为这个超参数的值。
-一般是在模型出现过拟合,加入正则化项的时候,用cross-validation来选择合适的超参数(例如:λ)。然后再训练模型参数w。
-只要涉及到了超参数的选择,就一定要用cross-validation来进行选择。