Analysis of Learning from Positive and Unlabeled Data

PU learning論文閱讀。

本文從基本的分類損失出發(fā),推導了PU的分類問題其實就是Cost-sensitive classi?cation的形式,同時,通過實驗證明了如果使用凸函數(shù)作為loss function,例如hinge loss會導致錯誤的分類邊界(有bias),因此需要使用例如ramp loss之類的凹函數(shù)。同時,論文還對先驗\pi存在偏差的情況進行了討論,說明了如果樣本中大部分都是正樣本,那么就算先驗差距比較大,但對總體的分類效果沒有太大影響。最后對分類邊界進行討論,證明了使用PU進行分類的誤差小于監(jiān)督學習誤差的2\sqrt{2}倍。

基本概念和定義

  1. Ordinary classification
    • Bayes optimal classi?er的目標是最小化misclassi?cation rate,這在Introduction to Statistical Machine Learning By Masashi Sugiyama 書里有定義,直觀理解就是最小化期望錯分率:
    • R(f) = \pi R_1 (f) + (1 - \pi) R_{-1}(f)
    • 這里的R_1表示false negative rate,也就是分錯正類的概率,乘以先驗正類的概率\pi
    • R_{-1}表示false positive rate,也就是分錯負類的概率,乘以先驗負類的概率1-\pi
    • 這樣,對分錯樣本的概率分別乘以其先驗概率,就是其錯分概率的期望。
  2. Cost-sensitive classi?cation
    • 如果對于某種錯誤我們的敏感程度不一樣,那么就乘以不同的權重,重新定義為:
    • R(f) = \pi c_1 R_1(f) + (1-\pi) c_{-1}R_{-1}(f)
    • 這里用c_1c_{-1}分別表示對兩種錯分的代價
  3. PU classification
    • 定義在未標記數(shù)據(jù)集X? 中的分布:
      • P_X = \pi P_1 + (1-\pi) P_{-1}
      • 注意,這里的P_X可以理解為樣本的分布:P(x) = P(y=1)P(x|y=1) + P(y=-1)P(x|y=-1)
      • 也就是說,P_1 = P(x|y = 1), P_{-1} = P(x|y=-1)
      • 論文認為兩個數(shù)據(jù)集的分布不同:
        • 對于positive sample:x \sim P(x|y=1)
        • 對于unlabel sample:x\sim P_X
    • 對于PU問題,我們沒有辦法直接得到負類的信息,因此我們想要把目標函數(shù)中的R_{-1}(f)去掉。定義R_X(f)表示在P_X分布下預測為正類的風險risk:
      • \begin{equation}\begin{split}R_X(f) &= P_X(f(X = 1)) \\&= \pi P_1(f(X) = 1) + (1-\pi) P_{-1}(f(X) = 1) \\&= \pi(1-R_1(f)) + (1-\pi) R_{-1}(f) \end{split}\end{equation}
    • 這樣,我們就可以將R_{-1}替換為R_X(f)?
      • \begin{equation}\begin{split}R(f) &= \pi R_1(f) + (1-\pi)R_{-1}(f) \\&= \pi R_1(f) - \pi(1-R_1(f)) + R_X(f) \\&= 2\pi R_1(f) + R_X(f) - \pi \end{split}\end{equation}
    • 我們可以定義\eta \sim \frac{n}{n + n'}?P_1?P_X?的占比,也就是在我們正類數(shù)據(jù)集樣本數(shù)占所有樣本數(shù)的比例,因此可進一步寫成:
      • R(f) = c_1\eta R_1(f) + c_X(1-\eta)R_X(f)- \pi
      • 其中c_1 = \frac{2\pi}{\eta},c_X = \frac{1}{1-\eta}
    • 這樣,我們就把PU分類問題轉換為了Cost-sensitive classi?cation問題。通過設置不同的閾值并最小化分類錯誤率,就可以使用SVM等分類器進行訓練。

Necessity of non-convex loss functions

論文認為,如果在PU分類問題中使用常見的凸函數(shù)作為loss function,可能導致結果有biased,因此需要選擇非凸函數(shù)。

  1. Loss functions in ordinary classi?cation
    • 在分類器上定義一個符號函數(shù):sign (g(x)) = f(x)
    • 使用01損失,仿照之前的期望錯分率定義損失函數(shù):
      • J_{0-1}(g) = \pi E_1[l_{0-1}(g(X))] + (1-\pi )E_{-1}[l_{0-1}(-g(X))] ?
      • l_{0-1}在大于0的時候取0,小于0時取1
    • 由于01損失在實際中很難優(yōu)化,因此用ramp loss代替:
      • l_R(z) = \frac{1}{2}\max(0,\min(2,1-z))
    • 而為了保證凸性,因此一般使用hinge loss
      • l_H(z) = \frac{1}{2}\max(1-z,0)
    • image-20190329204755315
    • 可以發(fā)現(xiàn),ramp loss 在大于1時沒有損失,在-1到1之間為線性損失,而大于1以后損失恒定為1
    • hinge loss在小于1時也依然為線性損失(在SVM中使用)
  2. Ramp loss function in PU classi?cation
    • ramp loss帶入之前定義的PU目標函數(shù)中,同時根據(jù)ramp loss的特殊性質:l_R(-z) +l_R(z) = 1,我們可以得到
    • J_{PU-R} (g) = \pi E_1[l_R(g(X))] + (1-\pi)E_{-1}[l_R(-g(X))]
    • 這個形式和最初的分類損失相同,也就是說,它們會有相同的分類邊界
  3. Hinge loss function in PU classi?cation
    • 如果用hinge loss,同樣的道理我們可以得到:
      • image-20190329211244615
    • 除了最初分類損失的項,還有另外的一項懲罰
    • 作者認為,這個懲罰會導致分類邊界的改變,及時g(X)很好的區(qū)分了數(shù)據(jù),由于懲罰項的存在,目標函數(shù)可能并不會是最小值
  4. 論文做了一個簡單的實驗,說明了如果使用hinge loss,那么在先驗\pi增大的情況下,閾值增大的非常快,也就是說,會將所有的樣本都標記為正樣本(閾值為1),因此false positive概率為1。這樣會導致總的分類錯誤率為1-\pi
    • image-20190329212345496
  5. 因此,作者用實驗和公式說明了,光光最小化分類錯誤率不夠(因為當\pi很大時,會將所有類標記為正類以獲得最小的損失1- \pi,因此需要使用ramp loss對其進行懲罰

Effect of inaccurate class-prior estimation

現(xiàn)實中有很多方法來估計先驗\pi,但如果估計值離實際值很大(有偏),那么會對我們的PU問題造成什么樣的影響?

  1. Ordinary classification
    • 考慮普通分類的情形。我們的目標函數(shù)時最小化R(f,\pi) = \pi R_1(f) + (1-\pi) R_{-1}(f)
    • 注意,這是一個凹函數(shù)。
    • 如果我們的先驗為\hat{\pi},最小化后得到的分類器為\hat{f},這時候固定\hat{f},真實的先驗為\pi,可以發(fā)現(xiàn)當靠近\hat{\pi}時兩個risk 的差距最小,隨著\pi的變化而逐漸增大:
      • image-20190329213643994
  2. PU classification
    • 通過變量替換,我們同時定義當前的先驗為\hat{\pi},真實的先驗為\pi,可以得到risk為:
      • R(f) = (2\hat{\pi} - \pi) R_1(f) + (1-\pi)R_{-1}(f) + \pi - \hat{\pi}
    • 可以發(fā)現(xiàn),如果 \hat{\pi } \le \frac{1}{2}\pi 時,該分類就完全失效了(risk 的符號改變)
    • 將其進行歸一化,定義effective class prior為:
      • image-20190329214636202
    • image-20190329214702001
    • 觀察圖片可以發(fā)現(xiàn),當真實的\pi很大,那么估計的先驗就算相差大一點,影響也不大(頂部較為平緩),這與現(xiàn)實相符。例如,如果我們在異常檢測中,正類遠遠大于負類,那么估計的閾值稍微小優(yōu)點,也不會對risk造成太大的改變。
    • 同樣,如果真實的正類并不多,那么對正類的估計如果不準的話,會對結果造成較大改變。

Generalization error bounds for PU classi?cation

待完成。。。

Reference

  1. Analysis of Learning from Positive and Unlabeled Data
  2. Introduction to Statistical Machine Learning By Masashi Sugiyama
  3. Why are the popular loss functions convex?
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容