精华内容
下载资源
问答
  • 模型评估

    千次阅读 2019-06-09 20:20:32
    模型评估主要分为离线评估和在线评估两个阶段。针对分类、排序、回归、序列预测等不同类型的机器学习问题,评估指标的选择有所不同。 分类问题 分类模型的常用评估指标有准确率、精确率、回召率、F1...

    在机器学习领域中,为了检验训练好的模型性能,需要对模型进行评估。而且不同类型的模型所使用的评估方法也会有所差异。只有选择与问题相匹配的评估方法,才能快速地发现模型选择或训练过程中出现的问题,迭代地对模型进行优化。模型评估主要分为离线评估和在线评估两个阶段。针对分类、排序、回归、序列预测等不同类型的机器学习问题,评估指标的选择有所不同。

    1. 分类问题

    分类模型的常用评估指标有准确率、精确率、回召率、F1-score、ROC曲线等等。

    分类的混淆矩阵

    真实情况预测结果
    正例反例
    正例TP(真正例)FN(假反例)
    反例FP(假正例)TN(真反例)

    TP:预测为正例,真实为正例的样本数
    FP:预测为正例,真实为负例的样本数
    TN:预测为负例,真实为负例的样本数
    FN:预测为负例,真实为正例的样本数

    1.1 准确率

    准确率是指正确分类的样本占总样本个数的比例,即 A c c u r a c y = T P + T N T P + F P + T N + F N Accuracy=\frac{TP+TN}{TP+FP+TN+FN} Accuracy=TP+FP+TN+FNTP+TN其中 T P , T N TP,TN TP,TN为分类预测正确的样本数,分母为总样本数。

    准确率是分类问题中最简单也是最直观的评价指标,但存在明显的缺陷。比如,当负样本占99%时,分类器把所有样本都预测为负样本也可以获得99%的准确率。所以,当不同类别的样本比例非常不均衡时,占比大的类别往往成为影响准确率的最主要因素。

    1.2 精确率

    精确率是指预测的正例中真实的正例所占的比例。 P r e c i s i o n = T P T P + F P Precision=\frac{TP}{TP+FP} Precision=TP+FPTP其中,分母为预测为正例的样本数,分子为预测的样本中真实正例的样本数。

    1.3 召回率

    召回率是指真实的正例中预测为正例所占的比例。 R e c a l l = T P T P + F N Recall=\frac{TP}{TP+FN} Recall=TP+FNTP其中,分母为真实正例的样本数,分子为真正的正例中预测为正例的样本数。

    案例:视频推荐的模糊搜索功能,搜索排序模型返回的TOP 5的精确度非常高,但在实际使用过程中,用户还是经常找不到想要的视频,特别是一些比较冷门的视频,这是什么原因导致的呢?

    解答:在排序问题中,通常没有一个确定的阈值把得到的结果直接判定为正样本或负样本,而是采用Top N返回结果的Precision值和Recall值来衡量排序模型的性能,即认为模型返回的Top N的结果为模型判定的正样本,然后计算前N个位置上的准确率与召回率。
    Precision值和Recall值是从两个不同角度来评估模型的性能。为了提高Precision值,分类器要尽量在“更有把握”时才把样本预测为正样本(阈值较大),但是也会由于过于保守从而导致漏掉很多“没有把握”的正样本,使得Recall值降低。
    根据问题可知,模型返回的Precision@5结果非常好,但是用户经常找不到想要的视频,这说明模型没有把相关的视频都找出来呈现给用户。显然,问题出在召回率上。假如相关结果有100个,即使Precision@5达到了100%,但是Recall@5也仅仅是5%。

    思考:在模型评估时,是否应该同时关注Precision值和Recall值?进一步而言,是否应该选取不同的Top N结果进行观察呢?

    解答:为了综合评估一个排序模型的好坏,不仅要从Precision和Recall两个指标对模型进行评估,而且还要观察不同Top N下的Precision值和Recall值的变化。观察Precision与Recall的变化关系,可绘制P-R曲线进行观察。

    为了综合反映模型的性能,最常用的几种评估方法:P-R曲线,F1-score、ROC曲线等等

    1.4 P-R曲线(Precision-Recall)

    P-R曲线横坐标是召回率,纵坐标是精确率。。对于一个排序模型来说,其P-R曲线上的一个点代表着,在某一阈值下,模型将大于该阈值的结果判定为正样本,小于该阈值的结果判定为负样本,此时返回结果对应的召回率和精确率。整条P-R曲线是通过将阈值从高到低移动而生成的。如下图所示:

    由图可见,当召回率接近于0时,模型A的精确率为0.9,模型B的精确率是1,这说明模型B得分前几位的样本全部是真正的正样本,而模型A即使得分最高的几个样本也存在预测错误的情况。并且,随着召回率的增加,精确率整体呈下降趋势。但是,当召回率为1时,模型A的精确率反而超过了模型B。这充分说明,只用某个点对应的精确率和召回率是不能全面地衡量模型的性能,只有通过P-R曲线的整体表现,才能够对模型进行更为全面的评估。

    1.5 F1 score

    在介绍F1 score之前,先分析从Precision和Recall两个指标来综合评估模型性能。 F β = ( 1 + β 2 ) ∗ P ∗ R β 2 ∗ P + R F_{\beta}=\frac{(1+\beta ^2)*P*R}{\beta ^2*P+R} Fβ=β2P+R(1+β2)PR
    其中 β = R P \beta = \frac{R}{P} β=PR,度量这两者之间的相对关系。如果 β &gt; 1 \beta&gt;1 β>1,召回率占较大比重;如果 β &lt; 1 \beta&lt;1 β<1,精确率有更大的影响;当 β = 1 \beta=1 β=1,两者影响力相同,即F1 score: F 1 = 2 P R P + R F_1=\frac{2PR}{P+R} F1=P+R2PR

    1.6 ROC曲线

    ROC曲线,即曲线下的面积(Area Under Curve,AUC),是作为评估二值分类器最重要的指标之一。

    ROC曲线的横坐标是假阳性率(False Positive Rate,FPR);纵坐标为真阳性率(True Positive Rate,TPR)。TPR和FPR的计算公式如下: F P R = F P F P + T N FPR=\frac{FP}{FP+TN} FPR=FP+TNFP T P R = T P T P + F N TPR=\frac{TP}{TP+FN} TPR=TP+FNTP其中,TPR是指所有的真实正例中,预测为正例样本所占的比例,和召回率意义相同。FPR是指所有的负例中,预测为正例的样本所占的比例。

    思考:如何绘制ROC曲线?

    解答:事实上,ROC曲线是通过不断移动分类器的“截断点”来生成曲线上的一组关键点。在二值分类问题中,模型的输出一般都是预测样本为正例的概率。在输出最终的正例、负例之前,需要指定一个阈值,预测概率大于该阈值的样本预测为正例,小于该阈值的样本预测为负例。所谓的“截断点”就是区分正负预测结果的阈值。这样,通过动态地调整截断点,从最高的得分开始,逐渐调整到最低得分,每个截断点都会对应一个FPR和TPR,在ROC图上绘制每个截断点对应的位置,连接所有点得到最终的ROC曲线。

    如何计算AUC?

    AUC指的是ROC曲线下的面积大小,可通过沿着ROC横轴做积分计算得到,该值能够量化地反映基于ROC曲线衡量出的模型性能。AUC取值一般在0.5~1之间。AUC值越大,说明分类器越可能把真正的正样本排在前面,分类性能越好。

    思考:ROC曲线与P-R曲线相比有什么特点?

    解答:相比P-R曲线,ROC曲线有一个特点,当正负样本的分布发生变化时,ROC曲线的形状能够基本保持不变,而P-R曲线的形状一般会发生较剧烈的变化。下图是样本分布变化前与变化后的ROC曲线和P-R曲线。

    可以看出,当数据分布发生变化后,ROC曲线形状一般不会发生太大的变化,而P-R曲线变化较大。这个特点使得ROC曲线能尽量降低不同测试集带来的干扰,更加客观的衡量模型本身的性能。在很多实际问题中,正负样本数量往往很不均衡。比如,计算广告领域经常涉及转化率模型,正样本的数量往往是负样本数量的1/1000甚至1/10000。若选择不同的测试集,P-R曲线的变化就会非常大,而ROC曲线则能够更加稳定地反映模型本身的好坏。所以,ROC曲线的适用场景更多,被广泛用于排序、推荐、广告等领域。

    2. 回归问题

    由于回归模型的输出值为连续值,其模型的评估与分类模型评估有所差异。一般采用均方根误差、平均绝对误差、平均平方误差等等。

    2.1 平均绝对误差MAE

    平均绝对误差MAE,被称为L1: M A E = 1 n ∑ i = 1 n ∣ y i − y ^ i ∣ MAE=\frac{1}{n}\sum_{i=1}^n|y_i-\hat {y}_i| MAE=n1i=1nyiy^i

    2.2 平均平方误差MSE

    平均平方误差MSE,被称为L2: M S E = 1 n ∑ i = 1 n ( y − y i ) 2 MSE=\frac{1}{n}\sum_{i=1}^n(y-y_i)^2 MSE=n1i=1n(yyi)2

    2.3均方根误差RMSE

    均方根误差RMSE能很好地反映回归模型预测值与真实值的偏离程度。但在实际问题中,如果存在个别偏移程度非常大的离群点时,即使离群点数量非常少,也会让RMSE指标变得很差。 R M S E = ∑ i = 1 n ( y − y i ) 2 n RMSE=\sqrt {\frac{\sum_{i=1}^n(y-y_i)^2}{n}} RMSE=ni=1n(yyi)2

    案例:Hulu作为一家流媒体公司,拥有众多的美剧资源,预测每部美剧的流量趋势。对于广告投放、用户增长都非常重要。我们希望构建一个回归模型来预测某部美剧的流量趋势,但无论采用哪种回归模型,得到的RMSE指标都非常高。然而事实是,模型在95%的时间区间内的预测误差都小于1%,取得了相当不错的预测结果。那么,造成RMSE指标居高不下的最可能的原因是什么?
    解答:模型在95%的时间区间内的预测误差都小于1%,这说明,在大部分时间区间内,模型的预测效果都是非常优秀的。然而,RMSE却一直很差,这很可能是由于在其他的5%时间区间内存在非常严重的离群点。事实上,在流量预估这个问题中,噪声点确实是很容易产生的,比如流量特别小的美剧、刚上映的美剧或者刚获奖的美剧,甚至一些相关社交媒体突发事件带来的流量,都可能会造成离群点。

    针对“噪声点”对模型评估的影响,有什么解决方案呢?

    1. 在数据预处理的阶段把这些噪声点过滤掉;
    2. 如果不认为这些离群点是“噪声点”的话,需要进一步提高模型的预测能力,将离群点产生的机制建模进去;
    3. 找一个更合适的指标来评估该模型。关于评估指标,其实是存在比RMSE的鲁棒性更好的指标,比如平均绝对百分比误差,定义为 M A P E = ∑ i = 1 n ∣ y i − y ^ i y i ∣ × 100 n MAPE=\sum_{i=1}^n|\frac{y_i-\hat y_i}{y_i}|\times \frac{100}{n} MAPE=i=1nyiyiy^i×n100相比RMSE,MAPE相当于把每个点的误差进行归一化,降低了个别离群点带来的绝对误差的影响。
    展开全文
  • 当总共有个100 个样本(P+N=100)时,假如只有一个正例(P=1),那么只考虑精确度的话,不需要进行任何模型的训练,直接将所有测试样本判为正例,那么 A 能达到 99%,非常高了,但这并没有反映出模型真正的能力。...

    召回率和准确率是数据挖掘中预测、互联网中的搜索引擎等经常涉及的两个概念和指标
    召回率:Recall,又称“查全率”——还是查全率好记,也更能体现其实质意义。
    准确率:Precision,又称“精度”、“正确率”。

    以检索为例,可以把搜索情况用下图表示:

     
    相关
    不相关
    检索到
    A
    B
    未检索到
    C
    D

    A:检索到的,相关的                (搜到的也想要的)
    B:检索到的,但是不相关的          (搜到的但没用的)
    C:未检索到的,但却是相关的        (没搜到,然而实际上想要的)
    D:未检索到的,也不相关的          (没搜到也没用的)

    如果我们希望:被检索到的内容越多越好,这是追求“查全率”,即A/(A+C),越大越好。

    如果我们希望:检索到的文档中,真正想要的、也就是相关的越多越好,不相关的越少越好,

    这是追求“准确率”,即A/(A+B),越大越好。

     

    “召回率”与“准确率”虽然没有必然的关系(从上面公式中可以看到),在实际应用中,是相互制约的。

    要根据实际需求,找到一个平衡点。


    往往难以迅速反应的是“召回率”。我想这与字面意思也有关系,从“召回”的字面意思不能直接看到其意义。

    “召回”在中文的意思是:把xx调回来。“召回率”对应的英文“recall”,recall除了有上面说到的“order sth to return”的意思之外,还有“remember”的意思。

    Recall:the ability to remember sth. that you have learned or sth. that has happened in the past.

    当我们问检索系统某一件事的所有细节时(输入检索query查询词),

    Recall指:检索系统能“回忆”起那些事的多少细节,通俗来讲就是“回忆的能力”。

    “能回忆起来的细节数” 除以 “系统知道这件事的所有细节”,就是“记忆率”,也就是recall——召回率。简单的,也可以理解为查全率。 

      根据自己的知识总结的,定义应该肯定对了,在某些表述方面可能有错误的地方。
    假设原始样本中有两类,其中:

    1:总共有 P个类别为1的样本,假设类别1为正例。 
    2:总共有N个类别为0 的样本,假设类别0为负例。 
    经过分类后:
    3:有 TP个类别为1 的样本被系统正确判定为类别1,FN 个类别为1 的样本被系统误判定为类别 0,显然有P=TP+FN; 

    4:有 FP 个类别为0 的样本被系统误判断定为类别1,TN 个类别为0 的样本被系统正确判为类别 0,显然有N=FP+TN; 

     
    那么:
    精确度(Precision):
    P = TP/(TP+FP) ;  反映了被分类器判定的正例中真正的正例样本的比重( 准确率(Accuracy)
    A = (TP + TN)/(P+N) = (TP + TN)/(TP + FN + FP + TN);    

    反映了分类器统对整个样本的判定能力——能将正的判定为正,负的判定为负 
     
    召回率(Recall),也称为 True Positive Rate:
    R = TP/(TP+FN) = 1 - FN/T;  反映了被正确判定的正例占总的正例的比重 
     
    转移性(Specificity,不知道这个翻译对不对,这个指标用的也不多),也称为 True NegativeRate 

    S = TN/(TN + FP) = 1 – FP/N;   明显的这个和召回率是对应的指标,只是用它在衡量类别0 的判定能力。 

     
    F-measure or balanced F-score
    F = 2 *  召回率 *  准确率/ (召回率+准确率);这就是传统上通常说的F1 measure,另外还有一些别的F measure

     
    为什么会有这么多指标呢?
            这是因为模式分类和机器学习的需要。判断一个分类器对所用样本的分类能力或者在不同的应用场合时,需要有不同的指标。 当总共有个100 个样本(P+N=100)时,假如只有一个正例(P=1),那么只考虑精确度的话,不需要进行任何模型的训练,直接将所有测试样本判为正例,那么 A 能达到 99%,非常高了,但这并没有反映出模型真正的能力。另外在统计信号分析中,对不同类的判断结果的错误的惩罚是不一样的。举例而言,雷达收到100个来袭 导弹的信号,其中只有 3个是真正的导弹信号,其余 97 个是敌方模拟的导弹信号。假如系统判断 98 个(97 个模拟信号加一个真正的导弹信号)信号都是模拟信号,那么Accuracy=98%,很高了,剩下两个是导弹信号,被截掉,这时Recall=2/3=66.67%,Precision=2/2=100%,Precision也很高。但剩下的那颗导弹就会造成灾害。 

     
    因此在统计信号分析中,有另外两个指标来衡量分类器错误判断的后果:
    漏警概率(Missing Alarm)
    MA = FN/(TP + FN) = 1 – TP/T = 1 - R;  反映有多少个正例被漏判了(我们这里就是真正的导弹信号被判断为模拟信号,可见MA此时为 33.33%,太高了) 

     
    虚警概率(False Alarm)
    FA = FP / (TP + FP) = 1 – P;反映被判为正例样本中,有多少个是负例。 


           统计信号分析中,希望上述的两个错误概率尽量小。而对分类器的总的惩罚旧是上面两种错误分别加上惩罚因子的和:COST = Cma *MA + Cfa * FA。不同的场合、需要下,对不同的错误的惩罚也不一样的。像这里,我们自然希望对漏警的惩罚大,因此它的惩罚因子 Cma 要大些。 

           个人观点:虽然上述指标之间可以互相转换,但在模式分类中,一般用 P、R、A 三个指标,不用MA和 FA。而且统计信号分析中,也很少看到用 R 的。好吧,其实我也不是IR专家,但是我喜欢IR,最近几年国内这方面研究的人挺多的,google和百度的强势,也说明了这个方向的价值。当然,如果你是学IR的,不用看我写的这些基础的东西咯。如果你是初学者或者是其他学科的,正想了解这些科普性质的知识,那么我这段时间要写的这个"信息检索X科普"系列也许可以帮助你。(我可能写的不是很快,见谅)至于为什么名字中间带一个字母X呢? 

    为什么先讲PrecisionRecall呢?因为IR中很多算法的评估都用到PrecisionRecall来评估好坏。所以我先讲什么是"好人",再告诉你他是"好人"

    查准与召回(Precision & Recall

    先看下面这张图来理解了,后面再具体分析。下面用P代表PrecisionR代表Recall

       

       

    通俗的讲,Precision 就是检索出来的条目中(比如网页)有多少是准确的,Recall就是所有准确的条目有多少被检索出来了。

    下面这张图介绍True PositiveFalse Negative等常见的概念,PR也往往和它们联系起来。

       

    我们当然希望检索的结果P越高越好,R也越高越好,但事实上这两者在某些情况下是矛盾的。比如极端情况下,我们只搜出了一个结果,且是准确的,那么P就是100%,但是R就很低;而如果我们把所有结果都返回,那么必然R100%,但是P很低。

    因此在不同的场合中需要自己判断希望P比较高还是R比较高。如果是做实验研究,可以绘制Precision-Recall曲线来帮助分析(我应该会在以后介绍)。

       

       

    F1  Measure

    前面已经讲了,PR指标有的时候是矛盾的,那么有没有办法综合考虑他们呢?我想方法肯定是有很多的,最常见的方法应该就是F Measure了,有些地方也叫做F Score,都是一样的。

    F MeasurePrecisionRecall加权调和平均:

    F = (a^2+1)P*R / a^2P +R

    当参数a=1时,就是最常见的F1了:

    F1 = 2P*R / (P+R)

    很容易理解,F1综合了PR的结果。

    展开全文
  • 最近在复盘udacity 的机器学习的课程,现在来整理一下关于机器学习模型评估指标的相关知识。...学习模型评估指标常用的有几种:F-β得分(F1得分,F2得分等等,根据不同的业务实际需求来指定适合的β值),ROC...

    最近在复盘udacity 的机器学习的课程,现在来整理一下关于机器学习模型的评估指标的相关知识。

    不同数据集采用不同的模型进行训练,会得到完全不同的效果,那么如何衡量一个模型是否适合该数据集呢?在数据集训练后可以对一些指标进行运算,观察实际的效果,进行调整参数或者更换模型等等。

    学习模型的评估指标常用的有几种:F-β得分(F1得分,F2得分等等,根据不同的业务实际需求来指定适合的β值),ROC 曲线,回归指标包含:平均绝对误差,均方误差,R2分数等等

    1 混淆矩阵

    上图为检测特定疾病的例子,如果一个人检测出生病,那么成为阳性,如果检测结果是未生病则为阴性,阳性分为真阳性和假阳性,阴性分为真阴性和假阴性.

    如果一个病人检测出生病,则为真阳性 (True Positive ,TP)

    如果一个病人检测为健康,则为假阴性(False Negative,FN);

    如果一个健康人检测出生病,称为假阳性 (False Positive,FP);

    如果一个健康人检测为健康,称为真阴性(True Negative,TN)

    由上面四种状态构成的矩阵称之为混淆矩阵。

    再看一个检测垃圾邮件的例子:

    上图是对应的混淆矩阵,假设一封邮件检测出是垃圾邮件时候称为阳性,那么

    当一封垃圾邮件被检测出是垃圾邮件的时候称为真阳性(True Positive ,TP);

    当一封垃圾邮件被检测出是正常邮件时候称为假阴性(False Negative,FN);

    当一封正常的邮件被检测出是垃圾邮件时候称为假阳性(False Positive,FP);

    当一封正常的邮件被检测出是正常邮件时候,称为真阴性(True Negative,TN);

    2 准确率

    准确率 = 所有检测正确的点/所有的点


    从上面的图中可以看到,所有检测正确的点(病人被检测出生病的人数+健康人被检测出健康的人数),(真阳性+真阴性)/所有。

    但是不是所有正确率高的模型就是符合要求的,下面来看一个检测信用卡欺诈行为的例子

    从上面的图中看出,左侧是信用卡的良好记录:284335条,右侧是欺诈行为记录 472条,那么如果一个模型预测所有的记录都是良好记录,那么这种情况下,该模型的准确率是 284335/(284335+472),达到99.83%,可以看出该模型的准确率很高,但并不满足我们的需求,因为丝毫没有检测出欺诈行为,因此,引入了精度和召回率的概念。

     3 精度

    精度的定义是 在所有检测为阳性的点中,有多少是真的阳性,在医疗检测模型中即在所有检测为生病的数据中,有多少是真的生病了

    垃圾邮件的检测例子中,精度表示在检测出是垃圾邮件的所有邮件中有多少真的是垃圾邮件

     在上面两个例子中,想一下哪些情况是必须避免的,不能容忍的:

    在医疗模型中,如果一个病人被检测出健康这种情况是不允许发生的

    在垃圾邮件检测模型中,如果一封正式邮件被检测为垃圾邮件而被放入垃圾箱中,这种情况是不能允许的

    从精度的定义来看,垃圾邮件检测是对精度有要求的,而医疗模型对精度是没有要求的。

    4 召回率

    召回率的定义为在所有阳性的数据中有多少被检测出是阳性,在医疗模型中,召回率表示在所有生病的人群中有多少人被检出出生病

    在垃圾邮件检测模型中,召回率表示在所有垃圾邮件中有多少是被检测出来是垃圾邮件

     

    由此看出 医疗模型是要求召回率高的模型,而垃圾邮件检测是高精度的模型

    5 F1得分

    对于一个模型评估指标是两个(精度和召回率),评估起来会比较麻烦,因此将精度和召回率合成一个指标F1分数(即为精度和召回率的调和平均数)

    6 F-β得分

    F-β得分 是比F1 得分更广泛的一种评估指标,F1 是 F-β ,β=1的情况,具体公式如下:

     

     β 可以根据具体业务情况来选择β的值,进而对模型进行评估

    从上面图中可以看出 β 值越大,得分就越靠近召回率,β越小得分越靠近精度,

    如果是一个要求高召回率的模型就选择β较大的得分作为评估标准

    如果是一个要求高精度的模型就选择β较小的得分作为评估标准。

     

    展开全文
  • 1.6模型评估 学习目标 了解机器学习中模型评估的方法 知道过拟合、欠拟合发生情况 -  模型评估是模型开发过程不可或缺的一部分。它有助于发现表达数据的最佳模型和所选模型将来工作的性能如何。  按照数据集的...

    1.6模型评估

    学习目标

    • 了解机器学习中模型评估的方法
    • 知道过拟合、欠拟合发生情况


      模型评估是模型开发过程不可或缺的一部分。它有助于发现表达数据的最佳模型和所选模型将来工作的性能如何。
      按照数据集的目标值不同,可以把模型评估分为分类模型评估和回归模型评估。

    1 分类模型评估

    在这里插入图片描述

    • 准确率
      • 预测正确的数占样本总数的比例。
    • 其他评价指标:精确率、召回率、F1-score、AUC指标等

    2 回归模型评估

    在这里插入图片描述
    均方根误差(Root Mean Squared Error,RMSE)
    RMSE是一个衡量回归模型误差率的常用公式。不过,它仅能比较误差是相同单位的模型。
    在这里插入图片描述
    a=actual target (真实值)
    p=predicted target(预测值)

    举例:
      假设上面的房价预测,只有五个样本,对应的
      真实值为:100,120,125,230,400
      预测值为:105,119,120,230,410
    那么使用均方根误差求解得:
    在这里插入图片描述
    其他评价指标:相对平方误差(Relative Squared Error,RSE)、平均绝对误差(Mean Absolute Error,MAE)、相对绝对误差(Relative Absolute Error,RAE)

    3 拟合


      模型评估用于评价训练好的的模型的表现效果,其表现效果大致可以分为两类:过拟合、欠拟合。
      在训练过程中,你可能会遇到如下问题:
      训练数据训练的很好啊,误差也不大,为什么在测试集上面有问题呢?
      当算法在某个数据集当中出现这种情况,可能就出现了拟合问题。

    3.1 欠拟合

    在这里插入图片描述
      因为机器学习到的天鹅特征太少了,导致区分标准太粗糙,不能准确识别出天鹅。
      欠拟合(under-fitting):模型学习的太过粗糙,连训练集中的样本数据特征关系都没有学出来

    3.2 过拟合

    在这里插入图片描述
      机器已经基本能区别天鹅和其他动物了。然后,很不巧已有的天鹅图片全是白天鹅的,于是机器经过学习后,会认为天鹅的羽毛都是白的,以后看到羽毛是黑的天鹅就会认为那不是天鹅。
      过拟合(over-fitting):所建的机器学习模型或者是深度学习模型在训练样本中表现得过于优越,导致在测试数据集中表现不佳。

    • 上问题解答:
      • 训练数据训练的很好啊,误差也不大,为什么在测试集上面有问题呢?

    4 小结

    • 分类模型评估【了解】
      • 准确率
    • 回归模型评估【了解】
      • RMSE–均方根误差
    • 拟合【知道】
      • 举例–判断是否是人
      • 欠拟合
        - 学习到的东西太少
        - 模型学习的太过粗糙
      • 过拟合
        - 学习到的东西太多
        - 学习到的特忙多,不好泛化

    文章对您有所帮助的话点个赞吧!!!
    👇👇👇

    展开全文
  • 模型评估-评估指标

    千次阅读 2018-11-08 11:53:06
    模型评估指标小结 原文链接: https://blog.csdn.net/shine19930820/article/details/78335550 https://blog.csdn.net/u014182497/article/details/79384233 模型评估是模型开发过程的不可或缺的一部分。它有助于...
  • 机器学习模型需要有量化的评估指标来评估哪些模型的效果更好。 本文将用通俗易懂的方式讲解分类问题的混淆矩阵和各种评估指标的计算公式。将要给大家介绍的评估指标有:准确率、精准率、召回率、F1、ROC曲线、AUC...
  • sklearn模块学习之-模型评估f1_score

    千次阅读 2018-07-20 20:54:40
    from sklearn.metrics import f1_score &gt;&gt;&gt; y_true = [0, 1, 2, 0, 1, 2] &gt;&gt;&gt; y_pred = [0, 2, 1, 0, 0, 1] &gt;&gt;&gt; f1_score(y_true, y_pred, ...
  • 机器学习模型评估

    2020-02-25 19:45:25
    机器学习模型评估: 准确率、精确率、召回率、F1-score。 ROC曲线和AUC值。
  • 本篇博客让我们来学习分类模型评估。 涉及到的知识点有: 混淆矩阵 评估指标(正确率、准确率、召回率、调和平均值F1) ROC和AUC 那我们快开始吧! 分类模型评估1、分类模型主题:如何对分类模型进行评估目标:2、...
  • 建模的评估一般可以分为回归、分类和聚类的评估,本文主要介绍回归和分类的模型评估: 一、回归模型的评估 主要有以下方法: 指标 描述 metrics方法 Mean Absolute Error(MAE) 平均绝对误差 from ...
  • 2.模型评估方法之数据集划分 在机器学习任务中,拿到数据后,我们首先会将原始数据集分为三部分:训练集、验证集和测试集。  训练集用于训练模型,验证集用于模型的参数选择配置,测试集对于模型来说是未知数据,...
  • 模型评估分为离线评估和在线评估两个阶段。针对不同问题(分类、排序、回归、序列预测、NLP任务、CV任务等等),评估指标选择不同。评估指标的灵魂是选择和根据反馈的模型调整。 问1:准确率的局限性。 当不同类别的...
  • 混淆矩阵是机器学习中总结分类模型预测结果的情形分析表,以矩阵形式将数据集中的记录按照真实的类别与分类模型预测的类别判断两个标准进行汇总。其中矩阵的行表示真实值,矩阵的列表示预测值。 一类错.
  • 模型评估及评估指标

    千次阅读 2019-04-27 16:56:20
    1 模型评价 2 评价指标 2.1 一级指标 序号 一级指标 真实值 模型预测值 说明 1 TP True Positive 真正,即真实值和预测值均是正样本,表示预测正确 2 TN True Negative 真负,即...
  • 回归模型评估An introduction and intuition, how evaluate regression and Classification model in general 介绍和直觉,一般如何评估回归和分类模型 1.简介 (1. Introduction) Data scientists often use ...
  • 预测模型评估

    千次阅读 2019-07-22 16:11:14
    一、模型的偏差与方差 所描述的事情本质上就是过拟合和欠拟合。 偏差描述的是模型预测准不准,低偏差就是表示模型预测能力是不错的,就像图中的点都在靶心附近。 方差描述的是模型稳不稳定,就像图中高方差的那些...
  • 机器学习中对分类器的评估参考以下的评价指标,主要包括准确率(Accuracy),精确率(Precision),召回率(Recall),F1-Score。接下来的描述主要是以二分类举例,即label为0和1的情况。 (一)理解TP, TN, FP, FN ...
  • 精准率、召回率分类准确度混淆矩阵精准率&召回率为什么精准率召回...如果去训练机器学习模型,但是最后准确率有99%,但其实这个模型还是失败的,即使这个模型什么都不做,完全输出无癌症,依然能有99.9%的准确率。
  • 模型评估分类模型评估回归模型评估拟合欠拟合过拟合 模型评估是模型开发过程不可或缺的一部分。它有助于发现表达数据的最佳模型和所选模型将来工作的性能如何。 按照数据集的目标值不同,可以把模型评估分为分类...
  • 正类和负类的比例失衡,比如存在99%的正类和1%的负类,当算法的输出恒为1时,此时的错误率也只有1%,在这种情况下,并不能够很好地估计模型的泛化能力。 定义 TP(True Positive),表示模型预测为正样本,实际...
  • 模型评估总结

    万次阅读 2018-02-27 10:30:27
    模型评估是模型开发过程的不可或缺的一部分。它有助于发现表达数据的最佳模型和所选模型将来工作的性能如何。在数据挖掘中,使用训练集中的数据评估模型性能是不可接受的,因为这易于生成过于乐观和过拟合的模型。...
  • sklearn模型评估

    千次阅读 2019-03-31 20:05:52
    常用的分类评估指标包括: accuracy_score, f1_score, precision_score, recall_score等等。 常用的回归评估指标包括: r2_score, explained_variance_score等等。...常用的聚类评估指标包括: ...分类模型评估...
  • 最近正发愁如何给自己搭建的深度学习模型的预测结果做评估,心里还想着是不是还得靠自己来编写。结果今天,一个阳光明媚的早春清晨,一搜,发现了这篇博文,详细介绍了sklearn...sklearn中的模型评估-构建评估函数 ...
  • 模型评估常用指标

    2020-01-23 12:06:50
    模型评估常用方法? 一般情况来说,单一评分标准无法完全评估一个机器学习模型。只用good和bad偏离真实场景去评估某个模型,都是一种欠妥的评估方式。下面介绍常用的分类模型和回归模型评估方法。 分类模型常用...
  • 模型评估通常作为建模的最后一步,用于评估模型效果,判别该模型是否达到预期。连续性预测模型常用的是`MAPE/RMSE`,而分类常用`AUC/accuracy/recall/specify`等等。本文将介绍常用的评估指标,并对应指出各指标的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 15,689
精华内容 6,275
关键字:

f1模型评估