????學習一門技術最好的方式是做一個玩具demo。最近為了深入理解自動求導框架的實現思路,我自己開發(fā)了一個自動求導框架,并且使其支持了控制流。在該框架的基礎上我又開發(fā)了一個簡單的RNN(循環(huán)神經網絡)來學習二進制加法概念,驗證框架實現的正確性。RNN實現部分我參考了這位大神的博客:Anyone Can Learn To Code an LSTM-RNN in Python (Part 1: RNN)??蚣艿脑创a在以下地址:
? ??自動求導框架項目源代碼
????目前很多神經網絡的結構越來越復雜,傳統的手動求導硬編碼模型的反向傳播很繁瑣且不直觀。tensorflow等深度學習框架的出現大大緩解了這一問題,科研工作者只需要用框架把自己的神經網絡結構設計好,框架會自動對該網絡進行反向傳播。本系列文章是根據我本人的理解來實現tensorflow這種深度學習框架中的自動求導這一功能。由于水平有限,文章中會有一些錯誤和不足,希望讀者能夠指出。
系列包括以下幾部分