机器学习已经发展了很久,它的历史可以追溯到1959年,但是如今此领域的发展速度可以说是空前的。在最近的几篇文章中,我讨论了人工智能领域为何会在现在以及不久的将来持续蓬勃发展。如今很多对机器学习感兴趣的同学都普遍表示入门很难。
在准备博士课题的期间,我尝试在网络上搜索与机器学习和自然语言处理相关的优秀资源。当我找了一个有趣的教程或者视频,从这个教程或者视频出发我又可以找到三四个更多的教程或视频,最终就会出现的画面就是我还没有开始认真研究第一个找到的教程,浏览器已经打开了 20 个标签等待我去浏览了。(注: Tab Bundler 可以帮助让我们的标签更有条理)。
在找到了超过 25 个与机器学习相关的速查表后,我写了篇文章《27 个机器学习、数学、Python 速查表》, 在里面整理了所有优秀的速查表。
为了给后面学习的童鞋铺路,我将我找到的最好的一些教程内容整理成了一份列表。这份列表并没有包含所有网上能找到的与机器学习相关的教程,否则这份列表将会过于臃肿。我的目标就是将我在机器学习和自然语言处理领域各个方面找到的我认为最好的教程整理出来。
在教程中,为了能够更好的让读者理解其中的概念,我将避免罗列书中每章的详细内容,而是总结一些概念性的介绍内容。为什么不直接去买本书?当你想要对某些特定的主题或者不同方面进行了初步了解时,我相信这些教程对你可能帮助更大。
本文中我将分四个主题进行整理:机器学习、自然语言处理、Python 和数学。在每个主题中我将包含一个例子和多个资源。当然我不可能完全覆盖所有的主题啦。
在将来,我也将会整理一系列类似的资源列表,包括书籍,视频和代码项目等。因为我目前也的确正在编译这些资源。
如果你发现我在这里遗漏了好的教程资源,请联系告诉我。为了避免资源重复罗列,我在每个主题下只列出了5、6个教程。下面的每个链接都应该链接了和其他链接不同的资源,也会通过不同的方式(例如幻灯片代码段)或者不同的角度呈现出这些内容。
机器学习
Machine Learning is Fun! (medium测试数据/@ageitgey)
Machine Learning Crash Course: Part I, Part II, Part III (Machine Learning at Berkeley)
An Introduction to Machine Learning Theory and Its Applications: A Visual Tutorial with Examples(toptal测试数据)
A Gentle Guide to Machine Learning (monkeylearn测试数据)
Which machine learning algorithm should I use? (sas测试数据)激活函数和损失函数
Sigmoid neurons (neuralnetworksanddeeplearning测试数据)
What is the role of the activation function in a neural network? (quora测试数据)
Comprehensive list of activation functions in neural networks with pros/cons (stats.stackexchange测试数据)
Activation functions and it’s types-Which is better? (medium测试数据)
Making Sense of Logarithmic Loss (exegetic.biz)
Loss Functions (Stanford CS231n)
L1 vs. L2 Loss function (rishy.github.io)
The cross-entropy cost function (neuralnetworksanddeeplearning测试数据)偏差
Role of Bias in Neural Networks (stackoverflow测试数据)
Bias Nodes in Neural Networks (makeyourownneuralnetwork.blogspot测试数据)What is bias in artificial neural network? (quora测试数据)
感知器
Perceptrons (neuralnetworksanddeeplearning测试数据)
The Perception (natureofcode测试数据)
Single-layer Neural Networks (Perceptrons) (dcu.ie)
From Perceptrons to Deep Networks (toptal测试数据)回归
Introduction to linear regression analysis (duke.edu)
Linear Regression (ufldl.stanford.edu)
Linear Regression (readthedocs.io)
Logistic Regression (readthedocs.io)
Simple Linear Regression Tutorial for Machine Learning (machinelearningmastery测试数据)
Logistic Regression Tutorial for Machine Learning (machinelearningmastery测试数据)
Softmax Regression (ufldl.stanford.edu)梯度下降
Learning with gradient descent (neuralnetworksanddeeplearning测试数据)
Gradient Descent (iamtrask.github.io)
How to understand Gradient Descent algorithm (kdnuggets测试数据)
An overview of gradient descent optimization algorithms (sebastianruder测试数据)
Optimization: Stochastic Gradient Descent (Stanford CS231n)生成学习
Generative Learning Algorithms (Stanford CS229)
A practical explanation of a Naive Bayes classifier (monkeylearn测试数据)支持向量机
An introduction to Support Vector Machines (SVM) (monkeylearn测试数据)
Support Vector Machines (Stanford CS229)
Linear classification: Support Vector Machine, Softmax (Stanford 231n)反向传播
Yes you should understand backprop (medium测试数据/@karpathy)
Can you give a visual explanation for the back propagation algorithm for neural networks?(github测试数据/rasbt)
How the backpropagation algorithm works (neuralnetworksanddeeplearning测试数据)
Backpropagation Through Time and Vanishing Gradients (wildml测试数据)
A Gentle Introduction to Backpropagation Through Time (machinelearningmastery测试数据)
Backpropagation, Intuitions (Stanford CS231n)深度学习
Deep Learning in a Nutshell (nikhilbuduma测试数据)
A Tutorial on Deep Learning (Quoc V. Le)
What is Deep Learning? (machinelearningmastery测试数据)
What’s the Difference Between Artificial Intelligence, Machine Learning, and Deep Learning? (nvidia测试数据)优化和降维
Seven Techniques for Data Dimensionality Reduction (knime.org)
Principal components analysis (Stanford CS229)
Dropout: A simple way to improve neural networks (Hinton @ NIPS 2012)
How to train your Deep Neural Network (rishy.github.io)长短期记忆(LSTM)
A Gentle Introduction to Long Short-Term Memory Networks by the Experts (machinelearningmastery测试数据)
Understanding LSTM Networks (colah.github.io)
Exploring LSTMs (echen.me)
Anyone Can Learn To Code an LSTM-RNN in Python (iamtrask.github.io)卷积神经网络(CNNs)
Introducing convolutional networks (neuralnetworksanddeeplearning测试数据)
Deep Learning and Convolutional Neural Networks (medium测试数据/@ageitgey)
Conv Nets: A Modular Perspective (colah.github.io)
Understanding Convolutions (colah.github.io)循环神经网络(RNNs)
Recurrent Neural Networks Tutorial (wildml测试数据)
Attention and Augmented Recurrent Neural Networks (distill.pub)
The Unreasonable Effectiveness of Recurrent Neural Networks (karpathy.github.io)
A Deep Dive into Recurrent Neural Nets (nikhilbuduma测试数据)增强学习
Simple Beginner’s guide to Reinforcement Learning & its implementation (analyticsvidhya测试数据)
A Tutorial for Reinforcement Learning (mst.edu)
Learning Reinforcement Learning (wildml测试数据)
Deep Reinforcement Learning: Pong from Pixels (karpathy.github.io)生成对抗网络(GANs)
What’s a Generative Adversarial Network? (nvidia测试数据)
Abusing Generative Adversarial Networks to Make 8-bit Pixel Art (medium测试数据/@ageitgey)
An introduction to Generative Adversarial Networks (with code in TensorFlow) (aylien测试数据)
Generative Adversarial Networks for Beginners (oreilly测试数据)多任务学习
An Overview of Multi-Task Learning in Deep Neural Networks (sebastianruder测试数据)自然语言处理(NLP)
A Primer on Neural Network Models for Natural Language Processing (Yoav Goldberg)
The Definitive Guide to Natural Language Processing (monkeylearn测试数据)
Introduction to Natural Language Processing (algorithmia测试数据)
Natural Language Processing Tutorial (vikparuchuri测试数据)Natural Language Processing (almost) from Scratch (arxiv.org)
深度学习与NLP
Deep Learning applied to NLP (arxiv.org)
Deep Learning for NLP (without Magic) (Richard Socher)
Understanding Convolutional Neural Networks for NLP (wildml测试数据)
Deep Learning, NLP, and Representations (colah.github.io)
Embed, encode, attend, predict: The new deep learning formula for state-of-the-art NLP models(explosion.ai)
Understanding Natural Language with Deep Neural Networks Using Torch (nvidia测试数据)
Deep Learning for NLP with Pytorch (pytorich.org)词向量
Bag of Words Meets Bags of Popcorn (kaggle测试数据)
On word embeddings Part I, Part II, Part III (sebastianruder测试数据)
The amazing power of word vectors (acolyer.org)
word2vec Parameter Learning Explained (arxiv.org)
Word2Vec Tutorial?—?The Skip-Gram Model, Negative Sampling (mccormickml测试数据)编码器-解码器
Attention and Memory in Deep Learning and NLP (wildml测试数据)
Sequence to Sequence Models (tensorflow.org)
Sequence to Sequence Learning with Neural Networks (NIPS 2014)
Machine Learning is Fun Part 5: Language Translation with Deep Learning and the Magic of Sequences(medium测试数据/@ageitgey)
How to use an Encoder-Decoder LSTM to Echo Sequences of Random Integers(machinelearningmastery测试数据)
tf-seq2seq (google.github.io)Python
7 Steps to Mastering Machine Learning With Python (kdnuggets测试数据)
An example machine learning notebook (nbviewer.jupyter.org)例子
How To Implement The Perceptron Algorithm From Scratch In Python (machinelearningmastery测试数据)
Implementing a Neural Network from Scratch in Python (wildml测试数据)
A Neural Network in 11 lines of Python (iamtrask.github.io)
Implementing Your Own k-Nearest Neighbour Algorithm Using Python (kdnuggets测试数据)
Demonstration of Memory with a Long Short-Term Memory Network in Python(machinelearningmastery测试数据)
How to Learn to Echo Random Integers with Long Short-Term Memory Recurrent Neural Networks(machinelearningmastery测试数据)
How to Learn to Add Numbers with seq2seq Recurrent Neural Networks (machinelearningmastery测试数据)Numpy和Scipy
Scipy Lecture Notes (scipy-lectures.org)
Python Numpy Tutorial (Stanford CS231n)
An introduction to Numpy and Scipy (UCSB CHE210D)
A Crash Course in Python for Scientists (nbviewer.jupyter.org)scikit-learn
PyCon scikit-learn Tutorial Index (nbviewer.jupyter.org)
scikit-learn Classification Algorithms (github测试数据/mmmayo13)
scikit-learn Tutorials (scikit-learn.org)
Abridged scikit-learn Tutorials (github测试数据/mmmayo13)Tensorflow
Tensorflow Tutorials (tensorflow.org)
Introduction to TensorFlow?—?CPU vs GPU (medium测试数据/@erikhallstrm)
TensorFlow: A primer (metaflow.fr)
RNNs in Tensorflow (wildml测试数据)
Implementing a CNN for Text Classification in TensorFlow (wildml测试数据)
How to Run Text Summarization with TensorFlow (surmenok测试数据)PyTorch
PyTorch Tutorials (pytorch.org)
A Gentle Intro to PyTorch (gaurav.im)
Tutorial: Deep Learning in PyTorch (iamtrask.github.io)
PyTorch Examples (github测试数据/jcjohnson)
PyTorch Tutorial (github测试数据/MorvanZhou)
PyTorch Tutorial for Deep Learning Researchers (github测试数据/yunjey)Math
Math for Machine Learning (ucsc.edu)
Math for Machine Learning (UMIACS CMSC422)线性代数
An Intuitive Guide to Linear Algebra (betterexplained测试数据)
A Programmer’s Intuition for Matrix Multiplication (betterexplained测试数据)
Understanding the Cross Product (betterexplained测试数据)
Understanding the Dot Product (betterexplained测试数据)
Linear Algebra for Machine Learning (U. of Buffalo CSE574)
Linear algebra cheat sheet for deep learning (medium测试数据)
Linear Algebra Review and Reference (Stanford CS229)概率论
Understanding Bayes Theorem With Ratios (betterexplained测试数据)Review of Probability Theory (Stanford CS229)
Probability Theory Review for Machine Learning (Stanford CS229)
Probability Theory (U. of Buffalo CSE574)
Probability Theory for Machine Learning (U. of Toronto CSC411)微积分
How To Understand Derivatives: The Quotient Rule, Exponents, and Logarithms (betterexplained测试数据)
How To Understand Derivatives: The Product, Power & Chain Rules (betterexplained测试数据)
Vector Calculus: Understanding the Gradient (betterexplained测试数据)
Differential Calculus (Stanford CS224n)
Calculus Overview (readthedocs.io)查看更多关于150 多个 ML、NLP 和 Python 相关的教程的详细内容...