CS231n課程筆記(前言)

關於Assignment2 中需要用到的編譯Cython擴展包,更新在文章末尾。

--------------------------------------------------------------------------------------------------------------------------

自從九月份接觸深度學習以來,CS231n課程已經跟了兩遍,第一遍初學時只是囫圇吞棗,走馬觀花一般。學完之後,只是憑空多了幾個概念而已,無法落到實處。趁此次寒假又將課程翻出來跟了一遍,作業算是完成了大半(可惜大半也是網上抄來),這次特意將知識點和代碼疏理出來,方便自己以後再看。

在學習DL之前,雖然有C的基礎,卻從未接觸過python。初學DL時,也曾嘗試著先行獨立學習python,奈何自己耐性不足加之課業繁重便不了了之。只好在完成作業的同時現學現編,免不了又要加大量注釋。

文章中摻雜大量從別處借鑒而來的筆記,引用時均已註明,時間緊迫並未聯繫原作者要求轉載。若有侵權,立馬刪除。不過想來自己人微言輕,權當是走個過場了。

計劃按照課程原順序整理筆記,筆記只用於知識梳理所以不會特別詳細,會著重於代碼註解,更多細節移步智能單元

寫到哪裡更新到哪裡,算是開學前最後一次的掙扎了,免得自己心生懊惱:)

一些課程相關資源:

視頻和PPT

知乎專欄「智能單元」翻譯的課程筆記(良心專欄)

參考github上的兩份作業:

參考一

參考二

簡書上一位作者的筆記:

簡書

CS231n作業環境在終端上的配置:

一下載作業文檔

1.從vision.stanford.edu/tea 下載解壓得到assignment1文件夾,在一個可用空間充足的磁碟內新建文件夾CS231n,以D盤為例。

2 從鏈接: 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 | 機器學習 | 人工智慧 |