1. 程式人生 > >機器學習 第二章:模型評估與選擇-總結

機器學習 第二章:模型評估與選擇-總結

但是 交叉 roc曲線 掃描 com ram hidden 技術分享 preview

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

留出法將數據集劃分為兩個互斥的集合,為了保持數據的一致性,應該保證兩個集合中的類別比例相同。故可以用分層采樣的方法。訓練集包含350個正例與350個反例,測試集包含150個正例與150個反例。

故有500C350*500C350 種劃分方式(排列組合)

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

10折交叉檢驗:由於每次訓練樣本中正反例數目一樣,所以講結果判斷為正反例的概率也是一樣的,所以錯誤率的期望50%。
留一法:如果留下的是正例,訓練樣本中反例的數目比正例多一個,所以留出的樣本會被判斷是反例;同理,留出的是反例,則會被判斷成正例,所以錯誤率100%

3、若學習器A的F1值比學習器B高,試析A的BEP值是否也比B高。
分類器將所有訓練樣本按自己認為是正例的概率排序,排在越前面分類器更可能將它判斷為正例。按順序逐個把樣本標記為正,當查準率與查全率相等時,BEP=查準率=查全率。當然分類器的真實輸出是在這個序列中的選擇一個位置,前面的標記為正,後面的標記為負,這時的查準率與查全率用來計算F1值。可以看出有同樣的BEP值的兩個分類器在不同位置截斷可能有不同的F1值,所以F1值高不一定BEP值也高。
比如:

1/+2/+3/+4/+5/+6/-7/-8/-9/-10/-
1/+ 2/+ 3/+ 4/+ 6/- 5/- 7/- 8/- 9/- 10/-
1/+ 2/+ 3/+ 4/+ 6/+ 5/- 7/- 8/- 9/- 10/-

第一行是真實的測試樣本編號與分類,第二三行是兩個分類器對所有樣本按為正例可能性的排序,以及判斷的結果。顯然兩個分類器有相同的BEP值,但是他們的F1值一個是0.89,一個是0.8。

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

查全率: 真實正例被預測為正例的比例
真正例率: 真實正例被預測為正例的比例
顯然查全率與真正例率是相等的。
查準率:預測為正例的實例中真實正例的比例
假正例率: 真實反例被預測為正例的比例
兩者並沒有直接的數值關系。

5、試證明AUC=1-lrank

與BEP一樣,,學習器先將所有測試樣本按預測概率排序,越可能是正的排在越前面。然後依次遍歷,每掃描到一個位置,裏面如果只有正例,則ROC曲線垂直向上,如果只有反例,曲線水平往右,如果既有正例也有反例,則斜向上。如圖所示

技術分享

由於TPR與FPR的分母是常數,所以這裏按比例擴大了坐標(分別是真實正例和真實反例的數目倍),可以更好看出曲線走勢。

可以看出一共有20個測試樣本,10個正,10個反。學習器排序的結果是

+,-,(+,+),(+,-),(+,+),(-,-),(+,+),(-,-,-),+,-。其中括號內的樣本排在相同的位置。

<(+,+,-,-)與(+,-),(+,-)是同樣效果>

機器學習 第二章:模型評估與選擇-總結