講解幾個數據分析的常用指標

2021-01-09 運營之術

評價指標是評判數據表現的衡量標準,它是數據分析中非常重要的部分,也是產品經理必須掌握的重點內容。不同的數分任務採用不同的評價指標,對於同一種任務在不同場景下也會採用不同的評價指標。

例如在檢測垃圾郵件這個場景中,這是一個典型的二分類問題,所以可以用精確率和AUC曲線這兩個指標判斷模型的效果;在人臉識別場景中,使用誤識率、拒識率和ROC曲線這三個指標評判模型的效果。

不同指標的著重點不一樣,一個指標在不同場景下適用性可能不一樣,產品經理需要學習不同指標的特性,在項目中根據實際需要選擇不同的評價指標。下文中我們重點講解一些產品經理常用的評價指標。

01 混淆矩陣

混淆矩陣(Confusion Matrix)是評價模型精度的一種標準格式,用一個N行N列的矩陣形式來表示。矩陣每一列代表預測值,每一行代表實際值。

從混淆矩陣的名字不難看出來,它的作用是表明多個類別之間是否有混淆,也就是模型到底判斷對了多少個結果,有多少個結果判斷錯了。同時混淆矩陣能夠幫助我們理解準確率、精確率和召回率的區別。

面對一個二分類問題時,通常我們會將結果表示為正類與負類,兩者可以隨意指定。在上述區分貓狗圖片的例子中,我們假定貓為正類、狗為負類。那麼在實際進行預測的時候就會出現四種情況,如下圖所示:

混淆矩陣

如果這張圖片是貓,機器預測出來的結果也是貓,這種情況稱為真正類(True Positive,以下簡稱TP);

如果這張圖片是狗,機器預測出來的結果也是狗,這種情況稱為真負類(True Negative,以下簡稱TN);

如果這張圖片是貓,機器預測出來的結果是狗,這種情況稱為假負類(False Negative,以下簡稱FN);

如果這張圖片是狗,機器預測的結果是貓,則為假正類(False Positive,以下簡稱FP)。

02 準確率

準確率(Accuracy)是指預測正確的樣本佔總樣本的比例,即模型找到的真正類與真負類與整體預測樣本的比例。用公式表示為:

Accuracy=(TP+TN)/(TP+TN+FP+FN)準確率的取值範圍為[0,1],一般情況下取值越大,代表模型預測能力越好。

假設上述貓狗圖片分類的例子中,貓狗圖片各有500張。最後模型預測的結果中真正類有318個,真負類有415個,假正類有75個,假負類有182個。根據準確率的定義可以算出來目前模型的準確率為:(318+415)/(1000)=0.73。

準確率是評價模型效果最通用的指標之一,描述模型找到「真」類別的能力。也就是說模型準確識別出貓和狗的概率為0.73。但是在使用的時候有兩點需要我們注意。首先是準確率沒有針對不同類別進行區分,最後求得的準確率對每個類別而言是平等對待的,這種評價方式在很多場景下是有欠缺的。

在本例中,雖然可以看到模型的整體準確率是73.30%,但是從結果中明顯可以看出來,模型對於貓的識別效果遠不如對狗的識別效果。如果我們模型的目的是為了把貓的圖片挑出來,那麼這個準確率就有些虛高。

在實際的病患診斷中,計算機診斷出某患者患有癌症,實際上卻未患癌症與計算機診斷出某患者未患有癌症,而實際上卻患有癌症這兩種情況的重要性不一樣,不能一概而論。我們需要明確後續是降低誤診率還是提高確診率,才能讓後續模型優化更有針對性。

另外在正負樣本極不平衡的情況下,準確率這個指標存在很大的缺陷。例如在銀行的全量客戶中,要尋找適合推薦信託產品的超高淨值客戶是非常難的。因為這部分人群要求存款較多、收入較高,比較稀少,往往只有萬分之一的概率。

如果一個預測客戶適不適合信託產品的模型用準確率去評判,哪怕模型把全部客戶預測成負類,即全部都是不適合的情況,那麼這個模型的精度也有 99% 以上。

但這個指標就失去了原有的意義,因為無法找到任何高淨值的人群。所以我們一再強調,沒有萬能的指標,根據場景選擇合適的指標非常重要。

03 精確率與召回率

精確率(Precision)和召回率(Recall)是一對好兄弟,雖然是兩個不同的評價指標,但它們互相影響,通常一起出現。在很多書上又把精確率稱為查準率,把召回率稱為查全率。

召回率是針對原始樣本而言的指標,它表示原始樣本中的正例有多少被預測正確。

原始樣本中的正例有兩種情況,一種是把原來的正類預測成正類(TP),另一種就是把原來的正類預測為負類(FN),這兩種情況組成了原始樣本所有的正例。計算公式為:

Recall=TP/(TP+FN) 上述模型中識別貓類圖片的召回率為:

318/(318+182)=0.63從這個角度可以看出來總共500張貓的圖片,模型只找對了318張,相比準確率而言,召回率更真實地反應了模型的效果。

而精確率是針對預測結果而言的指標,它表示預測為正類的樣本中有多少是對的。預測結果為正例有兩種情況,一種就是把正類預測為正類(TP),另一種就是把負類預測為正類(FP)。所以精確率的計算公式為:

Precision=TP/(TP+FP)即上述模型中識別貓類圖片的精確率為:

318/(318+75)=0.81從這個指標可以看出來模型總共把393張圖片預測為貓,其中只有318張圖片預測正確。所以模型可能存在欠擬合的情況,將部分狗的照片判斷成貓,判斷為正類的條件太寬鬆。下一步優化的時候可以選擇適當降低條件以此提高模型效果。如下圖所示可以看出精確率與召回率的區別:

精確率與召回率

在理想情況下,我們希望精確率和召回率兩者都越高越好。

然而事實上這兩者在很多情況下是互相矛盾的。當召回率變高時意味著需要儘可能找到原始樣本的正例,因此模型覆蓋的數量會變多,模型就更高的機率犯錯,將原本不屬於該分類的樣本也加進來,這就導致精確率下降。

如果我們希望模型儘可能多得找出貓的圖片,我們會想辦法提高召回率;如果我們希望模型找到的圖片少一點但找出來的都是貓的圖片,我們會想辦法提高精確率。

有兩個很典型的場景可以說明這兩個指標實際運用的區別,一個是對於地震的預測,我們希望儘可能預測到所有的地震,哪怕這些預測到的地震中只有少數真正發生了地震,在這個時候我們就可以犧牲精確率。

寧願發出100次警報,但是把10次真實的地震都預測對了,也不希望預測了10次但是只有8次真實的地震被預測出來了,因為只要有1次地震沒被發現都會造成巨大的損失。因此這是一個「寧可抓錯,不可放過」的場景。

還有一種是垃圾郵件分類的場景,我們希望模型能夠儘可能找到所有垃圾郵件,但是我們更不希望把自己正常的郵件被分到垃圾郵件中,哪怕是一封正常的郵件,這會對用戶造成很嚴重的後果。對於少數沒有被識別出來的垃圾郵件,其實用戶是可以容忍的。

這時候我們寧可少分類成垃圾郵件,但必須確保分的都是對的,這就是一個「寧可放過,不可抓錯」的場景。因此在不同的場合中,需要產品經理根據實際情況,自己判斷希望是精確率比較高或是召回率比較高。

另外精確率和準確率是比較容易混淆的兩個評估指標,兩者的核心區別在於:精確率是一個二分類指標,只適用於二分類任務,而準確率能應用於多分類任務。

04 ROC曲線

在邏輯回歸的分類模型裡,對於正負例的界定,通常會設一個閾值。大於閾值的樣本判定為正類,小於閾值的樣本為負類。如果我們減小這個閾值,會讓更多的樣本被識別為正類,從而提高了正類的識別率,但同時也會使得更多的負類被錯誤識別為正類。

直接調整閾值可以提升或降低模型的精確率和召回率,也就是說使用精確率和召回率這對指標進行評價時會使得模型多了「閾值」這樣一個超參數,並且這個超參數會直接影響模型的泛化能力。在數學上正好存在ROC曲線能夠幫助我們形象化地展示這個變化過程。

ROC曲線是一個畫在二維平面上的曲線,平面的橫坐標是假正類率(FalsePositive Rate,簡稱FPR),計算公式為:

FPR=FP/(FP+TN)縱坐標是真正類率(True Positive Rate,簡稱TPR),計算公式為:

TPR=TP/(TP+FN)對於一個分類器而言,每一個閾值下都會有一個FPR和TPR,這個分類器就可以映射成ROC平面上的一個點。當我們調整這個分類器分類時使用的閾值,就可以得到一個經過(0,0),(1, 1)的曲線,這條曲線就是這個分類器的ROC曲線,如下圖所示。

ROC曲線

從圖中可以看到,所有算法的ROC曲線都在y=x這條線的上方,因為y=x表示了隨機的猜測的概率。所有二分類問題隨便猜正確或不正確都是50%的準確率。

一般情況下不存在比隨機猜測的準確率更糟糕的算法,因為我們總是可以將錯誤率轉換為正確率。如果一個分類器的準確率是40%,那麼將兩類的標籤互換,準確率就變為了60%。

從圖中可以看出來,最理想的分類器是到達(0,1)點的折線,代表模型的準確率達到100%,但是這種情況在現實中是不存在的。如果我們說一個分類器A比分類器B好,實際上我們指的是A的ROC曲線能夠完全覆蓋B的ROC曲線。如果有交點,只能說明A在某個場合優於B,如下圖所示。

分類器A與分類器B的ROC曲線

ROC曲線通常搭配著它對應的比率圖一起使用,我們繼續用貓狗圖片分類的例子說明這兩個圖怎麼看。原本我們貓狗的圖片各有500張,如所示圖形的X軸代表預測的概率值,Y軸代表觀察的數量。

假設我們用一個新的分類器對圖片進行分類,分類結果用黑色線代表狗圖片的分布,用灰色代表貓圖片的分布。模型給出的分值越高代表模型判斷這張圖片是貓的把握越大,反之模型的給出的分值越低代表模型判斷這張圖片不是貓的把握越大,也就是說這張圖片更有可能是狗。

從下圖中可以看出來這個分類器的分類效果還是挺好的,基本上基本把兩個物群的分布分開,ROC曲線也非常靠近(0,1)這個點。

某分類器下的ROC曲線

如上圖所示,如果將閾值設為0.3,左邊劃線部分的面積代表模型判斷為狗的圖片數量有300張左右,並且從圖中可以看出來這300張圖片全部分類正確。

如果將閾值設為0.5,則左邊劃線部分的面積代表模型判斷為狗的圖片有530張左右,從圖中重疊部分可以看出來大約有40個分類結果是包含錯誤分類的,這些錯誤分類包括實際是狗的圖片被分成貓的情況以及實際是貓的圖片被分類成狗的情況。

0.3閾值與0.5閾值下的分類結果

這時候我們用另外一個分類器再進行分類,結果如圖3-16所示。可以看到整個分類結果向右偏移,同時模型的效果變差,因為兩個分類結果重疊的部分變大,無論我們把閾值設在哪裡都會比上一個分類器產生更多的錯誤分類。

假如這時我們採用「寧可抓錯,不可放過」的原則把閾值設置為0.8,則右邊劃線部分只有200個左右不會被分類為狗的圖片,其餘800個結果全部會被判定為狗的圖片,儘管這裡面有350個分類結果是錯誤的結果。

新的分類器下的ROC曲線

從上述例子中看出來,ROC曲線可以幫助我們從圖像的角度分辨兩個分類結果的分布情況以及選擇模型合適的閾值。因此也是很多產品經理比較喜愛的指標之一。

這時很多讀者可能會有疑問,既然已經有那麼多評價標準,為什麼還要使用ROC呢?

原因在於ROC曲線有個很好的特性:當測試集中的正負樣本的分布變換的時候,ROC曲線能夠保持不變。在實際的數據集中經常會出現樣本類不平衡,即正負樣本比例差距較大,而且測試數據中的正負樣本也可能隨著時間變化,使用ROC曲線不管是數據集怎麼變換,都有直觀的展示效果。

05 AUC值

ROC曲線一定程度上可以反映分類器的分類效果,但始終是以圖像的形式,不能告訴我們直接的結果。我們希望有一個指標,這個指標越大代表模型的效果越好,越小代表模型的效果越差。於是引入了AUC值(Area Under Curve)的概念。

AUC是數據分析中最常用的模型評價指標之一,實際上AUC代表的含義就是ROC曲線下的面積,如下圖所示,它直觀地反映了ROC曲線表達的分類能力。AUC值通常大於0.5小於1,AUC(面積)越大的分類器,性能越好。

AUC值的圖形展示

AUC值的定義是:從所有正類樣本中隨機選取一個樣本,再從所有負類樣本中隨機選取一個樣本,然後分類器對這兩個隨機樣本進行預測,把正類樣本預測為正類的概率為p1,把負類樣本預測為正類的概率為p0,p1>p0的概率就等於AUC值。

即AUC值是指隨機給定一個正樣本和一個負樣本,分類器輸出該正樣本為正的概率值比分類器輸出該負樣本為正的那個概率值要大的可能性,AUC值越高代表模型的排序能力越強。理論上,如果模型把所有正樣本排在負樣本之前,此時AUC的取值為1,代表模型完全分類正確,但這種情況在實際中不可能出現。

總結AUC值的四種取值結果有:

AUC=1時,代表採用這個預測模型,不管設定什麼閾值都能得出完美預測,模型能夠將所有的正樣本都排在負樣本前面。但是在現實中不存在完美的分類器。

0.5<AUC<1時,代表模型的效果比隨機猜測的準確率高,也就是說模型能夠將大部分的正樣本排在負樣本前面,模型有一定的預測價值。

AUC=0.5時,代表模型的預測效果與隨機猜測一樣,只有50%的準確率。也就是說模型完全不能區分哪些是正樣本哪些是負樣本,沒有預測價值。

AUC<0.5時,代表模型的預測效果比隨機猜測還差;但只要將樣本正負例互換,結果就能優於隨機猜測。

作者:阿翹 《100個案例搞懂人工智慧》作者,平安科技資深產品經理。主要研究產品策劃、人工智慧與網際網路商業。

相關焦點

  • 常用的數據分析方法及案例講解
    常用的數據分析方法有描述統計、信度分析、相關分析、回歸分析、聚類分析等。本文將結合實際案例,為大家一一講解這些數據分析的方法。如果你想了解如何做數據分析,就接著看下去吧~描述性統計分析是通過圖表或數學方法,對數據資料進行整理、分析,並對數據的分布狀態、數字特徵和隨機變量之間關係進行估計和描述的方法。這也是我們在日常生活最常用的一種數據分析方法,因此這裡就不再用案例展開講解了。2、信度分析信度即可靠性,它是指採用同樣的方法對同一對象重複測量時所得結果的一致性程度。企業在招聘員工時會有一套性格測試題,這裡面就用到了信度分析。
  • 需要重點關注的SEM幾個數據分析常用指標!
    在推廣中,在帳戶後臺有非常多的數據報告和指標。這其中,哪些是有用的哪些又是沒用的呢?先說下需要常關注的一些重點指標和指標分析:1、展現不管是搜索也好信息流也好,展現是第一環節,我們首要就是擴大展現。但這並不等於說,展現越大越好,最終還是要看效果。如果你效果不好,光展現很好也沒有用,畢竟推廣是看轉化,不是看曝光。
  • SEM數據分析常用指標,這些要重點關注!
    先說下需要常關注的一些重點指標和指標分析:不管是搜索也好信息流也好,展現是第一環節,我們首要就是擴大展現。但這並不等於說,展現越大越好,最終還是要看效果。如果你效果不好,光展現很好也沒有用,畢竟推廣是看轉化,不是看曝光。而且單純只看展現,那麼可以全帳戶智能匹配。總結一句話,追求高展現,但不過分追求。
  • App 數據分析的常用指標有哪些?
    這個問題還是稍微有點寬泛了,首先App有很多不同的類型,涉及各行各業,其次,不同行業的App也會涉及到不同內容的數據分析,所以想要準確的回答題主的問題恐怕有些難度。其實綜合上述的客戶需求,常用到的App數據分析指標已經比較明顯了:1、用戶數據監測用戶的下載、註冊、瀏覽、點擊、退出、付款等行為是進行App數據分析的基礎數據來源,需要及時對這些數據進行收集、整理,如果能夠藉助BI工具,比如DataFocus,對這些數據進行實時展示,監測數據的變動情況就再好不過了~~廣告投放效果分析有時候公司花了很大的金錢和精力去不同渠道投放廣告
  • 數據分析最基礎的元素:數據指標
    先思考這幾個問題。01 什麼是數據指標數據指標是企業運營過程中,對已記錄歷史信息進行處理,轉化成為數字。根據特定商業目的:對相關數字按一定的業務邏輯,使用一定的技術手段進行加工處理後,成為描述、衡量、分析、預測業務結果的工具。這個定義是我自己的理解和經驗總結。1、數據指標核心是服務商業的。例如:讓你很清楚公司的經營狀況。
  • 常用數據分析方法:方差分析及實現!
    方差分析是一種常用的數據分析方法,其目的是通過數據分析找出對該事物有顯著影響的因素、各因素之間的交互作用及顯著影響因素的最佳水平等。本文介紹了方差分析的基礎概念,詳細講解了單因素方差分析、雙因素方差分析的原理,並且給出了它們的python實踐代碼。
  • 論文常用數據分析方法分類總結-4
    論文常用數據分析方法分類總結-2論文常用數據分析方法分類總結-316.主成分分析和因子分析都是信息濃縮的方法,即將多個分析項信息濃縮成幾個概括性指標。如果希望進行將指標命名,SPSSAU建議使用因子分析。原因在於因子分析在主成分基礎上,多出一項旋轉功能,該旋轉目的即在於命名。
  • 數據分析的幾種常用方法概覽
    數據分析常用方法概覽(之一) 對數據進行分析的方法很多,常用的有對比分析法、分組分析法、結構分析法、交叉分析法、漏鬥圖分析法、矩陣分析法、綜合評價分析法、5W1H分析法、相關分析法、回歸分析法、 聚類分析法、判別分析法、主成分分析法、因子分析法、時間序列、方差分析等等。
  • 論文常用數據分析方法分類總結-3
    論文常用數據分析方法分類總結-211.權重研究有多種方法包括:因子分析、熵值法、AHP層次分析法、TOPSIS、模糊綜合評價、灰色關聯等。因子分析:因子分析可將多個題項濃縮成幾個概括性指標(因子),然後對新生成的各概括性指標計算權重。
  • 五種常用大數據分析方法
    ,是將兩個或兩個以上相互聯繫的指標數據進行比較,分析其變化情況,了解事物的本質特徵和發展規律。  在數據分析中,常用到的分3類:時間對比、空間對比以及標準對比。  時間對比:  最常用的就是同比和環比,通過時間周期的數據對比,了解目前數據水平的高低  同比:某個周期的時段與上一個周期的相同時段比較,如今年的6月比去年的6月,本周的周一比上周的周一等等。
  • 描述性統計分析,掌握常用指標,進入數據分析大門
    在數據分析的工作中,統計學可謂是靈魂角色,正是通過統計,讓我們獲得海量的數據,也正是通過統計學的各種分析策略,讓數據變得有意義。在這時,使用描述性統計分析,利用圖形和簡單的計算,就能讓我們了解到數據信息的整體情況,還能讓我們觀察到數據的特徵和異常問題,十分便捷。常用的描述性統計分析有4個指標,分別是:平均值四分位數標準差標準分通過這4個指標的計算和圖形視覺化展示,讓我們發現「噢!原來這些數據是這樣的情況!」。
  • SEM優化常用的幾種數據分析方法
    SEM優化工作少不了做分析報表,而數據分析不僅僅是為了發現問題,為解決問題提供參考數據,也是對推廣效果的直觀展現方式,善用工具,能事半功倍地掌握工作,並及時作出調整。簡而言之,數據分析就是為了幫助我們對工作做到心中有數。
  • 數據分析常用的4大分析方式
    不同的數據分析師可以解釋相同的數據。結論可能不同甚至相反,但結論不對或錯,所以從客觀數據到主觀人都需要有一些科學的分析方法作為橋梁,幫助數據信息更好,更全面,更快。那麼,產品常用的數據分析方法是什麼?今天我們將通過數據分析工具DataFocus與大家討論!
  • 9種常用數據分析方法
    數據分析是從數據中提取有價值信息的過程,過程中需要對數據進行各種處理和歸類,只有掌握了正確的數據分類方法和數據處理模式,才能起到事半功倍的效果,以下是數據分析員必備的9種數據分析思維模式:分類分類是一種基本的數據分析方式,數據根據其特點,可將數據對象劃分為不同的部分和類型,再進一步分析,能夠進一步挖掘事物的本質。2.
  • 數據分析基礎思維之:指標思維
    在數據分析工作中,數據必須呈現的是事實而不能是觀點,這樣才能保證每個人接收到的信息是相同的。而想要保持穩定的事實能力,指標思維是不可忽略的一個關鍵點。如何量化指標?日常的分析工作中,除了這些基礎指標,還會遇到一些特定的業務問題,需要用數據分析解決。比如業務想對比用戶對兩款產品的喜愛程度,或者衡量APP的穩定性。這種情況下我們該怎麼辦?曾任阿里巴巴數據委員會會長的車品覺在《數據的本質》一書中,給出了如何量化問題的方法。
  • 運營er常用的數據分析方法有哪些?
    這不最近領導找小編談話了,說小編在工作是無用功,應該用科學的數據分析的方法去運營。我.......為了避免重蹈的覆轍,小編決定奮發圖強,去看看到底什麼是數據分析,有哪些好用的數據方法。下面就是小編整理了幾種搜集到的運營er常用的數據分析方法,大家可以先了解一下。01細分分析細分分析是分析的基礎,單一維度下的指標數據的信息價值很低。
  • 數據分析的幾種常用方法概覽(之二)
    數據分析常用方法概覽(之二)上一篇,我們了解了數據分析時常用的對比分析法、分組分析法、結構分析法、交叉分析法、漏鬥圖分析法、矩陣分析法、綜合評價分析法等八種分析方法,今天我們繼續了解下上文提到的另外八種常見數據分析方法。
  • SEM常用的這4種數據分析方法,掌握效率翻倍!
    數據就躺在哪裡,關鍵在分析之前,你之前要 有清晰的思維邏輯:你為什麼要分析數據?你希望通過數據分析得到什麼?我一般的分析數據邏輯如下:確定分析的目的—>收集數據—>整理數據—>分析數據—>得到一些分析的思路本篇主要分享下數據分析的常用方法,
  • 數據分析方法:趨勢分析法
    編輯導語:在我們日常業務中總會用到數據分析的各種方法,最常用最簡單的就是「趨勢分析法」,一目了然的走勢可以讓我們更直觀的看清楚;本文作者詳細介紹了數據分析方法中的趨勢分析法,我們一起來看一下。要說數據分析裡,什麼方法最常用?當然是趨勢分析法;只要和數據有關,幾乎每個人,時時刻刻都在用。很多同學一聽:「啥?還有這方法啊?我咋沒感覺到呢!」
  • 常用的四種大數據分析方法
    本文主要講述數據挖掘分析領域中,最常用的四種數據分析方法:描述型分析、診斷型分析、預測型分析和指令型分析。當剛涉足數據挖掘分析領域的分析師被問及,數據挖掘分析人員最重要的能力是什麼時,他們給出了五花八門的答案。其實我想告訴他們的是,數據挖掘分析領域最重要的能力是:能夠將數據轉化為非專業人士也能夠清楚理解的有意義的見解。使用一些工具來幫助大家更好的理解數據分析在挖掘數據價值方面的重要性,是十分有必要的。其中的一個工具,叫做四維分析法。