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

資訊專欄INFORMATION COLUMN

Logistic分類函數

XBaron / 2687人閱讀

摘要:對于多分類問題,我們使用函數來處理多項式回歸。概率方程表示輸出根據函數得到的值。最大似然估計可以寫成因為對于給定的參數,去產生和,根據聯合概率我們又能將似然函數改寫成。

作者:chen_h
微信號 & QQ:862251340
微信公眾號:coderpai
簡書地址:https://www.jianshu.com/p/abc...


這篇教程是翻譯Peter Roelants寫的神經網絡教程,作者已經授權翻譯,這是原文。

該教程將介紹如何入門神經網絡,一共包含五部分。你可以在以下鏈接找到完整內容。

(一)神經網絡入門之線性回歸

Logistic分類函數

(二)神經網絡入門之Logistic回歸(分類問題)

(三)神經網絡入門之隱藏層設計

Softmax分類函數

(四)神經網絡入門之矢量化

(五)神經網絡入門之構建多層網絡

Logistic分類函數

這部分教程將介紹兩部分:

Logistic函數

交叉熵損失函數

如果我們利用神經網絡進行分類,對于二分類問題,t=1或者t=0,我們能在logistic回歸中使用logistic函數。對于多分類問題,我們使用softmax函數來處理多項式logistic回歸。本教程我們先解釋有關logistic函數的知識,后續教程會介紹softmax函數的知識。

我們先導入教程需要使用的軟件包。

from __future__ import print_function

import numpy as np
import matplotlib.pyplot as plt
Logistic函數

假設我們的目標是根據輸入的z去預測分類t。概率方程P(t=1|z)表示輸出y根據logisitc函數y=σ(z)得到的值。σ被定義為:

根據函數分類的概率t=1或者t=0,我們能得到以下公式:

注意一下,其實z就是P(t=1|z)與P(t=0|z)的比值求對數。

logistic函數在下面的代碼中logistic(z)實現,并且可視化了logistic函數。

# Define the logistic function
def logistic(z):
  return 1 / (1 + np.exp(-z))
# Plot the logistic function
z = np.linspace(-6,6,100)
plt.plot(z, logistic(z), "b-")
plt.xlabel("$z$", fontsize=15)
plt.ylabel("$sigma(z)$", fontsize=15)
plt.title("logistic function")
plt.grid()
plt.show()

Logistic函數求導

因為神經網絡一般使用梯度下降來優化,所以我們需要先求出y對于z的倒數,即?y/?z可以表示為:

因為1?σ(z))=1?1/(1+e^?z)=e?z/(1+e^?z),所以我們又可以把上式簡化為:

logistic_derivative(z)函數實現了Logistic函數的求導。

# Define the logistic function
def logistic_derivative(z):
  return logistic(z) * (1 - logistic(z))
# Plot the derivative of the logistic function
z = np.linspace(-6,6,100)
plt.plot(z, logistic_derivative(z), "r-")
plt.xlabel("$z$", fontsize=15)
plt.ylabel("$frac{partial sigma(z)}{partial z}$", fontsize=15)
plt.title("derivative of the logistic function")
plt.grid()
plt.show()

對于logistic函數的交叉熵損失函數

模型的輸出結果y=σ(z)可以被表示為一個概率y,如果t=1,或者概率1-y,如果t=0。我們把這個記為P(t=1|z)=σ(z)=y

在神經網絡中,對于給定的一組參數θ,我們可以使用最大似然估計來優化參數。參數θ將輸入的樣本轉化成輸入到Logistic函數中的參數z,即z = θ * x。最大似然估計可以寫成:

因為對于給定的參數θ,去產生tz,根據聯合概率我們又能將似然函數L(θ|t,z)改寫成P(t,z|θ)。由于P(A,B) = P(A|B) ? P(B),我們又可以簡化聯合概率:

因為我們不關心有關z的概率,所以我們可以把原來的似然函數改寫成:

因為t服從伯努力分布,而且如果給定參數θ,那么P(t|z)=y就是一個確定的值,因此我們又可以改寫概率方程:

由于對數函數是單調遞增函數,我們可以依此優化對數似然函數

該函數的最大值和常規的似然函數的最大值一樣,所以我們計算對數似然函數如下,

我們最小化這個負對數似然函數,等價于最大化似然函數。一個典型的誤差函數可以設計為如下交叉熵誤差函數:

這個函數可能看起來比較復雜,但是如果我們把它拆分開來看,就會比較簡單。

從上式中我們可以發現,如果樣本被正確分類,那么損失函數L(t,y)和負對數概率函數在表達式上面是一樣的,即

因為t只能取值0或者1,所以我們能將L(t, y)寫為:

如果你要分析每一個訓練數據,那么就是下式:

另一個我們使用交叉熵函數的原因是,在簡單Logistic回歸中,交叉熵函數是一個凸損失函數,全局最小值很容易找到。

對于logistic函數的交叉熵損失函數的求導

對于損失函數?ξ/?y求導,計算如下:

現在,我們對輸入參數z進行求導將變得很容易。

至此,完整求導完成。

完整代碼,點擊這里


作者:chen_h
微信號 & QQ:862251340
簡書地址:https://www.jianshu.com/p/abc...

CoderPai 是一個專注于算法實戰的平臺,從基礎的算法到人工智能算法都有設計。如果你對算法實戰感興趣,請快快關注我們吧。加入AI實戰微信群,AI實戰QQ群,ACM算法微信群,ACM算法QQ群。長按或者掃描如下二維碼,關注 “CoderPai” 微信號(coderpai)

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/41173.html

相關文章

  • (二)神經網絡入門之Logistic回歸(分類問題)

    摘要:那么,概率將是神經網絡輸出的,即。函數實現了函數,函數實現了損失函數,實現了神經網絡的輸出結果,實現了神經網絡的預測結果。 作者:chen_h微信號 & QQ:862251340微信公眾號:coderpai簡書地址:https://www.jianshu.com/p/d94... 這篇教程是翻譯Peter Roelants寫的神經網絡教程,作者已經授權翻譯,這是原文。 該教程將介紹如...

    pf_miles 評論0 收藏0

發表評論

0條評論

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