重磅乾貨,第一時間送達
本文轉自:視學演算法
想要真正瞭解深度神經網路是如何訓練的,免不了從
矩陣微積分
說起。
雖然網路上已經有不少關於多元微積分和線性代數的線上資料,但它們通常都被視作兩門獨立的課程,資料相對孤立,也相對晦澀。
不過,先別打退堂鼓,來自舊金山大學的Terence Parr教授說:矩陣微積分真的沒有那麼難。
這位ANTLR之父和fast。ai創始人Jeremy Howard一起推出了一篇免費教程,旨在幫你快速入門深度學習中的矩陣微積分。
簡明,易懂
。
DeepMind研究科學家Andrew Trask評價說:
如果你想跳過不相干的內容,一文看盡深度學習中所需的數學知識,那麼就是這份資源沒錯了。
只需一點關於微積分和神經網路的基礎知識,就能單刀直入,開始以下的學習啦。
深度學習所需的矩陣微積分
先來看一眼這篇教程都涵蓋了哪些內容:
基本概念
矩陣微積分
神經元啟用的梯度
神經網路損失函式的梯度
文章開篇,先介紹了一下人工神經元。
神經網路中單個計算單元的啟用函式,通常使用權重向量
w
與輸入向量
x
的點積來計算。
神經網路由許多這樣的單位組成。它們被組織成稱為
層
的神經元集合。上一層單元的啟用成為下一層單元的輸入,最後一層中一個或多個單元的啟用稱為網路輸出。
訓練神經元意味著對權重
w
和偏差b的選擇。我們的目標是逐步調整
w
和b,使總損失函式在所有輸入
x
上都保持較小。
導數規則、向量計算、偏導數……複習完需要掌握的先導知識,文章開始進入重要規則的推導,這些規則涉及向量偏導數的計算,是神經網路訓練的基礎。
比如在
矩陣微積分
這一節中,涵蓋:
雅可比式(Jacobian)的推廣
向量element-wise二元運算元的導數
涉及標量展開的導數
向量和降維
鏈式法則
每一小節中,都有簡潔明瞭的示例,由淺入深,層層遞進。
如果你在學習的過程中遇到不理解的地方,不要著急,耐心返回上一節閱讀,重新演算一下文中的示例,或許就能理順思路。
如果實在是卡住了無法推進,你還可以在fast。ai論壇(連結見文末)的“Theory”分類下提問,向Parr和Howard本人求解答。
而在文章的末尾,作者附上了所有數學符號的對照表。
以及重點概念的詳細補充資訊。
值得注意的是,Parr和Howard也強調了,與其他學術方法不同,他們強烈建議先學會如何訓練和使用神經網路,然後再深入瞭解背後的基礎數學。因為
有了實踐經驗,數學會變得剛容易理解
。
傳送門
網頁版:
https://explained。ai/matrix-calculus/index。html
PDF:
https://arxiv。org/abs/1802。01528
下載1:OpenCV-Contrib擴充套件模組中文版教程
下載2:Python視覺實戰專案52講
下載3:OpenCV實戰專案20講