如何在自然中衡量事物的好坏?
人类从一无所有到如今主宰地球依靠的正是不断的寻求最优解,更是在极少数洞察宇宙规律的天才带领下总结出了客观规律并加以运用。
人类有了尺规才能衡量事物的长短,所以尺是一项天才的发明,它解决了按照一个纬度去衡量比较其他物体的问题。有了量化的标尺所以人才能批量制造工具,才不会担心与其他人的协作是否会功亏一篑,才使得更大范围的人类合作成为可能。举一反三,从一个纬度扩展到其他纬度便是扩展了知识版图,重构了人类社会的基础。
机器学习的整个体系应该如何评价呢?
怎么样的标准能够客观比较算法呢?
可以通过统计学检验来对比比较机器学习算法性能。
算法评估标准
回归问题
- mae
- mse
- amse
分类问题
- 准确度score
- 混淆矩阵
- 精准率
- 召回率
- roc曲线
- pr曲线
混淆矩阵
混淆矩阵的行数和列数一般是由分类算法的分类结果数目决定的,对于n各分类结果,混淆矩阵是nxn的矩阵,行和列的索引就是n个分类结果,其中行代表真实值,而列代表的是预测值。矩阵Axy每个网格里的值代表了真实值在x的情况下预测为y的数据样本个数。根据混淆矩阵得到的矩阵结果,我们可以再次定义两个评价指标,称为精准率precision和召回率recall,其中精准率precision=预测正确个数/预测总数,召回率recall=预测正确个数/真实所有个数。
精准率和召回率的算法评判指标的解读应该结合具体分析问题的方向和实际场景,不同的场景对于不同指标的侧重点是不一样的。比如在股票预测里面我们更加注重精准率,我们更加注重预测结果的准确度,而召回率低一点意味着我们漏掉了一些希望的结果,而这个影响不大;而在疾病预测里面召回率则更加重要,因为我们更加希望把确实患有疾病的人群检查出来,不想漏掉实际患病的人群,而此时预测的准确率低一点也没有关系。
也有一些情况并不是只关注精准率和召回率中的一个,而是需要同时兼顾精准率和召回率,这个指标有一个叫做F1score,它的指两者的调和平均值,而非简单的求取平均。它的特点是如果精准率和召回率一个特别大,一个特别小,则输出的F1 score则比较小,它可以防止正常平均时的一些判断偏差的情况,比较好的兼顾两者的共同大小。
精准率和召回率在机器学习算法的分类算法中是存在矛盾的,随着判断score判断阈值的提高,精准率会不断地增大,而召回率是不断减小的。
PR曲线,即precision-recall curve,它可以表示出机器学习分类算法的召回率随着精准率变化的曲线,通过对比可以看出不同算法的好坏,一般与x/y轴所围成的面积越大,其综合性能也就越好。
ROC曲线,描述TPR和FPR之间的关系,是统计学上经常用到的曲线和指标曲线,其主要的指标是ROC曲线与x轴所围成的面积roc-au_score,面积越大,则模型越好。另外,ROC曲线对于具有极偏数据是不敏感的。
额外参考资料 https://www.jianshu.com/p/715a1a5a4dbdhttps://www.cnblogs.com/asialee/p/9800039.html