多元微分學

鏈式法則的樹狀圖(tree-diagram chain rule)

當一個函數依賴於若干中間變量,而這些中間變量本身又依賴於其它變量時,多元鏈式法則會冒出許多項,並且極易漏掉一項。樹狀圖是一張簡單的圖——它是記賬工具,而非新理論——它保證你寫下恰好正確的那個和。

你把末端的量畫在頂端,向下分叉到它直接依賴的每個變量,再從那些變量分叉到它們各自依賴的變量,如此往下直到抵達自變量。要算頂端關於某個選定底層變量的導數,你列出從頂端到該變量的每一條不同路徑;沿每條路徑把寫在各分支上的(偏)導數相乘;再把所有路徑之積相加。一句話:沿分支相乘,跨分支相加。鏈式法則中的每一項都恰好對應一條從根到葉的路徑,所以若你的圖中有三條路徑抵達 t,你的公式就有三項。

樹狀圖是對鏈式法則最常見錯誤——漏掉一條路徑——的解藥,而且它能優雅地擴展到雜亂的真實情形:某熱力學勢依賴於溫度與體積,而它們又依賴於時間;某損失函數通過網絡的若干層依賴於權重。組織一道作業題的「沿支相乘、跨支相加」這同一套紀律,在結構上正是訓練現代機器學習模型的反向模式自動微分。

設 w = f(x, y),其中 x = g(s, t)、y = h(s, t)。有兩條路徑抵達 s(經過 x 與經過 y),所以 partial w / partial s = (partial f / partial x)(partial x / partial s) + (partial f / partial y)(partial y / partial s)——每條從根到葉的路徑對應一項。

兩條分支抵達 s,所以公式有兩項——樹狀圖使這個計數不可能出錯。

樹狀圖能組織各項,卻不能告訴你某變量是被固定還是允許變動。尤其在熱力學中,你必須聲明哪些變量是自變量,否則同一符號 partial f / partial x 可能指兩個不同的東西。

又稱
dependency tree依赖关系图依賴關係圖