第二章 模型構建與選擇

基本概念

1.精度 :(1-a/m) x 100%,m爲樣本總個數,a爲出錯的樣本數目。

在訓練集上的誤差爲經驗誤差。在新樣本上面的誤差爲泛化誤差。

2.P問題:可以在多項式時間內解決並且驗證答案。(多項式時間指的是複雜度中n總在下面。計算機可以承受其複雜度)。

  NP問題:保證在多項式時間內驗證問題的正確答案。

  NPC問題:NPC問題就是一個NP問題領域的大boss。所有的NP問題都可以約化爲這個問題。

3.測試樣本也是從樣本真是分佈中獨立分佈採樣而得。測試集應該儘可能與訓練集互斥。

4.留出法:將訓練集劃分爲兩份互斥集合,用作訓練集和測試集。在劃分集合的時候應該儘可能保證集合的數據分佈一致性。

兩個集合的比例約爲2:1或者4:1.

5.交叉驗證法:將贗本隨機分爲k份,取其中的k-1份爲訓練集,剩下的一份爲測試集。k通常取10,位10折交叉驗證。

留一法:k爲樣本數量。適用於小規模數據。當數據量較大的時候計算開銷無法忍受。

自助法:在m個樣本中隨機採樣m次,採樣所得的數據爲訓練集,未被採集到的數據用作訓練集。採樣的方式爲獨立重複採樣。未被採集到的數據所佔比例約爲0.368。即訓練集:測試集=2:1。用於數據集較小,難以有效劃分訓練/測試集的時候使用。

6.性能度量

均方誤差

錯誤率

精度

查準率:在認定爲真的示例中,真正的正例所佔的比例。

查全率:在全部真正的示例中,找出來的正例所佔的比例。

查全率越高,查準率越低,因爲爲了提高查全率,必須要降低閾值。這樣取值較高的反例也是會被選擇爲正例的。

查準率越高,查全率越低,因爲爲了提高查準率,必須要提高閾值。這樣取值較低的正例會被判定爲反例。

所以在實際工作中是要在二者之間做一個均衡的。使用調和平均和加權調和平均。

調和平均就是二者取到數再取平均數。=2 x TP/(樣本總數+TP-TN)。

ROC和AUC

ROC曲線的橫座標爲“假正例率”,縱座標爲“真正例率”,其實就是查全率。取值都是0-1.與曲線相交,曲線下的面積爲AUC。AUC越高,說明模型效果越好。

代價敏感錯誤率與代價曲線

所謂代價敏感就是指不同錯誤所帶來的代價是不同的,所以在計算代價的時候需要對不用錯誤增加不同代價的比重。

所繪製的圖下方的 面積就是期望總體代價。如果要是隻看一個梯形的面積還是很好理解的,就是假正例率與假反例率求平均。那多條曲線求交集的目的是什麼,是指通過不斷優化,最終不斷減小代價嗎,在這裏不是很明白。


習題

1.數據集包含1000個樣本,其中500個正例,500個反例,將其劃分爲包含70%樣本的訓練集和30%樣本的測試集用於留出法評估,試估算共有多少種劃分方式。

就是一個隨機抽取的問題。從500裏面選取350個,選兩次,最後得結果。

2.數據集包含100個樣本,其中正反例各一半,假定學習算法所產生的模型是將新樣本預測爲訓練樣本數較多的類別(訓練樣本數相同時進行隨機猜測),試給出用10折交叉驗證法和留一法分別對錯誤率進行評估所得的結果。

10折交叉法:因爲將樣本平均分爲10份,所以其中每一份的正反樣本比例應該是一樣的,所以最後的答案應該是隨機猜測的,所以錯誤率應該1-0.5^10。每個樣本都正確的可能性是0.5^10,所以整體錯誤率就是1減去正確率。但是對於其中的每一個樣本來說,錯誤率與正確率相等爲0.5。

留一法:對於留一法來說,分爲兩種情況考慮。當測試樣本爲正例的時候,訓練樣本中有49個正例,50個反例,所以此時會判定爲反例。對於測試樣本爲反例時,同樣會是這種情況,所以正確率爲0。錯誤率爲100%。

3.若學習器A的F1值比學習器B高,試析A的BEP值是否也比B高。

需要先明白F1和BEP都分別指的什麼,之後再分析他們之間的關係。

F1是查準率與查全率的調和平均,BEP是“查準率=查全率”的取值。

看網上上的思路就是確定了二者沒有關係。具體就是先確定當二者的BEP都相同時,F1是否相同。如果這個時候F1不同,那就沒有再進行下去的必要了。因爲已經證明了二者是沒有任何關係的。最好的證明方法是舉一個反例。


出自http://blog.csdn.net/icefire_tyh/article/details/52065867

這樣證明了二者沒有關係,那麼當F1高的時候,不能確定BEP也是高的。

4.試述真正例率(TPR)、假正例率(FPR)與查準率(P)、查全率(R)之間的聯繫。

這是一道概念性的考題。
也的確在這裏概念不清晰,藉此機會梳理一下基礎知識。
首先,最顯而易見的就是,查全率就是真正例率。
在這四者之間除了相等的兩個,剩下的都沒有必然的約束關係。都可以共同增加。

5.試證明(2.22)AUC=1lrank

首先理解ROC圖的含義,曲線的走向表示的到底是什麼意思。當曲線向上移動的時候,代表此預測值對應的爲正例。當曲線向右移動的時候,代表此預測值對應的爲反例。注意,所有示例是按照預測值從大到小進行排列的。所有注意曲線上面的面積。對於某一部分向右延伸的曲線來說,曲線上面的面積代表該反例上面共有多少正例。因爲曲線只有遇到正例纔可以向上延伸。當遇見斜線的時候,並不是很清楚含義,是應該代表不確定?總之,此時的單位面積上的面積是0.5。所以就可以從理論方面證明了此等式。AUC爲曲線下的面積,剛纔所論述的爲曲線上的面積。

6.試述錯誤率與ROC曲線之間的關係

這個式子的含義還是比較能夠理解的。

7.試證明任意一條ROC曲線都有一條代價曲線與之對應,反之亦然。

首先。ROC上的每一個點都可以求得一條代價曲線。因爲根據真正例率和假正例率,可以求得假反例率,然後繪製出對應的代價折線就可以了。
當ROC爲折線組成的時候,根據代價曲線是無法獲得ROC曲線的。但是當ROC爲理論上的折線的時候,可以根據期望總體代價上不斷做切線,找到切點,算出ROC曲線上的若干點,進行曲線的繪製。


後面的知識點及其先關習題略過

























發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章