這事兒剛開始是比較不好理解。
這事兒得從這位大佬開始講起:
萊布尼茨的發明
我們知道導數是這樣定義的:
f^\prime(x) =\lim_{h\to0 }\frac{f(x+h)-f(x)}{h}
但在數學大佬的眼裏,這玩意不 美觀 啊!!在許多時候,數學家眼裏 美=簡潔 。但這式子不簡潔。
從導數的定義上看它不可避免的問題就是要求 商 ,但無奈又不能把極限分別寫進分子和分母裏去!於是Leibniz就想出了這麽個玩意:
\frac{dy}{dx} ,並解釋道:它是" 由 x 的變化而引起的 y 的無窮變化量 "( dy )與「 x 的無窮小變化量 」(dx) 的 商 。那麽用這個記法就可以很好地體現出導數定義裏 商 的形式了。
上述解釋的關鍵在於: dy 必須是因 x 改變了 dx 而引起的變化,這個記號才有意義
轉譯幾下就是: dy 不能獨立於 x 而變化!
反例其實很好找:
y^\prime(x)\cdot z^\prime(t)=\lim _{h \rightarrow 0} \frac{y(x+h) -y(x)}{h} \lim _{h \rightarrow 0} \frac{z(t+h) -z(t)}{h} =\frac{dy}{dx}\cdot\frac{dz}{dt}
此時 dy 是和 t 無關的, dz 是和 x 無關的。
因此如果寫成這樣就肯定錯了:
\xcancel{\color{red}{\frac{dy}{dx }\cdot\frac{dz}{dt} = \frac{dy}{dt}\cdot\frac{dz}{dx} }}
反過來,如果滿足我們上述的條件,那麽實際上它是可以作為「商」來處理的
註意:下面所有的推導都必須保證這個「商」所對應的極限必須存在!\frac{dx}{dy} = \frac{1}{\quad\frac{dy}{dx}\quad}
\frac{dy}{dx} = \frac{dy}{du}\;\frac{du}{dx}
註意:鏈式法則是可以任意增長的(有限次)。比如我們令 x=x(t) ,
\frac{dy}{dt} = \frac{dy}{du}\;\frac{du}{dx}\;\color{red}{\frac{dx}{dt}}
甚至於:
y = f_1\circ f_2\circ \cdots\circ f_n(x)
我們可以這樣處理:
\frac{dy}{dx} = \frac{dy}{\color{Red} {df_n} }\frac{\color{Red}{ df_n} }{dx}
\frac{dy}{dx} = \frac{dy}{\color{Red}{ df_{n-1}} }\;\frac{\color{Red}{ df_{n-1}} }{\color{Blue}{ df_{n}} }\;\frac{\color{Blue}{ df_n} }{dx}
\vdots
\frac{dy}{dx} = \frac{dy}{df_1}\;\frac{df_1}{df_2}\cdots\frac{df_n}{dx}
這個過程中,我們就可以看成不斷地同時「乘」、「除」 df_k ,因為每一步的添加項都 沒有破壞分子是因其自變量改變而產生的無窮小量這一條件 。
目前深度學習的所謂Back propagation其實就是這個法則(當然需要用到偏導數)。\left \{ \begin{align*} x = x(t)\\ y = y(t) \end{align*} \right.
\frac{dy}{dx}={\left ( \frac{dy}{\color{Red}{ dt} } \right ) \Big/ \left ( \frac{dx}{\color{Red}{ dt}} \right ) }
其反函數類似:
\frac{dx}{dy}={\left ( \frac{dx}{\color{Red}{ dt} } \right ) \Big/ \left ( \frac{dy}{\color{Red}{ dt}} \right ) }
這裏與復合函數鏈式法則完全相同, 由於 dx,dy 都是由 t 的變化而產生的無窮小量 ,因此仍然可以同時「乘」、「除」 dt 。
鳴謝:
萊布尼茨發明的部份敘述參考了:Is dy/dx not a ratio?特別感謝@愛拼才會贏 幫我多次指正打叉部份的錯誤!
感謝 @不想打輔助 幫忙找出鏈式法則裏一處筆誤。
關於萊布尼茨記號的歷史實在是太長了,有很多數學家的工作在裏面,包括Bernoulli兄弟在內的大數學家在後來都對此進行了完善。有興趣的同學可以去看【古今數學思想】第二冊82-92頁。