概率视角下的线性模型:逻辑回归有解析解吗?
?PaperWeekly 原創 ·?作者?|?蘇劍林
單位?|?追一科技
研究方向?|?NLP、神經網絡
我們知道,線性回歸是比較簡單的問題,它存在解析解,而它的變體邏輯回歸(Logistic Regression)卻沒有解析解,這不能不說是一個遺憾。因為邏輯回歸雖然也叫“回歸”,但它實際上是用于分類問題的,而對于很多讀者來說分類比回歸更加常見。準確來說,我們說邏輯回歸沒有解析解,說的是“最大似然估計下邏輯回歸沒有解析解”。那么,這是否意味著,如果我們不用最大似然估計,是否能找到一個可用的解析解呢?
▲ 邏輯回歸示意圖
本文將會從非最大似然的角度,推導邏輯回歸的一個解析解,簡單的實驗表明它效果不遜色于梯度下降求出來的最大似然解。此外,這個解析解還易于推廣到單層 Softmax 多分類模型。
線性回歸
我們先來回顧一下線性回歸。假設訓練數據為 ,其中 ,為了便于跟代碼實現對齊,這里默認情況下向量都是行向量。線性回歸假設 滿足線性關系 ,這里 ,然后通過最小化下述均方誤差來估計它們:
這個目標直接展開求導就行了,只是一個二次函數的最小值問題,所以有解析解。
1.1 概率視角
從概率分布的角度來看,均方誤差意味著我們假設了 是均值為 的正態分布。現在,我們來做一個更強的假設:
假設聯合分布 是正態分布。
在這個假設之下,我們可以直接寫出對應的條件分布:
這里的 是 的均值向量, 是 的協方差矩陣。正態分布的條件分布形式可以直接在維基百科?[1] 找到,其證明可以參考 StackExchange [2] 或相關概率統計書籍。
現在對照 ,我們可以得到:
這其實就是線性回歸的解析解。
1.2 思考分析
讓我們捋一捋上述過程。首先,默認情況下,線性回歸只是做了條件分布 的假設,通過最小二乘法我們就可以獲得線性回歸的解析解,這是常規的線性回歸的介紹過程;然后,在上面中,我們做了一個更加強的假設“聯合分布 是正態分布”,但是最終依然獲得了一樣的解析解。
為什么更加強的假設卻獲得了一樣的結果呢?事實上,從損失函數(1)就可以看到,它關于 是二次的,關于 同樣是二次的,這意味著它頂多用到關于 的二階矩信息,因此作出聯合分布是正態分布的假設,并不會改變最終結果,因為正態分布已經保留了所有不超過二階的矩信息(均值和協方差)。
進一步地,我們可以想象到,任何線性模型(線性回歸、邏輯回歸、單層神經網絡等)主要用到的數據統計量,應該也都是不超過二階的矩。因此,在處理線性模型時,我們可以根據具體情況適當地作出正態分布的假設,理論上來說,這可以獲得一個等價結果,或者一個足夠好的近似結果。
邏輯回歸
利用上述思路,我們就可以給出邏輯回歸的一個解析解,該結果筆者首先在《Easy Logistic Regression with an Analytical Solution》[3] 看到,看后頗有啟發,特與大家分享。
假設訓練數據為 ,其中 ,這意味著它是一個二分類數據集,建立概率模型:
這里 。 的常規估計方式是最大似然,也就是最小化下述 loss:
我們沒法計算出它的解析解。然而,如果不走最大似然這條路,另外設計求解路線,是有可能得到解析解的。
2.1 別出心裁
首先,不難驗證對于邏輯回歸模型,我們有:
這也就是說,邏輯回歸相當于以 為輸出的線性回歸模型。然而 的直接估計并不容易,我們利用貝葉斯公式:
這里的 分別是正負兩個類別的概率,這個容易估計。 自然就是正負樣本所滿足的分布了,現在我們對它們作正態分布假設:
假設 是具有同樣協方差矩陣的正態分布。
這里“同樣協方差矩陣”讀者可能會覺得莫名其妙,這一點我們后面再討論。在這個假設之下,記:
其中 分別就是正負樣本的均值向量, 可以用全體樣本的協方差矩陣來估計。回顧正態分布的概率密度表達式:
代入式(7)后展開化簡,我們發現二次項剛好抵消,于是:
對比式(6)后我們得到:
這就是邏輯回歸的一個解析解。當然,這也不算特別新的內容,它的思路跟“線性判別分析(Linear Discriminant Analysis)[4] ”其實是很一致的。
2.2 思考分析
目前,對于這個解,讀者最有疑慮的可能是“同樣協方差矩陣”這個假設是否過強了。從技巧上來看,這個假設是為了讓 的二次項正好抵消,從而只剩下一次項而直接得到邏輯回歸的解析解;那么從理論上來看,這個假設有沒有什么必然性呢?事實上,我們可以認為,邏輯回歸本身就(近似地)隱含了“同樣協方差矩陣”這一假設。
怎么理解這句話呢?首先,對于邏輯回歸模型來說,式(6)是自然成立的,而貝葉斯公式也是恒成立的,所以結論就是 必然只有一次項和常數項。而線性回歸的例子已經告訴我們,對線性模型的數據分布做正態假設一般是不損失什么信息的,所以我們假設 為正態分布(一定程度上)也是合理的。而假設它們為正態分布后,如果要使得結果沒有二次項,那么協方差矩陣必然要一致。
也就是說,當你決定使用邏輯回歸模型和接受正態假設的那一刻起,就做出了“正負樣本數據具有同樣協方差矩陣”這個假設了~
特別地,當協方差矩陣為單位陣的時候,式(11)變得比較簡單:
我們可以先對原始數據做一個白化(參考《你可能不需要 BERT-flow:一個線性變換媲美 BERT-flow》[5] ),使其均值為 0、協方差為單位陣,然后再套用上式。理論上來說,先白化再用式(12),跟直接用式(11)結果是一樣的。然而,對于高維數據來說,白化后在數值計算上會穩定很多,所以實際使用時,都推薦先白化后用式(12)的方式。
2.3 多分類器
上述關于邏輯回歸的解析解,還可以很方便地推廣到“全連接+Softmax”的多分類場景中,該場景假設類別 i 的概率為:
基于同樣的推理和假設,我們可以得到類似式(6)的結果:
以及類似式(10)的結果:
對比之下,我們可以發現一組解是:
實驗評估
那么,上面推導的解析解可用性如何呢?能不能比得上梯度下降求出來的解呢?這里做了幾個文本方面的實驗,都是用 RoFormer-Sim-FT?來抽取固定的句向量特征,然后后面接一個全連接層分類,比較用梯度下降求出來的解和上述解析解的效果差異。實驗代碼開源如下:
Github:https://github.com/bojone/analytical-classification
3.1 全量樣本
評測包括四個分類任務:情感分類(SENTIMENT)[6] 、長文本分類(IFLYTEK)[7] 、短新聞分類(TNEWS)[7] 、電商主題分類(SHOPPING)[8] ,大致情況如下:
實驗的評測指標都是準確率,全量訓練樣本下效果如下:
3.2 小量樣本
從上述表格可以看出,就訓練集的效果而言,解析解通常是不如梯度下降的,但是它在驗證集和測試集的效果都接近甚至超越梯度下降的表現,總的來說,解析解的訓練集和驗證集效果差距更小,這意味著解析解可能是一個泛化能力比較好的解,它可能更適合于數據量比較小、訓練集和驗證集分布不一致等場景。
為了驗證這個猜測,我們將每個數據集的訓練集都只保留1000條數據,然后繼續進行實驗:
可以看到,訓練數據變少的情況下,訓練集的差距也變小了,但是解析解在驗證集上的效果全面超過了梯度下降,這進一步顯示出解析解在小樣本場景下良好的泛化性能。
3.3 綜合評述
其實上述結論也不難理解。大家都是線性模型的情況下,解析解相比于梯度下降多了一條“每個類的樣本服從具有同樣協方差矩陣的正態分布”的假設。當數據很多的情況下,我們對每個類的分布估計越發準確,此時該假設偏離程度越嚴重,從而沒有自適應訓練的梯度下降好;相反,當數據很少的情況下,每個類的分布本身就難以估計,此時該假設反而是一個有用的先驗信息,有助于模型“由點到面”地泛化,而梯度下降反而由于缺乏先驗而泛化能力不足。
換句話說,數據少的情況下,梯度下降背完幾個樣本就完事了,沒有“觸類旁通”,而解析解相當于通過額外的假設“造”了更多的樣本出來讓模型背,從而學到的東西更多了;數據多的情況下,梯度下降背得多,從而“熟能生巧”,而解析解還在按照自己的假設來“造”樣本,這時候造出來的樣本還不如真實的樣本,從而效果可能有所下降。
那么,解析解有什么提升空間嗎?比較直接的思路是,我們想辦法對 做更精細的估計,然后轉化為線性回歸問題來估計參數。至于怎么更好地估計 ,思路也不少,比如設為協方差不一致的正態分布或者干脆用核密度估計等,這就留給大家自由發揮了。
本文小結
本文介紹了邏輯回歸的一個解析解,并且將它推廣到了單層 Softmax 分類的場景。實驗顯示該解析解相比梯度下降有更好的泛化能力,尤其是在小樣本場景通常還有更好的效果。
參考文獻
[1] https://en.wikipedia.org/wiki/Multivariate_normal_distribution#Conditional_distributions
[2] https://stats.stackexchange.com/questions/30588/deriving-the-conditional-distributions-of-a-multivariate-normal-distribution
[3] https://towardsdatascience.com/easy-logistic-regression-with-an-analytical-solution-eb4589c2cd2d
[4] https://en.wikipedia.org/wiki/Linear_discriminant_analysis
[5] https://kexue.fm/archives/8069#標準化協方差矩陣
[6]?https://github.com/bojone/bert4keras/blob/master/examples/datasets/sentiment.zip
[7] https://www.cluebenchmarks.com/introduce.html
[8] https://github.com/SophonPlus/ChineseNlpCorpus/blob/master/datasets/online_shopping_10_cats/intro.ipynb
更多閱讀
#投 稿?通 道#
?讓你的文字被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學術熱點剖析、科研心得或競賽經驗講解等。我們的目的只有一個,讓知識真正流動起來。
?????稿件基本要求:
? 文章確系個人原創作品,未曾在公開渠道發表,如為其他平臺已發表或待發表的文章,請明確標注?
? 稿件建議以?markdown?格式撰寫,文中配圖以附件形式發送,要求圖片清晰,無版權問題
? PaperWeekly 尊重原作者署名權,并將為每篇被采納的原創首發稿件,提供業內具有競爭力稿酬,具體依據文章閱讀量和文章質量階梯制結算
?????投稿通道:
? 投稿郵箱:hr@paperweekly.site?
? 來稿請備注即時聯系方式(微信),以便我們在稿件選用的第一時間聯系作者
? 您也可以直接添加小編微信(pwbot02)快速投稿,備注:姓名-投稿
△長按添加PaperWeekly小編
????
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
·
總結
以上是生活随笔為你收集整理的概率视角下的线性模型:逻辑回归有解析解吗?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vivos9有微云台吗 手机拍照实力介绍
- 下一篇: 博士申请 | 麦吉尔大学智能自动化实验