新年礼物150个最好的机器学习,NLP和Python教程

Posted 智能观

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了新年礼物150个最好的机器学习,NLP和Python教程相关的知识,希望对你有一定的参考价值。


来源:unsupervisedmethods


机器学习的发展可以追溯到1959年,有着丰富的历史。这个领域也正在以前所未有的速度进化。在《通用人工智能》一文,我们讨论过为什么通用人工智能领域即将要爆发。有兴趣入坑ML的小伙伴不要拖延了,时不我待!

 

在今年秋季开始准备博士项目的时候,我已经精选了一些有关机器学习和NLP的优质网络资源。一般我会找一个有意思的教程或者视频,再由此找到三四个,甚至更多的教程或者视频。猛回头,发现标收藏夹又多了20个资源待我学习(推荐提升效率工具Tab Bundler)。


为了帮助也在经历类似探索过程的童鞋,我把至今发现的最好的教程汇总了一个列表。当然这不是网络上有关ML的最全集合,而且其中有一部分内容很普通。我的目标是要找到最好的有关机器学习子方向和NLP的教程。

 

我引用了能简洁介绍概念的基础内容。我已经回避包含一些大部头书的章节,和对理解概念没有帮助的科研论文。那为什么不买一本书呢? 因为教程能更好地帮助你学一技之长或者打开新视野。

 

我把这博文分成四个部分,机器学习,NLP,Python,和数学基础。在每一小节我会随机引入一些问题。由于这方面学习材料太丰富了,本文并未涵括所有内容。


【新年礼物】150个最好的机器学习,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/

 

机器学习入门与应用:实例图解

https://www.toptal.com/machine-learning/machine-learning-theory-an-introductory-primer

 

机器学习的简易指南

https://monkeylearn.com/blog/a-gentle-guide-to-machine-learning/

 

如何选择机器学习算法?

https://blogs.sas.com/content/subconsciousmusings/2017/04/12/machine-learning-algorithm-use/

 

2.Activation and Loss Functions

激活函数与损失函数


sigmoid 神经元

http://neuralnetworksanddeeplearning.com/chap1.html#sigmoid_neurons

 

激活函数在神经网络中有什么作用?

https://www.quora.com/What-is-the-role-of-the-activation-function-in-a-neural-network

 

神经网络的激活函数大全及其优劣 

https://stats.stackexchange.com/questions/115258/comprehensive-list-of-activation-functions-in-neural-networks-with-pros-cons

 

激活函数及其分类比较

https://medium.com/towards-data-science/activation-functions-and-its-types-which-is-better-a9a5310cc8f

 

理解对数损失

http://www.exegetic.biz/blog/2015/12/making-sense-logarithmic-loss/

 

损失函数

http://cs231n.github.io/neural-networks-2/#losses

 

损失函数L1 与L2 比较

http://rishy.github.io/ml/2015/07/28/l1-vs-l2-loss/

 

交叉熵损失函数

http://neuralnetworksanddeeplearning.com/chap3.html#the_cross-entropy_cost_function

 

3.偏差(Bias)

神经网络中的偏差的作用

https://stackoverflow.com/questions/2480650/role-of-bias-in-neural-networks/2499936#2499936

 

神经网络中的偏差节点

http://makeyourownneuralnetwork.blogspot.com/2016/06/bias-nodes-in-neural-networks.html

 

什么是人工神经网络中的偏差 

https://www.quora.com/What-is-bias-in-artificial-neural-network

 

4.感知器(Perceptron)

感知器模型

http://neuralnetworksanddeeplearning.com/chap1.html#perceptrons

 

感知器

http://natureofcode.com/book/chapter-10-neural-networks/#chapter10_figure3

 

一层的神经网络(感知器模型)

http://computing.dcu.ie/~humphrys/Notes/Neural/single.neural.html

 

从感知器模型到深度网络

https://www.toptal.com/machine-learning/an-introduction-to-deep-learning-from-perceptrons-to-deep-networks

 

5.回归算法

线性回归分析简介

http://people.duke.edu/~rnau/regintro.htm

 

线性回归

http://ufldl.stanford.edu/tutorial/supervised/LinearRegression/

 

线性回归

http://mlcheatsheet.readthedocs.io/en/latest/linear_regression.html

 

逻辑斯特回归

http://mlcheatsheet.readthedocs.io/en/latest/logistic_regression.html

 

机器学习之简单线性回归教程

http://machinelearningmastery.com/simple-linear-regression-tutorial-for-machine-learning/

 

机器学习之逻辑斯特回归教程

http://machinelearningmastery.com/logistic-regression-tutorial-for-machine-learning/

 

softmax 回归

http://ufldl.stanford.edu/tutorial/supervised/SoftmaxRegression/


6.梯度下降

基于梯度下降的学习 

http://neuralnetworksanddeeplearning.com/chap1.html#learning_with_gradient_descent

 

梯度下降

http://iamtrask.github.io/2015/07/27/python-network-part2/

 

如何理解梯度下降算法?

http://www.kdnuggets.com/2017/04/simple-understand-gradient-descent-algorithm.html

 

梯度下降优化算法概览

http://sebastianruder.com/optimizing-gradient-descent/

 

优化算法:随机梯度下降算法

http://cs231n.github.io/optimization-1/

 

7.生成学习

生成学习算法

http://cs229.stanford.edu/notes/cs229-notes2.pdf

 

贝叶斯分类算法之实例解析

https://monkeylearn.com/blog/practical-explanation-naive-bayes-classifier/

 

8.支持向量机

支持向量机(SVM)入门

https://monkeylearn.com/blog/introduction-to-support-vector-machines-svm/

 

支持向量机

http://cs229.stanford.edu/notes/cs229-notes3.pdf

 

线性分类:支持向量机,Softmax 

http://cs231n.github.io/linear-classify/

 

9.后向传播算法

后向传播算法必知

https://medium.com/@karpathy/yes-you-should-understand-backprop-e2f06eab496b

 

来,给我图解一下神经网络后向传播算法?

https://github.com/rasbt/python-machine-learning-book/blob/master/faq/visual-backpropagation.md

 

后向传播算法是如何运行的?

http://neuralnetworksanddeeplearning.com/chap2.html

 

沿时后向传播算法与梯度消失

http://www.wildml.com/2015/10/recurrent-neural-networks-tutorial-part-3-backpropagation-through-time-and-vanishing-gradients/

 

简易入门沿时后向传播算法

http://machinelearningmastery.com/gentle-introduction-backpropagation-time/

 

奔跑吧,反向传播算法!

http://cs231n.github.io/optimization-2/

 

10.深度学习

果壳里的深度学习

http://nikhilbuduma.com/2014/12/29/deep-learning-in-a-nutshell/

 

深度学习教程

http://ai.stanford.edu/~quocle/tutorial1.pdf

 

深度学习,什么鬼?

http://machinelearningmastery.com/what-is-deep-learning/

 

什么是人工智能,机器学习,深度学习之间的区别?

https://blogs.nvidia.com/blog/2016/07/29/whats-difference-artificial-intelligence-machine-learning-deep-learning-ai/

 

11.优化算法与降维算法

数据降维的七招炼金术

https://www.knime.org/blog/seven-techniques-for-data-dimensionality-reduction

 

主成分分析

http://cs229.stanford.edu/notes/cs229-notes10.pdf

 

Dropout: 改进神经网络的一个简单方法

http://videolectures.net/site/normal_dl/tag=741100/nips2012_hinton_networks_01.pdf

 

如何溜你们家的深度神经网络?

http://rishy.github.io/ml/2017/01/05/how-to-train-your-dnn/


12.长短期记忆(LSTM) 

老司机带你简易入门长短期神经网络

http://machinelearningmastery.com/gentle-introduction-long-short-term-memory-networks-experts/

 

理解LSTM网络

http://colah.github.io/posts/2015-08-Understanding-LSTMs/

 

漫谈LSTM模型

http://blog.echen.me/2017/05/30/exploring-lstms/

 

小学生看完这教程都可以用Python实现一个LSTM-RNN 

http://iamtrask.github.io/2015/11/15/anyone-can-code-lstm/

 

13.卷积神经网络

卷积网络入门

http://neuralnetworksanddeeplearning.com/chap6.html#introducing_convolutional_networks

 

深度学习与卷积神经网络模型

https://medium.com/@ageitgey/machine-learning-is-fun-part-3-deep-learning-and-convolutional-neural-networks-f40359318721

 

拆解卷积网络模型

http://colah.github.io/posts/2014-07-Conv-Nets-Modular/

 

理解卷积网络

http://colah.github.io/posts/2014-07-Understanding-Convolutions/


14.递归神经网络(RNNs)

递归神经网络教程

http://www.wildml.com/2015/09/recurrent-neural-networks-tutorial-part-1-introduction-to-rnns/

 

注意力模型与增强型递归神经网络

http://distill.pub/2016/augmented-rnns/

 

这么不科学的递归神经网络模型

http://karpathy.github.io/2015/05/21/rnn-effectiveness/

 

深入递归神经网络模型

http://nikhilbuduma.com/2015/01/11/a-deep-dive-into-recurrent-neural-networks/


 15.强化学习

给小白看的强化学习及其实现指南 

https://www.analyticsvidhya.com/blog/2017/01/introduction-to-reinforcement-learning-implementation/

 

强化学习教程

https://web.mst.edu/~gosavia/tutorial.pdf

 

强化学习,你学了么?

http://www.wildml.com/2016/10/learning-reinforcement-learning/

 

深度强化学习:开挂玩Pong 

http://karpathy.github.io/2016/05/31/rl/

 

16.对抗式生成网络模型(GANs)

什么是对抗式生成网络模型?

https://blogs.nvidia.com/blog/2017/05/17/generative-adversarial-network/

 

用对抗式生成网络创造8个像素的艺术

https://medium.com/@ageitgey/abusing-generative-adversarial-networks-to-make-8-bit-pixel-art-e45d9b96cee7

 

对抗式生成网络入门(TensorFlow)

http://blog.aylien.com/introduction-generative-adversarial-networks-code-tensorflow/

 

《对抗式生成网络》

https://www.oreilly.com/learning/generative-adversarial-networks-for-beginners

 

17.多任务学习

深度神经网络中的多任务学习概述

http://sebastianruder.com/multi-task/index.html


  NLP


【新年礼物】150个最好的机器学习,NLP和Python教程


1.NLP

《基于神经网络模型的自然语言处理》

http://u.cs.biu.ac.il/~yogo/nnlp.pdf

 

自然语言处理权威指南

https://monkeylearn.com/blog/the-definitive-guide-to-natural-language-processing/

 

自然语言处理入门

https://blog.algorithmia.com/introduction-natural-language-processing-nlp/

 

自然语言处理教程

http://www.vikparuchuri.com/blog/natural-language-processing-tutorial/

 

Natural Language Processing (almost) from Scratch 

初高中生课程:自然语言处理

https://arxiv.org/pdf/1103.0398.pdf  


2.深度学习和 NLP

基于深度学习的NLP应用

https://arxiv.org/pdf/1703.03091.pdf

 

基于深度学习的NLP

https://nlp.stanford.edu/courses/NAACL2013/NAACL2013-Socher-Manning-DeepLearning.pdf

 

理解卷积神经网络在NLP中的应用

http://www.wildml.com/2015/11/understanding-convolutional-neural-networks-for-nlp/

 

深度学习,NLP,表示学习

http://colah.github.io/posts/2014-07-NLP-RNNs-Representations/

 

嵌入表示,编码,注意力,预测 : 新一代深度学习因NLP的精妙而存在

https://explosion.ai/blog/deep-learning-formula-nlp

 

理解基于神经网络的自然语言处理(Torch实现)

https://devblogs.nvidia.com/parallelforall/understanding-natural-language-deep-neural-networks-using-torch/

 

深度学习在NLP中的应用(Pytorch实现) 

http://pytorch.org/tutorials/beginner/deep_learning_nlp_tutorial.html

 

 3.词向量(Word Vectors)

词袋法遇到感知器装袋法

https://www.kaggle.com/c/word2vec-nlp-tutorial

 

学习单词嵌入表示法

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

 

单词嵌入表示的神奇力量

https://blog.acolyer.org/2016/04/21/the-amazing-power-of-word-vectors/

 

解释word2vec 的参数学习

https://arxiv.org/pdf/1411.2738.pdf

 

word2vec教程 skip-gram 模型,负采样

http://mccormickml.com/2016/04/19/word2vec-tutorial-the-skip-gram-model/

 

4.Encoder-Decoder

注意力机制与记忆机制在深度学习与NLP中的应用

http://www.wildml.com/2016/01/attention-and-memory-in-deep-learning-and-nlp/

 

序列到序列模型

https://www.tensorflow.org/tutorials/seq2seq

 

利用神经网络学习序列到序列模型(NIPS 2014)

https://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf

 

基于深度学习和魔法序列的语言翻译

https://medium.com/@ageitgey/machine-learning-is-fun-part-5-language-translation-with-deep-learning-and-the-magic-of-sequences-2ace0acca0aa

 

如何使用编码-解码LSTM输出随机整数对应的序列

http://machinelearningmastery.com/how-to-use-an-encoder-decoder-lstm-to-echo-sequences-of-random-integers/

 

tf-seq2seq

https://google.github.io/seq2seq/

 

 Python


【新年礼物】150个最好的机器学习,NLP和Python教程


1.Python

使用Python精通机器学习的七步法

http://www.kdnuggets.com/2015/11/seven-steps-machine-learning-python.html

 

机器学习的一个简例

http://nbviewer.jupyter.org/github/rhiever/Data-Analysis-and-Machine-Learning-Projects/blob/master/example-data-science-notebook/Example


2.实例

小白如何用python实现感知器算法

http://machinelearningmastery.com/implement-perceptron-algorithm-scratch-python/

 

小学生用python实现一个神经网络

http://www.wildml.com/2015/09/implementing-a-neural-network-from-scratch/

 

只用11行python代码实现一个神经网络算法

http://iamtrask.github.io/2015/07/12/basic-python-network/

 

自己动手用ptython实现最近邻算法

http://www.kdnuggets.com/2016/01/implementing-your-own-knn-using-python.html

 

python实现长短期记忆网络的记忆机制

http://machinelearningmastery.com/memory-in-a-long-short-term-memory-network/

 

如何用长短期记忆递归神经网络输出随机整数

http://machinelearningmastery.com/learn-echo-random-integers-long-short-term-memory-recurrent-neural-networks/

 

如何用seq2seq递归神经网络学习加法运算

http://machinelearningmastery.com/learn-add-numbers-seq2seq-recurrent-neural-networks/

 

3.Scipy 和 numpy

Scipy课程笔记

http://www.scipy-lectures.org/

 

Python Numpy 教程

http://cs231n.github.io/python-numpy-tutorial/

 

Numpy 与 Scipy 入门

https://engineering.ucsb.edu/~shell/che210d/numpy.pdf

 

给科学家看的Python微课程

http://nbviewer.jupyter.org/gist/rpmuller/5920182#ii.-numpy-and-scipy

 

4.scikit-learn

PyCon会议上的Scik-learn 教程

http://nbviewer.jupyter.org/github/jakevdp/sklearn_pycon2015/blob/master/notebooks/Index.ipynb

 

Scikit-learn 中的分类算法

https://github.com/mmmayo13/scikit-learn-classifiers/blob/master/sklearn-classifiers-tutorial.ipynb

 

Scikit-learn教程

http://scikit-learn.org/stable/tutorial/index.html

 

简明版Scikit-learn教程

https://github.com/mmmayo13/scikit-learn-beginners-tutorials

 

5.Tensorflow

Tensorflow教程

https://www.tensorflow.org/tutorials/

 

Tensorflow入门--CPU vs GPU

https://medium.com/@erikhallstrm/hello-world-tensorflow-649b15aed18c

 

Tensorflow入门

https://blog.metaflow.fr/tensorflow-a-primer-4b3fa0978be3

 

Tensorflow实现RNNs 

http://www.wildml.com/2016/08/rnns-in-tensorflow-a-practical-guide-and-undocumented-features/

 

Tensorflow实现文本分类CNN模型

http://www.wildml.com/2015/12/implementing-a-cnn-for-text-classification-in-tensorflow/

 

如何用Tensorflow做文本摘要

http://pavel.surmenok.com/2016/10/15/how-to-run-text-summarization-with-tensorflow/

 

6.PyTorch

Pytorch教程

http://pytorch.org/tutorials/


Pytorch快手入门

http://blog.gaurav.im/2017/04/24/a-gentle-intro-to-pytorch/

 

利用Pytorch深度学习教程

https://iamtrask.github.io/2017/01/15/pytorch-tutorial/

 

Pytorch实战

https://github.com/jcjohnson/pytorch-examples

 

PyTorch 教程

https://github.com/MorvanZhou/PyTorch-Tutorial

 

深度学习研究人员看的PyTorch教程

https://github.com/yunjey/pytorch-tutorial

 

 数学



1.机器学习中的数学

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

 

机器学习数学基础

http://www.umiacs.umd.edu/~hal/courses/2013S_ML/math4ml.pdf

 

2.线性代数

线性代数简明指南

https://betterexplained.com/articles/linear-algebra-guide/

 

码农眼中矩阵乘法

https://betterexplained.com/articles/matrix-multiplication/

 

理解叉乘运算

https://betterexplained.com/articles/cross-product/

 

理解点乘运算

https://betterexplained.com/articles/vector-calculus-understanding-the-dot-product/

 

机器学习中的线性代数

http://www.cedar.buffalo.edu/~srihari/CSE574/Chap1/LinearAlgebra.pdf

 

深度学习的线代小抄

https://medium.com/towards-data-science/linear-algebra-cheat-sheet-for-deep-learning-cd67aba4526c

 

复习线性代数与课后阅读材料

http://cs229.stanford.edu/section/cs229-linalg.pdf

 

3.概率论

贝叶斯理论

https://betterexplained.com/articles/understanding-bayes-theorem-with-ratios/

 

理解贝叶斯概率理论

http://cs229.stanford.edu/section/cs229-prob.pdf

 

复习机器学习中的概率论

https://see.stanford.edu/materials/aimlcs229/cs229-prob.pdf

 

概率论

http://www.cedar.buffalo.edu/~srihari/CSE574/Chap1/Probability-Theory.pdf

 

机器学习中的概率论

http://www.cs.toronto.edu/~urtasun/courses/CSC411_Fall16/tutorial1.pdf


4.计算方法(Calculus)

如何理解导数:求导法则,指数和算法

https://betterexplained.com/articles/how-to-understand-derivatives-the-quotient-rule-exponents-and-logarithms/

 

如何理解导数,乘法,幂指数,链式法

https://betterexplained.com/articles/derivatives-product-power-chain/

 

向量计算,理解梯度

https://betterexplained.com/articles/vector-calculus-understanding-the-gradient/

 

微分计算

http://web.stanford.edu/class/cs224n/lecture_notes/cs224n-2017-review-differential-calculus.pdf

 

计算方法概论

http://mlcheatsheet.readthedocs.io/en/latest/calculus.html


(来源: AI研习社)


—完—


想知道AI加教育领域有哪些最新研究成果?

想要AI领域更多的干货?

想了解更多专家的“智能观”?

请在对话界面点击“找找看”,去获取你想要的内容吧。

有人问:你们为什么要做智能观?为什么关注AI+教育?

 

我想,这不是一个选择。

 

当AI开始颠覆各行各业时,我们首先想到了教育。未来是我们正在为之努力的地方,教育可以影响当下,改变未来。

 

我们用心观察和记录教育在这个时代的蜕变;努力把前沿的动态、最新的进展、先进的观点带到你面前,希望与你一起思考和探索。我们相信,长出AI翅膀的教育,会创造出无限可能。



以上是关于新年礼物150个最好的机器学习,NLP和Python教程的主要内容,如果未能解决你的问题,请参考以下文章

资源 | 机器学习NLPPython和Math最好的150余个教程(建议收藏)

新年礼物分享十个珍藏学习编程的网站,助大家2022如虎添翼

干货|涵盖数学pythonNLP机器学习的150个教程

D. Santa's Bot

聊天机器人(chatbot)终极指南:自然语言处理(NLP)和深度机器学习(Deep Machine Learning)

jvm新年快乐,这篇jvm就当做新年礼物送给你吧---jvm第一集