原文更新在俺的GitHub上,如果觉得好点个star谢谢。
机器学习/人工智能/自然语言处理资料教程集合
前面基本是我看过的书籍和教程推荐,在最后面有我的学习路线,避免多走弯路,实现高效系统学习。
目录:
基础概念和认知:
机器学习 机器学习是近20多年兴起的一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。因为学习算法中涉及了大量的统计学理论,机器学习与统计推断学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。下面是ML比较完备的知识技能图
-
机器学习与数据挖掘的区别
- 机器学习关注从训练数据中学到已知属性进行预测是方法
- 数据挖掘侧重从数据中发现未知属性是个概念
- 深度学习与机器学习区别
- 人工智能只是定义
- 机器学习、统计分析、数据挖掘、神经网络、人工智能、模式识别之间的关系是什么?
入门
心路历程,别人的经验让我们少走弯路:
书籍
数学
- 《数学之美》作者:吴军 讲述数学在NLP语音等方面应用
- 《程序员的数学系列》这套共三本含高数,线代,统计。写的很好
- 《线性代数应该这样学》 从本质来讲,让你耳目一新,我就感觉线代白学了
- 《The Elements of Statistical Learning》后期精进可以可以读读,挺难的
- 《统计学习方法》作者:李航 讲解统计的一些方法。是机器学习的数学基础,另外需要线性代数,概率论,统计学等数学知识 后面阶段少不了推算公式的
ML&&NLP
《机器学习》西瓜书 作者:周志华。 本人读过入门级拿西瓜做案例很清晰,没有数学基础还是不要看,特别是程序员,因为周老师层次太高偏学术。
《DeepLearning》花书,最近中文版要出版了,称为圣书,这个可以慢慢啃,绝对要看的。
《机器学习》作者Mitchell。Mitchell是机器学习的鼻祖,第一个提出机器学习概念的人。这本书很薄,很简单。内容很陈旧,但是都是机器学习的经典问题。而且,这本书概念清晰正确(很可贵啊,又简单又正确的书,说明作者功力很强)。
《神经网络与机器学习》作者:Simon Haykin。 事实上,现在常见的很多机器学习算法都发端于神经网络,像SVM,深度学习,CNN等等。这本书详细的介绍了神经网络及其相关算法的所有细节。如果想深入了解的话,可以看一下。只想运用的话,也可以随便翻翻算法的介绍。
《模式识别与机器学习》马春鹏 有数学基础再搞,不然很难受
《集体编程智慧》代码丰富,结合理论搞
《机器学习算法原理与编程实战》有理论有代码
《机器学习实战》推荐
《数据挖掘导论》我学习过程中必不可少
NLP自然语言处理怎么最快入门
资料已经完全够了,没有必要再贪多了,有积累看论文才是王道
视频教程
一、基本功
数学基础机器学习必要的数学基础主要包括:
- 线性代数
英文无障碍的话推荐MIT的Gilbert Strang
李宏毅也教过线性代数哦
实现不行看看张宇的考研视频也行,再者还是看看程序员的数学 - 统计基础
- Introduction to Statistics: Descriptive Statistics
- Probabilistic Systems Analysis and Applied Probability | 概率 ( 可选)
- Introduction to Statistics: Inference
- 以上是国外课程,自己拿大学相关课本看看或者到网易公开课找,推荐《程序员的数学之线性代数》
- 编程基础
- Python,R这些从廖雪峰,菜鸟教程还有等等看看文档就行 ,numpy,sk,pandas这些库也要会
- Programming for Everybody (Python)
- DataCamp: Learn R with R tutorials and coding challenges(R)
- Introduction to Computer Science:Build a Search Engine & a Social Network
二、修行(推荐李宏毅然后后吴恩达深度学习课程,然后决定走CV OR NLP 再看CS231N 或者 CS224N)
- 台湾国立大学李宏毅中文教学讲课幽默易懂,很多不清楚的看了就懂了,它还有个PPT合集,堪称一天学完深度学习,浅显易懂可以搜搜
-
吴恩达深度学习新课可以搜单个课程这样可以旁听不要钱
【网易云课堂现在和吴恩达合作了,免费的中文字幕体验更好,作业还在courseras上写吧】 - 2014 Andrew Ng (Stanford)机器学习:英文原版视频 这就是针对自学而设计的,免费还有修课认证。“老师讲的是深入浅出,不用太担心数学方面的东西。而且作业也非常适合入门者,都是设计好的程序框架,有作业指南,根据作业指南填写该完成的部分就行。”(和林轩田课程二选一)
- 2016年 林軒田(国立台湾大学) 機器學習基石 (Machine Learning Foundations) -- 華文的教學講解
- Neural Networks for Machine Learning Hinton的大牛课程,可想而知
- 没有公式,没有代码的深度学习入门视频,每集五分钟
- CS231N Stanford winter 2016FeiFei 计算机视觉大牛李飞飞的课程
- CS224N NLP Winter 2017 搞NLP的可以看看,最新前言课程 slides
- Udacity 的 ML & DL 最近刚看的,DL两个人合作以对话形式,很幽默
- tornadomeet机器学习笔记
- 上面学好了,足够了
博客等
WeChat公众号:机器之心,数盟,量子位,新智元,
文章-论文
The Discipline of Machine LearningTom Mitchell 当年为在CMU建立机器学习系给校长写的东西。
A Few Useful Things to Know about Machine Learning Pedro Domingos教授的大道理,也许入门时很多概念还不明白,上完公开课后一定要再读一遍。
其它
矩阵求导
知乎找答案
我自己的学习计划
已经大致了解这个领域所用到的知识,根据网上的参考进行1.0阶段的学习,看了前面的知道我对PGM特别感兴趣啊,所以感谢夕小瑶(wx:xixiaoyaoQAQ)按照她的提供的知识结构给自己定个计划。 已经完成的都会带有我在学习过程中见到比较好的资料,或者我自己总的,这样减少大家在学习过程中找资料的成本
第一阶段(五月到六月):基本模型
辅助用视频Ng的courses《machine learning》,台湾国立大学林老师《机器学习基石》、《数据挖掘导论》第4、5章
- 感知机(Perceptron)(已完成)
- 线性回归模型(Linear regression model) (已完成)
- 逻辑回归模型(Logistic regression model) (已完成)
- 浅层神经网络(Neural Network) (已完成)
- 支持向量机(Support Vector Machine)(已完成)
- 交叉验证(Cross Validation)[[1]] [2] [3] [4](已完成)
- 聚类[1] (已完成)
- 内积与映射,线性相关/无关,特征值/特征向量、特征向量、特征分解、矩阵的迹、奇异值分解(SVD)、谱定理
第二阶段(七月~):最优化(已完成,主要是靠知乎和《统计学习方法》,还得继续深入理解)
复习《概率论与数理统计》、理解《Deep Learning》中的4.3节和4.4节,《Numerical Optimazation》、《最优化理论与方法》袁亚湘,孙文瑜、《统计学习方法》、《数据 挖掘导论》、《机器学习实战》、《智能优化方法》
- 一阶无约束优化算法
- 梯度下降法(步长的确定方法、线搜索法,信赖域法)
- 二阶无约束优化算法
- 牛顿法
- 共轭梯度法
- 拟牛顿法
- 约束优化算法
- 线性规划(概念与应用、单纯形法、内点法)
- 二次规划(概念与应用、对偶法、积极集法)
- 拉格朗日乘子法的简单认识
- 感知机模型
- K近邻模型
- 朴素贝叶斯模型
- 决策树模型
- 支持向量机模型
- 集成分类器
- Bagging
- Boosting
- Random Forest
- 遗传算法
- 模拟退火
- 禁忌搜索算法
- 蚁群算法
- 粒子群优化算法
- LDA/PCA
- SVD
第三阶段:模式识别与深度学习
- 贝叶斯决策(《模式分类》)
- 参数估计
- 非参数方法
- 线性判别函数
- 浅层神经网络
- delta方法
- BP算法及其优化
- RBF网络
- 深度神经网络(DL中文版书籍)
- Hopfield网络
- 玻尔兹曼机
- RBM
- DBN
- DBM
- CNN
- Autoencoder
- RNN
- LSTM
(CNN~LSTM)李宏毅教授的课不要太好了。一听就懂
- 聚类
- 高斯混合密度
- K-means
- 层次聚类
- 决策树与随机森林
- 特征提取与特征选择
第四阶段:
应该是各种框架和工程,比赛吧,哈哈,到这个阶段就有自己的方向,现在自己也不知道干啥,哈哈哈
贯穿始终:
编程是一定要的,推荐先用Python把常用算法实现一遍,然后把NG深度学习课程作业敲一遍,自己写神经网络,你就会明了,一定要code,code,code。后面用tf+keras等都可以。
知识点:(每一周深入学习一种网络)
《统计学习方法》、《Deep Learning》、《模式分类》
前馈神经网络
自编码器(Auto-Encoder)递归神经网络(Recursive NN) / 循环神经网络(RNN)/ 卷积神经网络(CNN) / 神经张量网络 (NTN)
长短时记忆网络(LSTM) / 卷积长短时神经网络(convLSTM) / 张量递归神经网络(MV-RNN)/递归神经张量网络(RNTN)
受限波尔兹曼机(RBM) / 玻尔兹曼机
概率图模型
有向图模型->贝叶斯网络
无向图模型->马尔科夫随机场->条件随机场
原文更新在俺的GitHub上,可能最新。可以进去看看。