摘要:我們對不等式兩邊分別取對數根據貝葉斯公式我們開始假設過,兩個類別分別服從均值不等,方差相等的高斯分布,根據高斯分布的公式有高斯分布忽略常數項方差也是相等的是常熟,可以使用矩陣的表示。詳細推導對值取冪,以及等式取等號計算。
邏輯回歸基本概念
什么是邏輯回歸?
邏輯回歸就是這樣的一個過程:面對一個回歸或者分類問題,建立代價函數,然后通過優化方法迭代求解出最優的模型參數,然后測試驗證我們這個求解的模型的好壞。
Logistic 回歸雖然名字里帶“回歸”,但是它實際上是一種分類方法,主要用于兩分類問題(即輸出只有兩種,分別代表兩個類別)
回歸模型中,y是一個定性變量,比如y=0或1,logistic方法主要應用于研究某些事件發生的概率
概念解釋
Logistic Regression推導過程它的表達式是:
$$ f(x) = frac{1}{1 + e^{- heta}} $$
$$ heta = WX + B $$
可以發現,經過sigmoid函數轉換后, 輸出值是在[0, 1]之間,可以認為輸出是概率,下面就來詳細的推導:
推導為了計算方便, 我們只討論二分類.
首先, 邏輯回歸進行了一個假設,兩個類別都服從均值不同,方差相同(方便推導)的高斯分布
$$ p(y|x=0) = mu(mu_0, sigma) $$
$$ p(y|x=1) = mu(mu_1, sigma) $$
高斯分布是比較容易處理的分布,根據中心極限定理也知道,最終會收斂于高斯分布。
從信息論的角度上看,當均值和方差已知時(盡管你并不知道確切的均值和方差,但是根據概率論,當樣本量足夠大時,樣本均值和方差以概率1趨向于均值和方差),高斯分布是熵最大的分布,為什么要熵最大?因為最大熵的分布可以平攤你的風險(同一個值會有兩個點可以取到, 不確定性很大),這就好比不要把雞蛋放到同一個籃子里,想想二分查找中,為什么每次都是選取中間點作為查找點?就是為了平攤風險(假設方差相等只是為了計算方便)。
風險
$$ Risk(y=0|x) = lambda_{00}P(y=0|x) + lambda_{01}P(y = 1|x) $$
$$ Risk(y=1|x) = lambda_{10}P(y=0|x) + lambda_{11}P(y = 1|x) $$
其中,$Risk(y=0|x)$是把樣本預測為0時的風險,$Risk(y=1|x)$是把樣本預測為1時的風險,
$λ_{ij}$是樣本實際標簽為j時,卻把它預測為i是所帶來的風險。
我們認為預測正確并不會帶來風險,因此$λ_{00}$和$λ_{11}$都為0,此外,我們認為當標簽為0而預測為1 和 當標簽為1而預測為0,這兩者所帶來的風險是相等的,因此$λ_{10}$和$λ_{01}$相等,方便起見,我們記為λ。但在一些領域里,比如醫學、風控等,這些λ在大多數情況下是不相等的,有時候我們會選擇“寧可錯殺一一千也不能放過一個”;
那么我們簡化后的表達式:
$$ Risk(y=0|x) = lambda P(y = 1|x) $$
$$ Risk(y=1|x) = lambda P(y=0|x) $$
根據最小化風險的原則,我們通常會選擇風險較小的。
比如:
$$ Risk(y=0|x) < Risk(y=1|x) $$
這就說明了預測為第0類的風險小于預測為第1類的風險。
可以得到:
$$ frac{Risk(y=0|x)}{Risk(y=1|x)} < 1 $$
$$ frac{P(y = 1|x)}{P(y=0|x)} < 1 $$
就是說明預測第1類的概率小于第0類的概率。
我們對不等式兩邊分別取對數
$$ logfrac{{P(y = 1|x)}}{{P(y=0|x)}} < 0 $$
根據貝葉斯公式:
$$ logfrac{P(x|y = 1)p(y=1)}{P(x|y=0)p(y=0)} < 0 $$
$$ logfrac{P(x|y = 1)}{P(x|y=0)} + logfrac{p(y=1)}{p(y=0)} < 0 $$
我們開始假設過,兩個類別分別服從均值不等,方差相等的高斯分布,根據高斯分布的公式有:
高斯分布
$$ g(x) = frac{1}{2pisigma}e^{-frac{(x - mu)^2}{2sigma^2}} $$
忽略常數項(方差也是相等的)
$$ logfrac{P(x|y = 1)}{P(x|y=0)} + loge^{(frac{(x - mu_0)^2}{2sigma^2} - frac{(x - mu_1)^2}{2sigma^2})} $$
$$ logfrac{P(x|y = 1)}{P(x|y=0)} + (frac{(x - mu_0)^2}{2sigma^2} - frac{(x - mu_1)^2}{2sigma^2}) < 0 $$
$$ logfrac{P(x|y = 1)}{P(x|y=0)} < frac{(x - mu_1)^2}{2sigma^2} - frac{(x - mu_0)^2}{2sigma^2} $$
$$ logfrac{P(x|y = 1)}{P(x|y=0)} < frac{mu_0}{sigma^2}x - frac{mu_1}{sigma^2}x + C $$
C是常熟,可以使用矩陣的表示。
$$ logfrac{P(x|y = 1)}{P(x|y=0)} < heta{X} $$
詳細推導
對值取冪,以及等式取等號計算。
$$ frac{P(y=1|x)}{P(y=0|x)} = e^{ heta x} $$
$$ = frac{P(y=1|x)}{1 - P(y=1|x)} = e^{ heta x} $$
$$ = frac{1 - P(y=1|x)}{P(y=1|x)} = e^{- heta x} $$
$$ = frac{1}{P(y=1|x)} - 1 = e^{- heta x} $$
$$ = frac{1}{P(y=1|x)} = e^{- heta x} + 1 $$
$$ = P(y=1|x) = frac{1}{e^{- heta x} + 1} $$
以下是實現的一些截圖 優化我們采用梯度下降算法 交叉熵損失函數 最終效果電腦端查看完整代碼
——————————————————————————————————
Mo (網址:momodel.cn )是一個支持 Python 的人工智能建模平臺,能幫助你快速開發訓練并部署 AI 應用。期待你的加入。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/20014.html
摘要:數據分析的發展方向一般有商業方向,行業分析業務方向,和機器學習數據挖掘方向。機器學習的書籍推薦統計學習方法,機器學習,機器學習實戰三本書。 作者:xiaoyu 微信公眾號:Python數據科學 知乎:python數據分析師 上一篇主要分享了博主親身轉行數據分析的經歷: 【從零學起到成功轉行數據分析,我是怎么做的?】 本篇繼上一篇將分享轉行數據分析的一些經驗和學習方法,看完這篇你將會解...
摘要:在這里我分享下我個人入門機器學習的經歷,希望能對大家能有所幫助。相關學習鏈接,,入門后的體驗在入門了機器學習之后,在實際工作中,絕大多數的情況下你并不需要去創造一個新的算法。 機器學習在很多眼里就是香餑餑,因為機器學習相關的崗位在當前市場待遇不錯,但同時機器學習在很多人面前又是一座大山,因為發現它太難學了。在這里我分享下我個人入門機器學習的經歷,希望能對大家能有所幫助。 PS:這篇文章...
閱讀 3452·2019-08-30 15:44
閱讀 797·2019-08-30 13:46
閱讀 2058·2019-08-30 11:05
閱讀 3332·2019-08-29 18:32
閱讀 2155·2019-08-29 13:56
閱讀 1296·2019-08-29 12:57
閱讀 756·2019-08-28 18:21
閱讀 1734·2019-08-26 12:16