机器学习领域的算法评估有三个基本的指标。
- 召回率(Recall Rate,也叫查全率):是检索出的相关文档数和文档库中所有的相关文档数的比率,衡量的是检索系统的查全率。
召回率=系统检索到的相关文档数/系统所有相关文档的总数 - 准确率(Precision,也称为精度):是检索出的相关文档数与检索出的文档总数的比率,衡量的是检索系统的查准率。
准确率=系统检索到的相关文件/系统所有检索到的文件总数
注意:准确率和召回率是互相影响的,理想情况下肯定是做到二者都高,但是一般情况下,准确率高,召回率就低;反之亦然。
- F-Score:机器学习中常用的评价标准。其中,最常见的是F1-Measure,公式为:F1=2PR/(P+R)
文本分类项目的分类结果评估,代码如下:
from sklearn import metrice
def metrics_result(actual, predict):
print '精度:{0:.3f}'.format(metrics.precision_score(actual, predict,average='weighted'))
print '召回:{0:0.3f}'.format(metrics.recall_score(actual, predict,average='weighted'))
print 'f1-score:{0:.3f}'.format(metrics.f1_score(actual, predict,average='weighted'))
metrics_result(test_set.label, predicted)
注意:单独运行这个代码会报错,把这一部分加到贝叶斯模型的程序中运行,就可以得到正确的结果。