---
tags: Knock Knock! Deep Learning
---
Day 0 / 導讀
===
時間投資有賺有賠,投入前應詳閱公開說明書。此篇為說明書。
## Knock Knock! Deep Learning
本系列文《Knock Knock! Deep Learning》旨在以淺顯易懂的文字,嵌入深度學習的概念與自身在史丹佛大學修讀碩士期間的學習心得,融合知識與故事性,成為無論何時何地都不吝於點開的技術分享文。
## 什麼是深度學習?
深度學習(Deep Learning)為機器學習(Machine Learning)的一種方法,在 AI 界風行多年,支撐了無數知名專案,如 Google 的機器翻譯及擊敗各路頂尖棋手的圍棋 AI AlphaGo。剩下的自己讀系列文。
## 那麼會探討哪些技術?是否會不夠扎實?
本系列文會分為以下幾個部分:
1. Deep Learning 簡介
2. 必備實作知識與工具
3. PyTorch 簡介
4. DL x NLP(自然語言處理)
5. DL x CV(機器視覺)
6. DL x RL(強化學習)
7. 結語
前期偏概念和實作入門,是扎好基本功必須,故事性較少;後期偏應用,有許多實例與故事分享。
論扎實性,必然是遠遠不及大師撰寫的書及教授的課。但如果目標是這般扎實,建議直接去天瓏找書,或是 Coursera 修課吧。《Knock Knock! Deep Learning》的技術內容會參考史丹佛大學相關課程的課綱及筆記、學術界發表的 paper、知名及個人的 project 經驗來進行分享,讀完後應能掌握深度學習發展的概貌,也能對實際開發自己的深度學習 project 有實作上的概念。
## 深度學習的技術文這麼多,為什麼要看這個系列?
網路上深度學習相關的技術文很多,但多半零散無連貫性,適合剛好需要補足某個知識碎片的學習者閱讀。至於深度學習相關的書也很多,但內容完整的多半由大師級人物撰寫,雖然內容嚴謹且帶有深度,但知識量過於龐大的情況下,到中期難免疲於掌握學習重點。
《Knock Knock! Deep Learning》的取向較為不同,分享的知識難以向大師級教科書並駕齊驅,但以學生的角度出發撰寫,將內容精簡至必備知識,因此作為概念性入門堪稱有力;文中會帶入許多故事性的敘述,含括筆者在史丹佛大學修讀碩士時期的一些學習心得,以及深度學習發展相關的故事。是個可以用閱讀故事的期待打開,並帶著對深度學習技術的概念理解闔上的系列文。
## 需要哪些預備知識
- Python 或其他程式語言概念
- [Numpy](https://github.com/numpy/numpy),一個方便進行向量 / 矩陣運算的 library
- Linear Algebra(線性代數)
- 基本矩陣運算
- Calculus(微積分)
- 微分知識比較重要,知道 $\frac{d}{dx}f(x)$ 的意義
- 特別是 Matrix Calculus(矩陣微積分),但這可以邊讀邊學
- Probability(機率)
- 條件機率跟貝氏定理較為重要,也可以邊讀邊學
不需要特地去重上一堂課,可以找些簡單的教學影片或文章複習一下就好。有直覺就能讀下去!
這邊有一些比較完整的英文筆記,可以事先閱讀,或是讀到一半覺得不行了需要釐清概念:
- Numpy
- [Python Numpy Tutorial (with Jupyter and Colab)](https://cs231n.github.io/python-numpy-tutorial/)
- Calculus
- [Review of differential calculus theory](http://web.stanford.edu/class/cs224n/readings/review-differential-calculus.pdf)
- Linear Algebra & Matrix Calculus
- [Linear Algebra Review and Reference](http://cs229.stanford.edu/summer2020/cs229-linalg.pdf)
- Matrix calculus in Deep Learning
- [Derivatives, Backpropagation, and Vectorization](http://cs231n.stanford.edu/handouts/derivatives.pdf)
- [Computing Neural Network Gradients](http://web.stanford.edu/class/cs224n/readings/gradient-notes.pdf)
- [Review of Probability Theory](http://cs229.stanford.edu/summer2020/cs229-prob.pdf)
## 還有哪些需要注意的嗎?
文章的架構大致為引言、主內容、Checkpoint、參考資料、延伸閱讀,後三者可有可無。歡迎利用 Checkpoint 來自我檢驗是否理解文中的內容了,參考資料深入探究不懂的地方,以及延伸閱讀來拓展知識。
參考資料和延伸閱讀,寫得真的很棒的資料,前面會加 👍,有興趣的人可以點連結閱讀。
另外,文中的部分專業名詞會用 English,就不翻成中文了。有些翻成中文很彆扭的詞我也會用英文,上面有示範 paper 和 project。反正你們以後查資料也應該要用英文,何必浪費時間再翻譯一次。
## Code 連結
原始碼都放在 GitHub:[pyliaorachel/knock-knock-deep-learning](https://github.com/pyliaorachel/knock-knock-deep-learning)。