国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

機器學習分享——邏輯回歸推導以及 numpy 的實現

Java3y / 1282人閱讀

摘要:我們對不等式兩邊分別取對數根據貝葉斯公式我們開始假設過,兩個類別分別服從均值不等,方差相等的高斯分布,根據高斯分布的公式有高斯分布忽略常數項方差也是相等的是常熟,可以使用矩陣的表示。詳細推導對值取冪,以及等式取等號計算。

邏輯回歸基本概念

什么是邏輯回歸?
邏輯回歸就是這樣的一個過程:面對一個回歸或者分類問題,建立代價函數,然后通過優化方法迭代求解出最優的模型參數,然后測試驗證我們這個求解的模型的好壞。

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數據分析師 上一篇主要分享了博主親身轉行數據分析的經歷: 【從零學起到成功轉行數據分析,我是怎么做的?】 本篇繼上一篇將分享轉行數據分析的一些經驗和學習方法,看完這篇你將會解...

    suemi 評論0 收藏0
  • 我是如何入門機器學習

    摘要:在這里我分享下我個人入門機器學習的經歷,希望能對大家能有所幫助。相關學習鏈接,,入門后的體驗在入門了機器學習之后,在實際工作中,絕大多數的情況下你并不需要去創造一個新的算法。 機器學習在很多眼里就是香餑餑,因為機器學習相關的崗位在當前市場待遇不錯,但同時機器學習在很多人面前又是一座大山,因為發現它太難學了。在這里我分享下我個人入門機器學習的經歷,希望能對大家能有所幫助。 PS:這篇文章...

    ShowerSun 評論0 收藏0

發表評論

0條評論

Java3y

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<