机器学*入门资源--汇总
机器学*入门资源--汇总
基本概念
机器学* 机器学*是*20多年兴起的一门多领域交叉学科,涉及概率论、统计学、逼*论、凸分析、算法复杂度理论等多门学科。机器学*理论主要是设计和分析一些让计算机可以自动“学*”的算法。机器学*算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。因为学*算法中涉及了大量的统计学理论,机器学*与统计推断学联系尤为密切,也被称为统计学*理论。算法设计方面,机器学*理论关注可以实现的,行之有效的学*算法。
下面从微观到宏观试着梳理一下机器学*的范畴:一个具体的算法,领域进一步细分,实战应用场景,与其他领域的关系。
图1: 机器学*的例子:NLTK监督学*的工作流程图 (source: http://www.nltk.org/book/ch06.html)
图2: 机器学*概要图 by Yaser Abu-Mostafa (Caltech) (source: http://work.caltech.edu/library/181.html)
图3: 机器学*实战:在python scikit learn 中选择机器学*算法 by Nishant Chandra (source: http://n-chandra.blogspot.com/2013/01/picking-machine-learning-algorithm.html)
图4: 机器学*和其他学科的关系: 数据科学的地铁图 by Swami Chandrasekaran (source: http://nirvacana.com/thoughts/becoming-a-data-scientist/)
入门攻略
大致分三类: 起步体悟,实战笔记,行家导读
-
机器学*入门者学*指南 @果壳网 (2013) 作者 白马 -- [起步体悟] 研究生型入门者的亲身经历
-
有没有做机器学*的哥们?能否介绍一下是如何起步的 @ourcoders -- [起步体悟] 研究生型入门者的亲身经历,尤其要看reyoung的建议
-
tornadomeet 机器学* 笔记 (2013) -- [实战笔记] 学霸的学*笔记,看看小伙伴是怎样一步一步地掌握“机器学*”
-
Machine Learning Roadmap: Your Self-Study Guide to Machine Learning (2014) Jason Brownlee -- [行家导读] 虽然是英文版,但非常容易读懂。对Beginner,Novice,Intermediate,Advanced读者都有覆盖。
- A Tour of Machine Learning Algorithms (2013) 这篇关于机器学*算法分类的文章也非常好
- Best Machine Learning Resources for Getting Started(2013) 这片有中文翻译 机器学*的最佳入门学*资源 @伯乐在线 译者 programmer_lin
-
门主的几个建议
- 既要有数学基础,也要编程实践
- 别怕英文版,你不懂的大多是专业名词,将来不论写文章还是读文档都是英文为主
- [我是小广告][我是小广告]订阅机器学*日报,跟踪业内热点资料。
更多攻略
- 机器学*该怎么入门 @知乎 (2014)
- What's the easiest way to learn machine learning @quora (2013)
- What is the best way to study machine learning @quora (2012)
- Is there any roadmap for learning Machine Learning (ML) and its related courses at CMU Is there any roadmap for learning Machine Learning (ML) and its related courses at CMU (2014)
课程资源
Tom Mitchell 和 Andrew Ng 的课都很适合入门
入门课程
2011 Tom Mitchell(CMU)机器学*
英文原版视频与课件PDF 他的《机器学*》在很多课程上被选做教材,有中文版。
- Decision Trees
- Probability and Estimation
- Naive Bayes
- Logistic Regression
- Linear Regression
- Practical Issues: Feature selection,Overfitting ...
- Graphical models: Bayes networks, EM,Mixture of Gaussians clustering ...
- Computational Learning Theory: PAC Learning, Mistake bounds ...
- Semi-Supervised Learning
- Hidden Markov Models
- Neural Networks
- Learning Representations: PCA, Deep belief networks, ICA, CCA ...
- Kernel Methods and SVM
- Active Learning
- Reinforcement Learning 以上为课程标题节选
2014 Andrew Ng (Stanford)机器学*
英文原版视频 这就是针对自学而设计的,免费还有修课认证。“老师讲的是深入浅出,不用太担心数学方面的东西。而且作业也非常适合入门者,都是设计好的程序框架,有作业指南,根据作业指南填写该完成的部分就行。”(参见白马同学的入门攻略)"推荐报名,跟着上课,做课后*题和期末考试。(因为只看不干,啥都学不会)。" (参见reyoung的建议)
- Introduction (Week 1)
- Linear Regression with One Variable (Week 1)
- Linear Algebra Review (Week 1, Optional)
- Linear Regression with Multiple Variables (Week 2)
- Octave Tutorial (Week 2)
- Logistic Regression (Week 3)
- Regularization (Week 3)
- Neural Networks: Representation (Week 4)
- Neural Networks: Learning (Week 5)
- Advice for Applying Machine Learning (Week 6)
- Machine Learning System Design (Week 6)
- Support Vector Machines (Week 7)
- Clustering (Week 8)
- Dimensionality Reduction (Week 8)
- Anomaly Detection (Week 9)
- Recommender Systems (Week 9)
- Large Scale Machine Learning (Week 10)
- Application Example: Photo OCR
- Conclusion
进阶课程
2013年Yaser Abu-Mostafa (Caltech) Learning from Data -- 内容更适合进阶 课程视频,课件PDF@Caltech
- The Learning Problem
- Is Learning Feasible?
- The Linear Model I
- Error and Noise
- Training versus Testing
- Theory of Generalization
- The VC Dimension
- Bias-Variance Tradeoff
- The Linear Model II
- Neural Networks
- Overfitting
- Regularization
- Validation
- Support Vector Machines
- Kernel Methods
- Radial Basis Functions
- Three Learning Principles
- Epilogue
2014年 林軒田(国立台湾大学) 機器學習基石 (Machine Learning Foundations) -- 内容更适合进阶,華文的教學講解 课程主页
When Can Machines Learn? [何時可以使用機器學習] The Learning Problem [機器學習問題] -- Learning to Answer Yes/No [二元分類] -- Types of Learning [各式機器學習問題] -- Feasibility of Learning [機器學習的可行性]
Why Can Machines Learn? [為什麼機器可以學習] -- Training versus Testing [訓練與測試] -- Theory of Generalization [舉一反三的一般化理論] -- The VC Dimension [VC 維度] -- Noise and Error [雜訊一錯誤]
How Can Machines Learn? [機器可以怎麼樣學習] -- Linear Regression [線性迴歸] -- Linear `Soft' Classification [軟性的線性分類] -- Linear Classification beyond Yes/No [二元分類以外的分類問題] -- Nonlinear Transformation [非線性轉換]
How Can Machines Learn Better? [機器可以怎麼樣學得更好] -- Hazard of Overfitting [過度訓練的危險] -- Preventing Overfitting I: Regularization [避免過度訓練一:控制調適] -- Preventing Overfitting II: Validation [避免過度訓練二:自我檢測] -- Three Learning Principles [三個機器學習的重要原則]
更多选择
2008年Andrew Ng CS229 机器学* -- 这组视频有些年头了,主讲人这两年也高大上了.当然基本方法没有太大变化,所以课件PDF可下载是优点。 中文字幕视频@网易公开课 | 英文版视频@youtube | 课件PDF@Stanford
第1集.机器学*的动机与应用 第2集.监督学*应用.梯度下降 第3集.欠拟合与过拟合的概念 第4集.牛顿方法 第5集.生成学*算法 第6集.朴素贝叶斯算法 第7集.最优间隔分类器问题 第8集.顺序最小优化算法 第9集.经验风险最小化 第10集.特征选择 第11集.贝叶斯统计正则化 第12集.K-means算法 第13集.高斯混合模型 第14集.主成分分析法 第15集.奇异值分解 第16集.马尔可夫决策过程 第17集.离散与维数灾难 第18集.线性二次型调节控制 第19集.微分动态规划 第20集.策略搜索
2012年余凯(百度)张潼(Rutgers) 机器学*公开课 -- 内容更适合进阶 课程主页@百度文库 | 课件PDF@龙星计划
第1节Introduction to ML and review of linear algebra, probability, statistics (kai) 第2节linear model (tong) 第3节overfitting and regularization(tong) 第4节linear classification (kai) 第5节basis expansion and kernelmethods (kai) 第6节model selection and evaluation(kai) 第7节model combination (tong) 第8节boosting and bagging (tong) 第9节overview of learning theory(tong) 第10节optimization in machinelearning (tong) 第11节online learning (tong) 第12节sparsity models (tong) 第13节introduction to graphicalmodels (kai) 第14节structured learning (kai) 第15节feature learning and deeplearning (kai) 第16节transfer learning and semi supervised learning (kai) 第17节matrix factorization and recommendations (kai) 第18节learning on images (kai) 第19节learning on the web (tong)
论坛网站
中文
http://www.52ml.net/ 我爱机器学*
http://www.mitbbs.com/bbsdoc/DataSciences.html MITBBS- 电脑网络 - 数据科学版
http://www.guokr.com/group/262/ 果壳 > 机器学*小组
http://cos.name/cn/forum/22 统计之都 » 统计学世界 » 数据挖掘和机器学*
http://bbs.byr.cn/#!board/ML_DM 北邮人论坛 >> 学术科技 >> 机器学*与数据挖掘
英文
https://github.com/josephmisiti/awesome-machine-learning 机器学*资源大全
http://work.caltech.edu/library/ Caltech 机器学*视频教程库,每个课题一个视频
http://www.kdnuggets.com/ 数据挖掘名站
http://www.datasciencecentral.com/ 数据科学中心网站
东拉西扯
一些好东西,入门前未必看得懂,要等学有小成时再看才能体会。
- 机器学*关注从训练数据中学到已知属性进行预测
- 数据挖掘侧重从数据中发现未知属性
Dan Levin, What is the difference between statistics, machine learning, AI and data mining?
- If there are up to 3 variables, it is statistics.
- If the problem is NP-complete, it is machine learning.
- If the problem is PSPACE-complete, it is AI.
- If you don't know what is PSPACE-complete, it is data mining.
几篇高屋建瓴的机器学*领域概论, 参见原文
- The Discipline of Machine LearningTom Mitchell 当年为在CMU建立机器学*系给校长写的东西。
- A Few Useful Things to Know about Machine Learning Pedro Domingos教授的大道理,也许入门时很多概念还不明白,上完公开课后一定要再读一遍。
几本好书
- 李航博士的《统计学*方法》一书前段也推荐过,给个豆瓣的链接
2014-10-14版, 好东西传送门编辑整理, 原文链接 http://ml.memect.com/article/machine-learning-guide.html
感谢贡献者: tang_Kaka_back@新浪微博
欢迎补充指正,转载请保留原作者和原文链接。 本文是 机器学*日报的一个专题合集,欢迎订阅:请给hao@memect.com发邮件,标题"订阅机器学*日报"。