高偏差、高方差、低精确率与低召回率、混淆矩阵

来源:互联网 发布:linux 进入mysql 编辑:程序博客网 时间:2024/04/30 08:33

本文是个人理解

1.高偏差(high bias)与方差(high variance)

    偏差,可以理解为样本与模型预测结果的差距,可以使用平方差计算

    方差是样本y值与模型期望的差的平方和。

    模型对实验数据欠拟合(underfitting) 是会出现搞偏差,而过拟合(overfitting)会造成高方差

    解决方法:直接的方法是将实验数据一分为二:训练集和测试集。模型在训练集和测试集上都达到高正确率才说明偏差和方差都可以接受

                       增加体征的数量可以降低偏差;减少特征数量可以降低方差


2. 精确率(precision)与召回率(recall)

      ,  '真正' 与 '真负'总和中'真正'的比例。

     , 即 '真正' 与'假负'总和中真正的比例


     以新闻推荐举例。

      精确率可以理解为,所有推荐了的新闻中该推荐的新闻的比例。 比如,推荐了10篇新闻,其中8篇是应该推荐的

      召回率可以理解为,所有应该推荐的新闻中实际推荐了的新闻的比例。比如应该推荐10篇感兴趣的新闻,只推荐了其中的8篇。

      要平衡精确率和召回率,可以调节区分正负类别的概率临界值。 为提高精确率,可以提高概率临界值,使得正类别的判断更加

       保守;为了提高召回率,可以降低概率临界值,以增加正类别的数量

       

3. 混淆矩阵

   

在机器学习(人工智能领域),混淆矩confusionmatrix)是可化工具,特用于监督学习,在无监督学习一般叫做匹配矩矩阵的列表示预测类的实例,行表示实际类的实例,这样通过混淆矩阵的一些指标可以衡量算法的精度。
  
Predicted
    
Negative
    
Positive
    
Actual
    
Negative
    
a
    
b
    
Positive
    
c
    
d
  

  • a 表示伪的预测正确值
  • b表示伪的预测错误值
  • c 表示真的预测错误值
  • d 表示真的预测正确值
ACAccuracy=(a+d)/(a+b+c+d)
TPrecall or true positive rate = d/(c+d)
FPfalse positive rate = b/(a+b)
TN true negative rate= a/(a+b)
FNfalse negative rate = c/(c+d)
Pprecision  = d/(b+d)

     

原创粉丝点击