繼續(xù)用公式轟炸簡(jiǎn)書腊尚,誰叫簡(jiǎn)書寫作體驗(yàn)這么好呢~~
老規(guī)矩,萬一真有人想閱讀這些公式满哪,請(qǐng)移步這里婿斥。
機(jī)器學(xué)習(xí)涉及到較多的數(shù)學(xué)知識(shí),在工程應(yīng)用領(lǐng)域哨鸭,這些數(shù)學(xué)知識(shí)不是必要的民宿,其實(shí)很多算法都是數(shù)值運(yùn)算專家寫好了的。然而知其然知其所以然像鸡,了解這些數(shù)學(xué)公式的來龍去脈是幫助理解算法的關(guān)鍵活鹰。本文直接給出常用的微分運(yùn)算法則,并運(yùn)用這些法則來計(jì)算分類回歸算法 (Logistic Regression) 預(yù)測(cè)模型 Sigmoid Function 的微分公式。
基礎(chǔ)函數(shù)的微分運(yùn)算法則
- 冪函數(shù)法則
$$\begin{align} \fraczhz3lk5{dx} x^n = nx^{n-1} \end{align}$$ - 指數(shù)函數(shù)法則
$$\begin{align} \fracqkocjzj{dx} e^x = e^x \end{align}$$
$$\begin{align} \fraci0bag1m{dx} a^x = ln(a)a^x \end{align}$$ - 對(duì)數(shù)函數(shù)法則
$$\begin{align} \frachp2um6l{dx} ln(x) = \frac{1}{x} \end{align}$$
$$\begin{align} \fractufeiw1{dx} log_a(x) = \frac{1}{xln(a)} \end{align}$$ - 三角函數(shù)法則
$$\begin{align} \fracci3qw7k{dx} sin(x) = cos(x) \end{align}$$
$$\begin{align} \fracwqw6opt{dx} cos(x) = -sin(x) \end{align}$$
$$\begin{align} \frac8ek6c37{dx} tan(x) = sin^2(x) = \frac{1}{cos^2(x)} = 1 + tan^2(x) \end{align}$$ - 反三角函數(shù)法則
$$\begin{align} \fract29rqgd{dx} arcsin(x) = \frac{1}{\sqrt{1-x^2}}, -1 < x < 1 \end{align}$$
$$\begin{align} \frac3pvv3o6{dx} arccos(x) = -\frac{1}{\sqrt{1-x^2}}, -1 < x < 1 \end{align}$$
$$\begin{align} \fracvdci72e{dx} arctan(x) = \frac{1}{1+x^2} \end{align}$$
組合函數(shù)的微分運(yùn)算法則
- 常數(shù)法則:如果 $f(x) = n$志群,n 是常數(shù)着绷,則
$$\begin{align} f' = 0 \end{align}$$ - 加法法則
$$\begin{align} (\alpha f + \beta g)' = \alpha f' + \beta g' \end{align}$$ - 乘法法則
$$\begin{align} (fg)' = f'g + fg' \end{align}$$ - 除法法則
$$\begin{align} \left( \frac{f}{g} \right)' = \frac{f'g - fg'}{g^2} \end{align}$$
根據(jù)除法法則和指數(shù)法則,可以得出推論
$$\frac1dqkegt{dx} e^{-x} = \fract2p12dp{dx} \frac{1}{e^x} = \frac{0-ex}{e{2x}} = -\frac{1}{e^x} = -e^{-x}$$ - 鏈接法則:如果 $f(x) = h(g(x))$锌云,則
$$\begin{align} f'(x) = h'(g(x)) g'(x) \end{align}$$
計(jì)算 Sigmoid Function 的微分
$g(x) = \frac{1}{1+e^{-x}}$ 是分類算法的預(yù)測(cè)函數(shù)荠医,也稱為 Sigmoid Function 或 Logistic Function。我們利用上文介紹的微分運(yùn)算法則來證明 Sigmoid Function 的一個(gè)特性:
$$
\fraclfqba7y{dx} g(x) = g(x) (1 - g(x))
$$
方法一
假設(shè) $f(x) = \frac{1}{x}$桑涎,則 $f(g(x)) = \frac{1}{g(x)}$子漩,根據(jù)除法法則得到
$$
\begin{align}
f'(g(x)) & = \left( \frac{1}{g(x)} \right)' = \frac{1' g(x) - 1 g'(x)}{g(x)^2} \\
& = - \frac{g'(x)}{g(x)^2}
\end{align}
$$
其中 (17) 是根據(jù)除法法則得出的結(jié)論,除數(shù)是常數(shù)函數(shù) 1石洗,被除數(shù)是 $g(x)$幢泼。(18) 是根據(jù)常數(shù)法則得出的結(jié)論。
另一方面讲衫,$f(g(x)) = \frac{1}{g(x)} = 1 + e^{-x}$缕棵,根據(jù)指數(shù)法則直接計(jì)算微分得到
$$
\begin{align}
f'(g(x)) & = \fracr6ba1mg{dx} (1 + e^{-x}) \\
& = -e^{-x} \\
& = 1 - \frac{1}{g(x)} \\
& = \frac{g(x) - 1}{g(x)}
\end{align}
$$
(18) 和 (22) 兩式是相等的,即
$$
\begin{align}
- \frac{g'(x)}{g(x)^2} & = \frac{g(x) - 1}{g(x)} \\
g'(x) & = g(x)(1 - g(x))
\end{align}
$$
這樣就得到了我們的結(jié)果涉兽。
方法二
由 $g(x) = \frac{1}{1+e^{-x}}$ 的定義可知
$$
\begin{align}
& (1+e^{-x})g(x) = 1 \\
\Rightarrow & \fraccaerqe7{dx} \left( (1+e^{-x})g(x) \right) = 0 \\
\Rightarrow & -e^{-x}g(x) + (1+e^{-x})\fracrgrlr0d{dx}g(x) = 0 \\
\Rightarrow & \fraccbv1qlf{dx}g(x) = g(x) \frac{e{-x}}{1+e{-x}} \\
\Rightarrow & \fracancicgw{dx}g(x) = g(x) \frac{(1 + e^{-x}) - 1}{1+e^{-x}} \\
\Rightarrow & \fracjdvd226{dx}g(x) = g(x) \left[ 1 - \frac{1}{1+e^{-x}}\right] \\
\Rightarrow & \fracf8abte5{dx}g(x) = g(x) (1 - g(x)) \\
\end{align}
$$
(26) 兩邊取微分招驴;(27) 根據(jù)微分的乘法法則。
方法三
根據(jù)除法法則直接計(jì)算微分:
$$
\begin{align}
\fracrv0koxt{dx} g(x) & = \fracplwalwm{dx} \left( \frac{1}{1 + e^{-x}} \right) \\
& = \frac{0 - (- e^{-x})}{(1 + e{-x})2} \\
& = \frac{e^{-x}}{(1 + e{-x})2} \\
& = \frac{1}{(1 + e^{-x})} \frac{e^{-x}}{(1 + e^{-x})} \\
& = \frac{1}{(1 + e^{-x})} \frac{(1 + e^{-x}) - 1}{(1 + e^{-x})} \\
& = \frac{1}{(1 + e^{-x})} \left[1 - \frac{1}{(1 + e^{-x})} \right] \\
& = g(x) (1 - g(x)) \\
\end{align}
$$
(33) 是根據(jù)除法法則得出的枷畏,其中除數(shù)是常數(shù) 1稚茅,被除數(shù)是 $1 + e^{-x}$松忍。
參考資料
- StackExchange 上有個(gè) Sigmoid Function 微分計(jì)算的問題及答案
- WikiPedia 上有關(guān)微分運(yùn)算法則的資料