1. 程式人生 > >機器學習:模型估計於選擇(二)

機器學習:模型估計於選擇(二)

  • 交叉驗證t檢驗是在一個數據集上比較兩個演算法的效能,但有時我們需要在一組資料集上對多個演算法進行比較,可以使用基於演算法排序的Friendman檢驗。 我們假設D1_{1}、D2_{2}、D3_{3}、D4_{4}四個資料集對演算法A、B、C進行比較,首先使用留出發或交叉驗證法得到每個演算法在每個資料集上的測試結果,然後在每個資料集上根據測試效能由好到壞進行排序,賦予序值1,2,…;若演算法的測試效能相同,則平分序值,然後使用Friendman檢驗判斷這些演算法是否效能相同。若相同,則它們的平均序值相同,否則不相同。我們假設在N個數據集上比較K個演算法,令ri_{i} 表示第i個演算法的平均序值,則ri
    _{i}
    服從正太分佈,其均值和方差分別為(k+1)/2和(k21)/12\left ( k^{2}-1 \right )/ 12,變數τχ2=12Nk(k+1)(i=1kr2ik(k+1)24)\tau _{\chi ^{2}}=\frac{12N}{k\left ( k+1 \right )}\left ( \sum_{i=1}^{k}r\tfrac{2}{i}-\frac{k\left ( k+1 \right )^{2}}{4} \right ) 在k和N都比較大時,服從自由度為k-1的χ2\chi ^{2}
    分佈。原始的Friendman檢驗過於保守,現在通常使用變數τF=(N1)τx2N(k1τx2)\tau _{F}=\frac{\left ( N-1 \right )\tau _{x^{2}}}{N\left ( k-1 -\tau _{x^{2}}\right )} τF\tau _{F}服從自由度為k-1和(k-1)(N-1)的F分佈。若“所有演算法的效能相同”這個假設被拒絕,說明演算法的效能顯著不同,需要進行後續檢驗來進一步區分各演算法,常用的有Nemenyi後續檢驗。Nemenyi檢驗計算出平均序值差別的臨別值域: C
    D=qαk(k+1)6NCD=q_{\alpha }\sqrt{\frac{k\left ( k+1 \right )}{6N}}
    qα_{\alpha }可由表查出,若兩個演算法的平均序值之差超過了臨界值域CD,則以相應的置信度拒絕“兩個演算法效能相同”的假設。