CS231n課程筆記(前言)
關於Assignment2 中需要用到的編譯Cython擴展包,更新在文章末尾。
--------------------------------------------------------------------------------------------------------------------------
自從九月份接觸深度學習以來,CS231n課程已經跟了兩遍,第一遍初學時只是囫圇吞棗,走馬觀花一般。學完之後,只是憑空多了幾個概念而已,無法落到實處。趁此次寒假又將課程翻出來跟了一遍,作業算是完成了大半(可惜大半也是網上抄來),這次特意將知識點和代碼疏理出來,方便自己以後再看。
在學習DL之前,雖然有C的基礎,卻從未接觸過python。初學DL時,也曾嘗試著先行獨立學習python,奈何自己耐性不足加之課業繁重便不了了之。只好在完成作業的同時現學現編,免不了又要加大量注釋。
文章中摻雜大量從別處借鑒而來的筆記,引用時均已註明,時間緊迫並未聯繫原作者要求轉載。若有侵權,立馬刪除。不過想來自己人微言輕,權當是走個過場了。
計劃按照課程原順序整理筆記,筆記只用於知識梳理所以不會特別詳細,會著重於代碼註解,更多細節移步智能單元
寫到哪裡更新到哪裡,算是開學前最後一次的掙扎了,免得自己心生懊惱:)
一些課程相關資源:
視頻和PPT
知乎專欄「智能單元」翻譯的課程筆記(良心專欄)
參考github上的兩份作業:
參考一
參考二
簡書上一位作者的筆記:
簡書
CS231n作業環境在終端上的配置:
一下載作業文檔
1.從http://vision.stanford.edu/teaching/cs231n/winter1516_assignment1.zip 下載解壓得到assignment1文件夾,在一個可用空間充足的磁碟內新建文件夾CS231n,以D盤為例。
2 從鏈接: https://pan.baidu.com/s/1bRRKCm 密碼: 3vur 下載 cifar-10-python.tar.gz ,解壓得到cifar-10-batches-py文件夾(如果解壓得到的是cifar-10-python,進入該文件夾取出cifar-10-batches-py文件夾),將該文件夾放置在CS231n >> assignment1 >> cs231n >> datasets目錄內
二下載anaconda安裝包安裝(Tsinghua Open Source Mirror)
1. 打開cmd,更改路徑至CS231N文件夾所在的磁碟,再將路徑更改為CS231n文件夾, 輸入「ipython notebook」,進入CS231n >> assignment1文件夾,單擊打開即可。
2. 點擊選中第一個代碼塊,按
按鈕可以執行該代碼塊,執行中會在代碼塊前顯示ln[*],執行後會顯示ln[1]並輸出(如果有)結果。
3. 在Assignment2 卷積網路的構建中,為了加快運行速度,Assignment2里提供了fast_layers.py,但需要藉助Cython來生成C擴展。網上解決方法很多,當時也被這一步困擾了好幾天,在這裡整理一下在我電腦上運行成功的一種解決方案。
(1)卸載了之前的版本,重裝了Anaconda2-4.1.1-Windows-x86_64.exe(不確定這一步是否必須,Anaconda2 的常用版本應該均可)
(2) 下載並安裝 Visual Studio 2008 Professional x64,注意在安裝時選中 x64 compiler tools!!(重要!!)
具體操作方法為:單擊setup.exe完成安裝流程,完成後再次單擊setup.exe後選擇「添加/刪除功能」,如下圖:
在語言工具——Visual C++中將X64編譯器和工具打上勾:
完成安裝即可。
(3)在cmd中進入Assignment2cs231n的文件夾,運行python setup.py build_ext --inplace即可。
如果運行出錯,可以嘗試在Anaconda的spyder console 中運行:
具體路徑因人而異。
參考:
CS231n作業2中Cython相關問題的處理 - AsherLees blog - CSDN博客
cython/cython
推薦閱讀:
※免費中文版!谷歌機器學習速成課程今日上線!
※「高燒不退」的人工智慧,誰更具話語權?
※《深度卷積網路:從AlphaGo到GAN》連載:2.2.8 ~ 2.3.3
※靈聲機器人重塑電話銷售新模式
※用互聯網大腦架構預測2018年四個重要科技發展趨勢
TAG:深度學習DeepLearning | 機器學習 | 人工智慧 |