大數(shù)據(jù)文摘作品,轉(zhuǎn)載要求見文末
編譯團隊|姚佳靈 裴迅
簡介
▼
深度學(xué)習(xí),是人工智能領(lǐng)域的一個突出的話題,被眾人關(guān)注已經(jīng)有相當長的一段時間了。它備受關(guān)注是因為在計算機視覺(Computer Vision)和游戲(Alpha GO)等領(lǐng)域有超越人類能力的突破 。自上一次調(diào)查(查看調(diào)查:https://www.analyticsvidhya.com/blog/2014/06/deep-learning-attention/)以來,對于深度學(xué)習(xí)的關(guān)注又出現(xiàn)了大幅增加的趨勢。
下圖是谷歌趨勢向我們所展示的:
如果你對這個話題感興趣的話,本文是一個很好的非技術(shù)性的介紹。如果你有興趣了解關(guān)于深度學(xué)習(xí)的最新趨勢,本文是一個很全面的匯總。
在這里,我們的目標是為新手和想進一步探索深度學(xué)習(xí)的人們提供一個學(xué)習(xí)路徑。那么,你準備好踏上征服深度學(xué)習(xí)的征程了嗎?我們上路吧。
步驟0:出征準備
建議在進入深入學(xué)習(xí)領(lǐng)域之前,應(yīng)該了解機器學(xué)習(xí)的基本知識?!皺C器學(xué)習(xí)的學(xué)習(xí)路徑”(https://www.analyticsvidhya.com/learning-path-learn-machine-learning/)是一個完整的資源,讓你開始了解該領(lǐng)域。
如果你想要一個較短的版本,請看下面:
基礎(chǔ)數(shù)學(xué),資源1:“數(shù)學(xué)|可汗學(xué)院(Khan academy,https://www.khanacademy.org/math)”(尤其是微積分、概率論和線性代數(shù))
Python基礎(chǔ),資源:“計算機科學(xué)入門”(https://www.datacamp.com/community/open-courses/introduction-to-python-machine-learning-with-analytics-vidhya-hackathons#gs.null),EDX課程
統(tǒng)計學(xué)基礎(chǔ),資源:“統(tǒng)計入門”(https://www.udacity.com/course/intro-to-statistics--st101),Udacity的課程
機器學(xué)習(xí)基礎(chǔ),資源:“機器學(xué)習(xí)入門”(https://www.udacity.com/course/intro-to-machine-learning--ud120),Udacity的課程
時間:建議2-6個月
步驟1:設(shè)置好你的機器
在繼續(xù)下一步之前,請確保有支撐硬件。一般建議應(yīng)該至少有:
一個足夠好的GPU(4+ GB),最好是Nvidia的
一個夠用的CPU(如英特爾酷睿i3可以,而英特爾Pentium 不行)
4GB 內(nèi)存或取決于數(shù)據(jù)集。
如果仍然不確定,可以看一下這個硬件指南http://timdettmers.com/2015/03/09/deep-learning-hardware-guide/
PS:如果你是一個鐵桿游戲玩家(當然不只是糖果粉碎機玩家!),你可能已經(jīng)有了所需硬件。
如果沒有所需硬件,可以購買或租用一個亞馬遜網(wǎng)頁服務(wù)(AWS,https://aws.amazon.com)。這里有個利用AWS進行深度學(xué)習(xí)的好指南:http://cs231n.github.io/aws-tutorial/。
注意:在這個階段不用安裝任何深度學(xué)習(xí)的學(xué)習(xí)庫,這些在步驟3中做。
步驟2:嘗試一下
現(xiàn)在有了足夠的預(yù)備知識,可以進一步了解深度學(xué)習(xí)了。
按照個人喜好,可以關(guān)注:
博客:(資源1:“深度學(xué)習(xí)的基礎(chǔ)”https://www.analyticsvidhya.com/blog/2016/03/introduction-deep-learning-fundamentals-neural-networks/,資源2:“黑客的神經(jīng)網(wǎng)絡(luò)指南” http://karpathy.github.io/neuralnets/)
視頻:“簡化的深度學(xué)習(xí)”https://www.youtube.com/watch?v=b99UVkWzYTQ&list=PLjJh1vlSEYgvGod9wWiydumYl8hOXixNu
教科書:《神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)》http://neuralnetworksanddeeplearning.com
除了這些先決條件,還應(yīng)該知道流行的深度學(xué)習(xí)程序庫和運行它們的語言。這是一個(非全面)列表(更全面的列表請查看維基頁面):
Caffe :http://caffe.berkeleyvision.org
DeepLearning4j:http://deeplearning4j.org
Tensorflow:https://www.tensorflow.org
Theano:http://www.deeplearning.net/software/theano/
Torch:http://torch.ch
其他一些著名的庫包括:
Mocha:http://mochajl.readthedocs.io/en/latest/
neon:http://neon.nervanasys.com/index.html/
H2O:http://www.h2o.ai/verticals/algos/deep-learning/
MXNet:https://github.com/dmlc/mxnet
Keras: https://keras.io
Lasagne:http://lasagne.readthedocs.io/en/latest/
Nolearn:https://github.com/dnouri/nolearn
這里有一個根據(jù)語言分類的深度學(xué)習(xí)庫列表:http://www.teglor.com/b/deep-learning-libraries-language-cm569/
建議看斯坦福的cs231n課程第12講:流行的深度學(xué)習(xí)庫概述http://cs231n.stanford.edu/slides/winter1516_lecture12.pdf
時間:建議1-3周
步驟3:選擇你自己的探險之路
現(xiàn)在有趣的部分來了!深度學(xué)習(xí)已被應(yīng)用在各個領(lǐng)域并帶來了最先進成果。為了進入到這個領(lǐng)域,你,讀者,需要選擇一條合適自己的路走。這應(yīng)該是個實踐經(jīng)驗,那樣你就可以在目前所理解的之上獲得一個合適的基礎(chǔ)。
注意:每條路徑包含一個入門簡介的博客,一個實踐項目,項目所需的深度學(xué)習(xí)的程序庫和輔助課程。首先理解簡介,然后安裝所需的程序庫,開始項目工作。如果你在這其中遇到任何困難,利用相關(guān)的課程以獲得支持。
深度學(xué)習(xí)之計算機視覺
入門簡介:“DL forComputer Vision”電腦視覺博客https://www.analyticsvidhya.com/blog/2016/04/deep-learning-computer-vision-introduction-convolution-neural-networks/
項目:“FacialKeypoint Detection”人臉關(guān)鍵點檢測教程http://danielnouri.org/notes/2014/12/17/using-convolutional-neural-nets-to-detect-facial-keypoints-tutorial/
所需程序庫:Nolearn,https://github.com/dnouri/nolearn#installation
相關(guān)課程:“cs231n: 卷積神經(jīng)網(wǎng)絡(luò)視覺識別”http://cs231n.stanford.edu
深度學(xué)習(xí)之自然語言處理
入門簡介:“DeepLearning, NLP, and Representations”(“深度學(xué)習(xí),自然語言處理與呈現(xiàn)”博客,http://colah.github.io/posts/2014-07-NLP-RNNs-Representations/)
項目:“深度學(xué)習(xí)聊天機器人”:
“第一部分”http://www.wildml.com/2016/04/deep-learning-for-chatbots-part-1-introduction/
“第二部分”http://www.wildml.com/2016/07/deep-learning-for-chatbots-2-retrieval-based-model-tensorflow/
所需程序庫:tensorflow
https://github.com/dennybritz/chatbot-retrieval/#setup
相關(guān)課程:“cs224d:深度學(xué)習(xí)在自然語言處理方面的應(yīng)用” http://cs224d.stanford.edu
深度學(xué)習(xí)之語音/音頻識別
入門簡介:“深度演講:深度學(xué)習(xí)的經(jīng)驗教訓(xùn)”新聞和相應(yīng)的視頻。http://usa.baidu.com/deep-speech-lessons-from-deep-learning/
項目:“用Magenta生成音樂(tensorflow)”https://magenta.tensorflow.org/2016/06/10/recurrent-neural-network-generation-tutorial/
所需程序庫:Magenta,https://github.com/tensorflow/magenta#installation
相關(guān)課程:“深度學(xué)習(xí)(2016春季),cilvr實驗室@紐約http://cilvr.cs.nyu.edu/doku.php?id=courses:deeplearning2016:start
深度學(xué)習(xí)之強化學(xué)習(xí)
入門介紹與項目:“深度強化學(xué)習(xí):來自Pixels的乒乓球游戲” http://karpathy.github.io/2016/05/31/rl/
所需程序庫:沒有要求。但是需要openAI gym (https://github.com/openai/gym#installation)來測試你的模型。
相關(guān)課程:“cs294:深度強化學(xué)習(xí)”http://rll.berkeley.edu/deeprlcourse/
時間:建議1-2個月
步驟4:深入深度學(xué)習(xí)
現(xiàn)在(幾乎)能夠在深度學(xué)習(xí)名人堂上占一個坑!前面的道路是漫長的和深刻的(雙關(guān)語),其實主要是還未探索過的。現(xiàn)在是靠你自己熟悉和使用這個新技能的時候。這里有一些技巧,可以提升你的技能。
選擇一個不同的路徑重復(fù)上述步驟。
深度學(xué)習(xí)之以上沒提到的?。ɡ纾航灰椎纳疃葘W(xué)習(xí),為優(yōu)化能源效率的深度學(xué)習(xí)https://deepmind.com/blog/?t=1)
使用你新學(xué)到的技能來創(chuàng)建一個東西(請記得,力量越大,責(zé)任越大,https://xkcd.com/1613/)
測試你的深度學(xué)習(xí)技能(如Kaggle, https://www.kaggle.com/competitions)
參與深度學(xué)習(xí)社區(qū)(如谷歌群 https://plus.google.com/u/0/communities/112866381580457264725,DL subreddithttps://www.reddit.com/r/deeplearning/)
關(guān)注最新的研究成果及研究人員。(如“RE.WORK DL Summit ”,https://www.re-work.co/events/deep-learning-sanfran-2016”)
時間:建議——無上限!
結(jié)語
▼
希望本文對各位讀者有幫助!