乾貨 | 請收下這份2018學習清單:150個最好的機器學習,NLP和Python教程

.. 本文英文出處:Robbie Allen

翻譯/雷鋒網字幕組 吳楚

校對/ 雷鋒網 田晉陽

機器學習的發展可以追溯到1959年,有着豐富的歷史。這個領域也正在以前所未有的速度進化。在之前的一篇文章中,我們討論過為什麼通用人工智能領域即將要爆發。有興趣入坑ML的小夥伴不要拖延了,時不我待!

在今年秋季開始準備博士項目的時候,我已經精選了一些有關機器學習和NLP的優質網絡資源。一般我會找一個有意思的教程或者視頻,再由此找到三四個,甚至更多的教程或者視頻。猛回頭,發現標收藏夾又多了20個資源待我學習(推薦提升效率工具Tab Bundler)。

找到超過25個有關ML的「小抄」后,我寫一篇博文,裡面的資源都有超鏈接。

為了幫助也在經歷類似探索過程的童鞋,我把至今發現的最好的教程匯總了一個列表。當然這不是網絡上有關ML的最全集合,而且其中有一部分內容很普通。我的目標是要找到最好的有關機器學習子方向和NLP的教程。

我引用了能簡潔介紹概念的基礎內容。我已經迴避包含一些大部頭書的章節,和對理解概念沒有幫助的科研論文。那為什麼不買一本書呢? 因為教程能更好地幫助你學一技之長或者打開新視野。

我把這博文分成四個部分,機器學習,NLP,Python,和數學基礎。在每一小節我會隨機引入一些問題。由於這方面學習材料太豐富了,本文並未涵括所有內容。

   機器學習

1、機器學習就是這麼好玩!(medium.com/@ageitgey)

機器學習速成課程(Berkeley的ML):

Part I:https://ml.berkeley.edu/blog/2016/11/06/tutorial-1/

Part II:https://ml.berkeley.edu/blog/2016/12/24/tutorial-2/

Part III:https://ml.berkeley.edu/blog/2017/02/04/tutorial-3/

機器學習入門與應用:實例圖解(toptal.com)

機器學習的簡易指南 (monkeylearn.com)

如何選擇機器學習算法?(sas.com)


2、Activation and Loss Functions

激活函數與損失函數

sigmoid 神經元 (neuralnetworksanddeeplearning.com)

激活函數在神經網絡中有什麼作用?(quora.com)

神經網絡的激活函數大全及其優劣 (stats.stackexchange.com)

激活函數及其分類比較(medium.com)

理解對數損失 (exegetic.biz)

損失函數(Stanford CS231n)

損失函數L1 與L2 比較(rishy.github.io)

交叉熵損失函數(neuralnetworksanddeeplearning.com)


3、偏差(Bias)

神經網絡中的偏差的作用(stackoverflow.com)

神經網絡中的偏差節點(makeyourownneuralnetwork.blogspot.com)

什麼是人工神經網絡中的偏差 (quora.com)


4、感知器(Perceptron)

感知器模型(neuralnetworksanddeeplearning.com)

感知器(natureofcode.com)

一層的神經網絡(感知器模型)(dcu.ie)

從感知器模型到深度網絡(toptal.com)


5、回歸算法

線性回歸分析簡介(duke.edu)

線性回歸 (ufldl.stanford.edu)

線性回歸 (readthedocs.io)

邏輯斯特回歸 (readthedocs.io)

機器學習之簡單線性回歸教程(machinelearningmastery.com)

機器學習之邏輯斯特回歸教程(machinelearningmastery.com)

softmax 回歸(ufldl.stanford.edu)

 

6、梯度下降

基於梯度下降的學習 (neuralnetworksanddeeplearning.com)

梯度下降(iamtrask.github.io)

如何理解梯度下降算法?(kdnuggets.com)

梯度下降優化算法概覽(sebastianruder.com)

優化算法:隨機梯度下降算法 (Stanford CS231n)


7、生成學習

生成學習算法 (Stanford CS229)

貝葉斯分類算法之實例解析(monkeylearn.com)


8、支持向量機

支持向量機(SVM)入門(monkeylearn.com)

支持向量機(Stanford CS229)

線性分類:支持向量機,Softmax (Stanford 231n)


9、後向傳播算法(Backpropagation)

後向傳播算法必知(medium.com/@karpathy)

來,給我圖解一下神經網絡後向傳播算法?(github.com/rasbt)

後向傳播算法是如何運行的?(neuralnetworksanddeeplearning.com)

沿時後向傳播算法與梯度消失(wildml.com)

簡易入門沿時後向傳播算法(machinelearningmastery.com)

奔跑吧,後向傳播算法!(Stanford CS231n)


10、深度學習

果殼裡的深度學習(nikhilbuduma.com)

深度學習教程 (Quoc V. Le)

深度學習,什麼鬼?(machinelearningmastery.com)

什麼是人工智能,機器學習,深度學習之間的區別? (nvidia.com)


11、優化算法與降維算法

數據降維的七招鍊金術(knime.org)

主成分分析(Stanford CS229)

Dropout: 改進神經網絡的一個簡單方法(Hinton @ NIPS 2012)

如何溜你們家的深度神經網絡?(rishy.github.io)


12、長短期記憶(LSTM) 

老司機帶你簡易入門長短期神經網絡(machinelearningmastery.com)

理解LSTM網絡(colah.github.io) 

漫談LSTM模型(echen.me)

小學生看完這教程都可以用Python實現一個LSTM-RNN (iamtrask.github.io)


13、卷積神經網絡(CNNs)

卷積網絡入門(neuralnetworksanddeeplearning.com)

深度學習與卷積神經網絡模型(medium.com/@ageitgey)

拆解卷積網絡模型(colah.github.io)

理解卷積網絡(colah.github.io)


14、遞歸神經網絡(RNNs)

遞歸神經網絡教程 (wildml.com)

注意力模型與增強型遞歸神經網絡(distill.pub)

這麼不科學的遞歸神經網絡模型(karpathy.github.io)

深入遞歸神經網絡模型(nikhilbuduma.com)


 15、強化學習

給小白看的強化學習及其實現指南 (analyticsvidhya.com)

強化學習教程(mst.edu)

強化學習,你學了么?(wildml.com)

深度強化學習:開掛玩Pong (karpathy.github.io)


16、對抗式生成網絡模型(GANs)

什麼是對抗式生成網絡模型?(nvidia.com)

用對抗式生成網絡創造8個像素的藝術(medium.com/@ageitgey)

對抗式生成網絡入門(TensorFlow)(aylien.com)

《對抗式生成網絡》(小學一年級~上冊)(oreilly.com)


17、多任務學習

深度神經網絡中的多任務學習概述(sebastianruder.com)


  NLP

1、NLP

《基於神經網絡模型的自然語言處理》(小學一年級~上冊)(Yoav Goldberg)

自然語言處理權威指南(monkeylearn.com)

自然語言處理入門(algorithmia.com)

自然語言處理教程 (vikparuchuri.com)

Natural Language Processing (almost) from Scratch (arxiv.org)

初高中生課程:自然語言處理 (arxiv.org)


2、深度學習和 NLP

基於深度學習的NLP應用(arxiv.org)

基於深度學習的NLP(Richard Socher)

理解卷積神經網絡在NLP中的應用(wildml.com)

深度學習,NLP,表示學習(colah.github.io)

嵌入表示,編碼,注意力,預測 : 新一代深度學習因NLP的精妙而存在(explosion.ai)

理解基於神經網絡的自然語言處理(Torch實現) (nvidia.com)

深度學習在NLP中的應用(Pytorch實現) (pytorich.org)

 3、詞向量(Word Vectors)

詞袋法遇到感知器裝袋法(kaggle.com)

學習單詞嵌入表示法(sebastianruder.com)

Part I:http://sebastianruder.com/word-embeddings-1/index.html

Part II:http://sebastianruder.com/word-embeddings-softmax/index.html

Part III:http://sebastianruder.com/secret-word2vec/index.html

單詞嵌入表示的神奇力量(acolyer.org)

解釋word2vec 的參數學習(arxiv.org)

word2vec教程 skip-gram 模型,負採樣(mccormickml.com)


4、Encoder-Decoder

注意力機制與記憶機制在深度學習與NLP中的應用(wildml.com)

序列到序列模型(tensorflow.org)

利用神經網絡學習序列到序列模型(NIPS 2014)

基於深度學習和魔法序列的語言翻譯(medium.com/@ageitgey)

如何使用編碼-解碼LSTM輸出隨機整數對應的序列(machinelearningmastery.com)

tf-seq2seq (google.github.io)


  Python

1、Python

使用Python精通機器學習的七步法(kdnuggets.com)

機器學習的一個簡例(nbviewer.jupyter.org)


2、實例

小白如何用python實現感知器算法(machinelearningmastery.com)

小學生用python實現一個神經網絡(wildml.com)

只用11行python代碼實現一個神經網絡算法(iamtrask.github.io)

自己動手用ptython實現最近鄰算法(kdnuggets.com)

python實現長短期記憶網絡的記憶機制(machinelearningmastery.com)

如何用長短期記憶遞歸神經網絡輸出隨機整數(machinelearningmastery.com)

如何用seq2seq遞歸神經網絡學習加法運算(machinelearningmastery.com)


3、Scipy 和 numpy

Scipy課程筆記(scipy-lectures.org)

Python Numpy 教程(Stanford CS231n)

Numpy 與 Scipy 入門(UCSB CHE210D)

給科學家看的Python微課程(nbviewer.jupyter.org)


4、scikit-learn

PyCon會議上的Scik-learn 教程(nbviewer.jupyter.org)

Scikit-learn 中的分類算法(github.com/mmmayo13)

Scikit-learn教程(scikit-learn.org)

簡明版Scikit-learn教程(github.com/mmmayo13)


5、Tensorflow

Tensorflow教程(tensorflow.org)

Tensorflow入門--CPU vs GPU

 (medium.com/@erikhallstrm)

Tensorflow入門(metaflow.fr)

Tensorflow實現RNNs (wildml.com)

Tensorflow實現文本分類CNN模型(wildml.com)

如何用Tensorflow做文本摘要(surmenok.com)


6、PyTorch

Pytorch教程(pytorch.org)

Pytorch快手入門 (gaurav.im)

利用Pytorch深度學習教程(iamtrask.github.io)

Pytorch實戰(github.com/jcjohnson)

PyTorch 教程(github.com/MorvanZhou)

深度學習研究人員看的PyTorch教程(github.com/yunjey)


  數學

1、機器學習中的數學 (ucsc.edu)

https://people.ucsc.edu/~praman1/static/pub/math-for-ml.pdf

機器學習數學基礎(UMIACS CMSC422)


2、線性代數

線性代數簡明指南(betterexplained.com)

碼農眼中矩陣乘法 (betterexplained.com)

理解叉乘運算(betterexplained.com)

理解點乘運算(betterexplained.com)

機器學習中的線性代數(U. of Buffalo CSE574)

深度學習的線代小抄(medium.com)

複習線性代數與課後閱讀材料(Stanford CS229)


3、概率論

貝葉斯理論 (betterexplained.com)

理解貝葉斯概率理論(Stanford CS229)

複習機器學習中的概率論(Stanford CS229)

概率論(U. of Buffalo CSE574)

機器學習中的概率論(U. of Toronto CSC411)


4、計算方法(Calculus)

如何理解導數:求導法則,指數和算法(betterexplained.com)

如何理解導數,乘法,冪指數,鏈式法(betterexplained.com)

向量計算,理解梯度(betterexplained.com)

微分計算(Stanford CS224n)

計算方法概論(readthedocs.io)


為幫助對自然語言處理感興趣的同學快速高效入門,雷鋒網AI慕課學院特邀新加坡南洋理工大學博士玖強老師,為大家帶來《NLP工程師入門實踐班:基於深度學習的自然語言處理》,課程包含NLP三大知識模塊,算法理論+案例實訓,搭配典型行業應用,層層遞進,直通自然語言處理的本質及其應用!


早鳥價799元倒計時3天!!

更有組團優惠,4人成團每人優惠200元,快來組團報名吧!



想在手機閱讀更多程式設計資訊?下載【香港矽谷】Android應用
分享到Facebook
技術平台: Nasthon Systems