CS231n官方笔记授权翻译总集篇发布
CS231n簡介
CS231n的全稱是CS231n: Convolutional Neural Networks for Visual Recognition,即面向視覺識別的卷積神經網絡。該課程是斯坦福大學計算機視覺實驗室推出的課程。需要注意的是,目前大家說CS231n,大都指的是2016年冬季學期(一月到三月)的最新版本。
課程描述:請允許我們引用課程主頁上的官方描述如下。
計算機視覺在社會中已經逐漸普及,并廣泛運用于搜索檢索、圖像理解、手機應用、地圖導航、醫療制藥、無人機和無人駕駛汽車等領域。而這些應用的核心技術就是圖像分類、圖像定位和圖像探測等視覺識別任務。近期神經網絡(也就是“深度學習”)方法上的進展極大地提升了這些代表當前發展水平的視覺識別系統的性能。本課程將深入講解深度學習框架的細節問題,聚焦面向視覺識別任務(尤其是圖像分類任務)的端到端學習模型。在10周的課程中,學生們將會學習如何實現、訓練和調試他們自己的神經網絡,并建立起對計算機視覺領域的前沿研究方向的細節理解。最終的作業將包括訓練一個有幾百萬參數的卷積神經網絡,并將其應用到最大的圖像分類數據庫(ImageNet)上。我們將會聚焦于教授如何確定圖像識別問題,學習算法(比如反向傳播算法),對網絡的訓練和精細調整(fine-tuning)中的工程實踐技巧,指導學生動手完成課程作業和最終的課程項目。本課程的大部分背景知識和素材都來源于ImageNet Challenge競賽。
課程內容:官方課程安排及資源獲取請點擊這里,課程視頻請在Youtube上查看Andrej Karpathy創建的播放列表,也可私信我們獲取云盤視頻資源。通過查看官方課程表,我們可以看到:CS231n課程資源主要由授課視頻與PPT,授課知識詳解筆記和課程作業三部分組成。其中:
- 授課視頻15課。每節課時約1小時左右,每節課一份PPT。
- 授課知識詳解筆記共9份。光看課程視頻是不夠的,深入理解課程筆記才能比較扎實地學習到知識。
- 課程作業3次。其中每次作業中又包含多個小作業,完成作業能確保對于課程關鍵知識的深入理解和實現。
- 課程項目1個。這個更多是面向斯坦福的學生,組隊實現課程項目。
- 拓展閱讀若干。課程推薦的拓展閱讀大多是領域內的經典著作節選或論文,推薦想要深入學習的同學閱讀。
課程評價:我們覺得贊!很多人都覺得贊!當然也有人覺得不好。具體如何,大家搜搜CS231n在網絡,在知乎上的評價不就好了嘛!個人認為:入門深度學習的一門良心課。適合絕大多數想要學習深度學習知識的人。
課程不足:課程后期從RCNN開始就沒有課程筆記。
課程學習方法
三句話總結:
- 看授課視頻形成概念,發現個人感興趣方向。
- 讀課程筆記理解細節,夯實工程實現的基礎。
- 碼課程作業實現算法,積累實驗技巧與經驗。
引用一下學習金字塔的圖,意思大家都懂的:
我們的工作
- 完成了CS231n全部9篇課程知識詳解筆記的翻譯:
原文:[python/numpy tutorial]。
翻譯:Python Numpy教程。
我們將使用Python編程語言來完成本課程的所有作業。Python是一門偉大的通用編程語言,在一些常用庫(numpy, scipy, matplotlib)的幫助下,它又會變成一個強大的科學計算環境。我們期望你們中大多數人對于Python語言和Numpy庫比較熟悉,而對于沒有Python經驗的同學,這篇教程可以幫助你們快速了解Python編程環境和如何使用Python作為科學計算工具。
原文:[image classification notes]。
翻譯:圖像分類筆記(上)(下)。
該筆記是一篇介紹性教程,面向非計算機視覺領域的同學。教程將向同學們介紹圖像分類問題和數據驅動方法,內容列表:- 圖像分類、數據驅動方法和流程
- Nearest Neighbor分類器
- k-Nearest Neighbor?譯者注:上篇翻譯截止處
- k-Nearest Neighbor?譯者注:上篇翻譯截止處
- 驗證集、交叉驗證集和超參數調參
- Nearest Neighbor的優劣
- 小結
- 小結:應用kNN實踐
- 拓展閱讀
原文:[linear classification notes]。
翻譯:線性分類筆記(上)(中)(下)。
我們將要實現一種更強大的方法來解決圖像分類問題,該方法可以自然地延伸到神經網絡和卷積神經網絡上。這種方法主要有兩部分組成:一個是評分函數(score function),它是原始圖像數據到類別分值的映射。另一個是損失函數(loss function),它是用來量化預測分類標簽的得分與真實標簽之間一致性的。該方法可轉化為一個最優化問題,在最優化過程中,將通過更新評分函數的參數來最小化損失函數值。內容列表:- 線性分類器簡介
- 線性評分函數
- 闡明線性分類器?譯者注:上篇翻譯截止處
- 損失函數
- 多類SVM
- Softmax分類器
- SVM和Softmax的比較
- 基于Web的可交互線性分類器原型
- 小結
原文:[optimization notes]。
翻譯:最優化筆記(上)(下)。
該筆記介紹了圖像分類任務的第三個關鍵部分:最優化。內容列表如下:- 簡介
- 損失函數可視化
- 最優化
- 策略#1:隨機搜索
- 策略#2:隨機局部搜索
- 策略#3:跟隨梯度?譯者注:上篇截止處
- 梯度計算
- 使用有限差值進行數值計算
- 微分計算梯度
- 梯度下降
- 小結
原文:[backprop notes]。
翻譯:反向傳播筆記。
該筆記本將幫助讀者對反向傳播形成直觀而專業的理解。反向傳播是利用鏈式法則遞歸計算表達式的梯度的方法。理解反向傳播過程及其精妙之處,對于理解、實現、設計和調試神經網絡非常關鍵。內容里列表如下:- 簡介
- 簡單表達式和理解梯度
- 復合表達式,鏈式法則,反向傳播
- 直觀理解反向傳播
- 模塊:Sigmoid例子
- 反向傳播實踐:分段計算
- 回傳流中的模式
- 用戶向量化操作的梯度
- 小結
原文:Neural Nets notes 1。
翻譯:神經網絡筆記1(上)(下)。
該筆記介紹了神經網絡的建模與結構,內容列表如下:- 不用大腦做類比的快速簡介
- 單個神經元建模
- 生物動機和連接
- 作為線性分類器的單個神經元
- 常用的激活函數
- 神經網絡結構
- 層組織
- 前向傳播計算例子
- 表達能力
- 設置層的數量和尺寸
- 小節
- 參考文獻
原文:Neural Nets notes 2。
翻譯:神經網絡筆記2。
該筆記介紹了數據的預處理,正則化和損失函數,內容列表如下:- 設置數據和模型
- 數據預處理
- 權重初始化
- 批量歸一化(Batch Normalization)
- 正則化(L2/L1/Maxnorm/Dropout)
- 損失函數
- 小結
原文:Neural Nets notes 3。
翻譯:神經網絡筆記3(上)(下)。
該筆記講解了神經網絡的動態部分,即神經網絡學習參數和搜索最優超參數的過程。內容列表如下:
- 梯度檢查
- 合理性(Sanity)檢查
- 檢查學習過程
- 損失函數
- 訓練集與驗證集準確率
- 權重:更新比例
- 每層的激活數據與梯度分布
- 可視化?譯者注:上篇翻譯截止處
- 參數更新
- 一階(隨機梯度下降)方法,動量方法,Nesterov動量方法
- 學習率退火
- 二階方法
- 逐參數適應學習率方法(Adagrad,RMSProp)
- 超參數調優
- 評價
- 模型集成
- 總結
- 拓展引用
原文:ConvNet notes。
翻譯:卷積神經網絡筆記。
內容列表:
- 結構概述
- 用來構建卷積神經網絡的各種層
- 卷積層
- 匯聚層
- 歸一化層
- 全連接層
- 將全連接層轉化成卷積層
- 卷積神經網絡的結構
- 層的排列規律
- 層的尺寸設置規律
- 案例學習(LeNet / AlexNet / ZFNet / GoogLeNet / VGGNet)
- 計算上的考量
- 拓展資源
- 完成了3個課程作業頁面的翻譯:
原文:[Assignment #1]。
翻譯:CS231n課程作業#1簡介。
作業內容:實現k-NN,SVM分類器,Softmax分類器和兩層神經網絡,實踐一個簡單的圖像分類流程。 原文:[Assignment #2]。
翻譯:CS231n課程作業#2簡介。
作業內容:練習編寫反向傳播代碼,訓練神經網絡和卷積神經網絡。 原文:[Assignment #3]。
翻譯:CS231n課程作業#3簡介。
作業內容:實現循環網絡,并將其應用于在微軟的COCO數據庫上進行圖像標注。實現DeepDream等有趣應用。- 幫助知友@智靖遠發起了在Youtube上合力翻譯課程字幕的倡議:
原文:知友智靖遠關于CS231n課程字幕翻譯的倡議。當時,@智靖遠已經貢獻了他對第一課字幕的翻譯,目前這個翻譯項目仍在進行中,歡迎各位知友積極參與。具體操作方式在倡議原文中有,請大家點擊查看。
有很多知友私信我們,詢問為何不做字幕。現在統一答復:請大家積極參加@智靖遠的字幕翻譯項目。他先進行的字幕貢獻與翻譯,我們不能奪人之美。后續,我們也會向該翻譯項目進行貢獻。
翻譯團隊
CS231n課程筆記的翻譯,始于@杜客在一次回答問題“應該選擇TensorFlow還是Theano?”中的機緣巧合,在取得了授權后申請了知乎專欄智能單元 - 知乎專欄獨自翻譯。隨著翻譯的進行,更多的知友參與進來。他們是@ShiqingFan,@猴子,@堃堃和@李藝穎。
大家因為認同這件事而聚集在一起,犧牲了很多個人的時間來進行翻譯,校對和潤色。而翻譯的質量,我們不愿意自我表揚,還是請各位知友自行閱讀評價吧。現在筆記翻譯告一段落,下面是團隊成員的簡短感言:
@ShiqingFan?:一個偶然的機會讓自己加入到這個翻譯小隊伍里來。CS231n給予了我知識的源泉和思考的靈感,前期的翻譯工作也督促自己快速了學習了這門課程。雖然科研方向是大數據與并行計算,不過因為同時對深度學習比較感興趣,于是乎現在的工作與兩者都緊密相連。Merci!
@猴子:在CS231n翻譯小組工作的兩個多月的時間非常難忘。我向杜客申請加入翻譯小組的時候,才剛接觸這門課不久,翻譯和校對的工作讓我對這門課的內容有了更深刻的理解。作為一個機器學習的初學者,我非常榮幸能和翻譯小組一起工作并做一點貢獻。希望以后能繼續和翻譯小組一起工作和學習。
@堃堃?:感謝組內各位成員的辛勤付出,很幸運能夠參與這份十分有意義的工作,希望自己的微小工作能夠幫助到大家,謝謝!
@李藝穎?:當你真正沉下心來要做一件事情的時候才是學習和提高最好的狀態;當你有熱情做事時,并不會覺得是在犧牲時間,因為那是有意義并能帶給你成就感和充實感的;不需要太過刻意地在乎大牛的巨大光芒,你只需像傻瓜一樣堅持下去就好了,也許回頭一看,你已前進了很多。就像老杜說的,我們就是每一步慢慢走,怎么就“零星”地把這件事給搞完了呢?
@杜客?:做了一點微小的工作,哈哈。
未來工作
目前通過大家的反饋,之后會有新的創作方向,會更多與大家互動,敬請期待吧!
感謝
感謝所有給我們的翻譯提出過批評指正的知友,每篇文章末尾處的譯者反饋部分我們都列出了大家的具體指正與貢獻;
感謝所有給我們的翻譯點贊的知友,你們的贊是我們的精神糧食;
感謝給文章贊賞小錢錢的知友,謝謝老板們:)
最后
懇請大家點贊和分享到其他社交網絡上,讓更多想要入門與系統學習深度學習的小伙伴能夠看到這篇總集。同時,也歡迎大家在來專欄分享你的知識,發現志同道合的朋友!
原文地址:?https://zhuanlan.zhihu.com/p/21930884
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的CS231n官方笔记授权翻译总集篇发布的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分析Android银行木马GM Bot的
- 下一篇: LSTM简介以及数学推导(FULL BP