https://github.com/zhourunlai/deep-learning-demo
deeplearningDemo
Wunderlist
[ ] 1. Machine Learning Yearning
[ ] 2. Deep Learning Book(感謝北京大學(xué)張志華團(tuán)隊的翻譯工作,中文版點擊這里)
一、記錄深度學(xué)習(xí)例子:
| 名稱 | 目錄 |
|---|---|
| Caffe | [dir] |
| TensorFlow | [dir] |
| Theano | [dir] |
| Keras | [dir] |
二、記錄歷程點滴:
掌握機器學(xué)習(xí)相關(guān)的概念及計算公式,包括有/無/半監(jiān)督學(xué)習(xí),強化學(xué)習(xí),分類/回歸/標(biāo)注,聚類;訓(xùn)練集/驗證集,交叉驗證,測試集;數(shù)據(jù)預(yù)處理,正則化,歸一化;損失函數(shù),經(jīng)驗風(fēng)險最小化,結(jié)構(gòu)風(fēng)險最小化,最優(yōu)化算法;訓(xùn)練誤差,泛化誤差,欠擬合,過擬合;準(zhǔn)確率,召回率,F(xiàn)1值,ROC和AUC;
掌握機器學(xué)習(xí)主流的模型及其算法,包括有生成方法:樸素貝葉斯、隱馬爾可夫模型,判別方法:感知機、logistic回歸、決策樹、K近鄰、支持向量機、提升方法、最大熵、條件隨機場等;
安裝 numpy, scipy, pandas, matplotlib, scikit-learn, xgboost 等 python 包,實戰(zhàn)項目:識別手寫數(shù)字、畫決策樹、文本挖掘過濾垃圾郵件、情感傾向分析、波斯頓房價預(yù)測、基于協(xié)同過濾的推薦系統(tǒng)、圖像分類等,上手 kaggle、KDD 比賽題或者阿里天池、滴滴Di-Tech、今日頭條bytecup 比賽題;
了解大數(shù)據(jù)相關(guān)的知識,包括有Flume、Kafka,Storm,Hadoop,Spark等,知道Hadoop基金下的項目(Cassandra、HBase、Hive、Pig、ZooKeeper等)的應(yīng)用場景,特別地要知道分布式計算框架的原理,從 HDFS、MapReducer 到 Streaming;
安裝 spark-2.0.0-bin-hadoop2.7,掌握 Hadoop Shell命令,兩種模式下運行 Spark 作業(yè),了解 Spark SQL/Streaming/GraphX,掌握 Spark MLlib 寫機器學(xué)習(xí)算法;
深度學(xué)習(xí)相關(guān)的概念及計算公式,包括神經(jīng)元模型、輸入層、隱藏層、輸出層、weight、bias、BP算法、目標(biāo)函數(shù)(mean_squared_error、mean_absolute_percentage_error等)、激活函數(shù)(sigmoid、softmax、tanh、relu等)、優(yōu)化算法(SGD、RMSprop、Adagrad、Adam等)、多層感知器、自動編碼器、卷積神經(jīng)網(wǎng)絡(luò)CNN(卷積層Convolution2D、池化層MaxPooling2D)、遞歸神經(jīng)網(wǎng)絡(luò)RNN、LSTM、全連接網(wǎng)絡(luò)等;
安裝深度學(xué)習(xí)框架 TensorFlow/Theano 或其它,掌握 tf 的張量、圖、會話的用法,了解分布式/使用GPU的方法,動手寫經(jīng)典的項目,學(xué)會使用 Vgg 16/19 和 ResNet 的模型并運用到自己的項目中;
安裝更上層的深度學(xué)習(xí)庫 Keras,更加快速、熟練的編寫出各種種類的神經(jīng)網(wǎng)絡(luò)模型。
TODO:
Autoencoder:
特點:1)數(shù)據(jù)相關(guān)的,2)有損的,3)從樣本中自動學(xué)習(xí)的;
作用:1)數(shù)據(jù)去噪,2)進(jìn)行可視化而降維;
類型:簡單自編碼器、稀疏自編碼器、深度自編碼器、卷積自編碼器、序列到序列的自動編碼器、變分自編碼器;-
CNN:
LeNet、AlexNet、GoogLeNet、VGG、ResNet高級激活: LeakyReLU, PReLU, ELU, ParametricSoftplus, ThresholdedReLU, SReLU
卷積: Convolution1D, Convolution2D, AtrousConvolution2D, SeparableConvolution2D, Deconvolution2D, Convolution3D, UpSampling1D, UpSampling2D, UpSampling3D, ZeroPadding1D, ZeroPadding2D, ZeroPadding3D
內(nèi)核: Dense, Activation, Dropout, SpatialDropout2D, SpatialDropout3D, Flatten, Reshape, Permute, RepeatVector, Merge, Highway, MaxoutDense
嵌入: Embedding
歸一化: BatchNormalization
池化: MaxPooling1D, MaxPooling2D, MaxPooling3D, AveragePooling1D, AveragePooling2D, AveragePooling3D, GlobalMaxPooling1D, GlobalAveragePooling1D, GlobalMaxPooling2D, GlobalAveragePooling2D
循環(huán): SimpleRNN, LSTM, GRU
包裝器:Bidirectional, TimeDistributed
GAN:
http://datascienceassn.org/sites/default/files/Generative%20Adversarial%20Nets.pdf
https://github.com/255BITS/HyperGAN
三、記錄開源資料:
機器學(xué)習(xí)相關(guān)
網(wǎng)站:
書籍:
- 統(tǒng)計學(xué)習(xí)方法、集體智慧編程、利用python進(jìn)行數(shù)據(jù)分析、機器學(xué)習(xí)實戰(zhàn)、機器學(xué)習(xí)西瓜書、Spark MLlib 機器學(xué)習(xí)
- 自然語言處理、計算廣告、推薦系統(tǒng)、計算機視覺、大數(shù)據(jù)應(yīng)用實踐
課程:
深度學(xué)習(xí)相關(guān)
網(wǎng)站:
- deeplearning.net 收藏夾必備,paper指南
- Neural Networks and Deep Learning
- UFLDL教程
書籍:
- DeepLearningBook 亞馬遜預(yù)售12月出,等不及花40元打
課程:
Tips:
①Follow 業(yè)界大牛的 Twitter,比如 Geoffrey Hinton (Google AI團(tuán)隊)、Aymeric Damien (Facebook AI實驗室)、Yoshua Bengio (蒙特利爾大學(xué)終身教授) 、Andrew Ng (斯坦福大學(xué)副教授)、Li Feifei、Andrej Karpathy 等,掌握大神們的最新研究進(jìn)展;
②Reddit 上訂閱一些主題如 /r/deeplearning,可以知道業(yè)界最新的新聞動態(tài),還有一些 discussion 如 WAYR(what_are_you_reading) 可以交流。
四、記錄開發(fā)機
自己的 MacBook Pro 一訓(xùn)練數(shù)據(jù)CPU升到200%300就開始發(fā)熱,甚至風(fēng)扇開始轉(zhuǎn);
偶然聽朋友建議到 SuperVessel上試試,裝了GPU下的TF,但是必須在規(guī)定的VPN下才能SSH;
接下來轉(zhuǎn)到 AWS,可以自己搭建應(yīng)用了, 現(xiàn)在有兩種虛擬機 g2.2xlarge(單塊CPU,4G顯存)和 g2.8xlarge(4塊CPU,4G顯存),都是CUDA的。知乎上的教程在AWS上配置深度學(xué)習(xí)主機。
阿里云HPC 和 Ucloud 現(xiàn)也有帶 Tesla 的物理機了。用前者低配版的訓(xùn)練 neural-style,14分鐘左右,
python neural_style.py --content content.jpg --styles style.jpg --output output.jpg --iteration 1000 --width 512。用之前算一算數(shù)據(jù)量要付費多少,大了的話買虛擬機還不如自己搭一臺工作站;等畢業(yè)了自己搭一臺工作站吧...
TPU是什么鬼
五、記錄集群部署
使用 git hook,配合 rsync,本地開發(fā)機一次提交代碼,使集群間指定目錄代碼一致,節(jié)省每臺機器都復(fù)制粘貼代碼的操作;這樣跑分布式訓(xùn)練時,只需要在每臺機器上帶參數(shù)來運行代碼就可以了
六、項目demo
IMAGE相關(guān):
1.1 圖像風(fēng)格轉(zhuǎn)換neural-style anishathalye/neural-style
1.2 素描自動上色 pfnet/PaintsChainer
1.3 圖像描述 iFighting/im2txt
1.4 圖片生成故事 ryankiros/neural-storyteller
1.5 小度機器人
1.6 生成明星臉NLP相關(guān):
2.1 古詩詞生成器RNN相關(guān):
3.1 創(chuàng)作歌曲/歌曲風(fēng)格轉(zhuǎn)換RL相關(guān):
4.1 憤怒的小鳥 yenchenlin/DeepLearningFlappyBird
4.2 模擬自動駕駛 kevinhughes27/TensorKart