有许多python机器学习资源在线免费供给,从哪开端?怎样进行?从零到python机器学习大神只需7个进程。
入门,在英语中最冲击人的两个单词,榜首部往往是最难的,当在这方面有太多挑选,一般让人崩。
从哪开端?
这篇文章旨在用7个不走带领python机器学习常识最少的新人成为常识广博从业者,运用免费材料和资源.这个大纲首要方针是帮你挑选可用的许多选项.能够确认有许多,可是哪个是最好的?它们之间是相得益彰?运用挑选资源的最好次序是什么?
进一步,我做出假定你不是下列的专家:
机器学习
Python
任何Python的机器学习,科学核算,或许数据剖析库
他有或许协助你对榜首或第二或二者有一个根本的知道,但不是必需的.在前面的进程花费一些额定的时刻有或许补偿。
榜首步 根本Python技能
假如咱们计划运用Python进行机器学习,对Python有一些根本知道是至关重要的.走运的是,由于其作为一种广泛遍及的通用编程言语,并运用于科学核算和机器学习,发现初学者的教程并不困难.Python经历和编程水平一般是挑选起点的要点。
首要,你需求装置Python.由于在有些时分咱们需求运用科学核算和机器学习库,我主张你装置Anaconda.这是一个具有工业强度用于Linux,OSX和Windows的Python完结,为机器学习装置需求的包,包含Numpy,scikit-learn和Matplotlib(这是作者的观念,我以为pandas,scipy这种包也是必不可少的).它相同包含Ipython notebook,一个交互式环境.我主张运用Python2.7(译者言:当全世界都是3.X的时分再说改Python3吧),它仍是占主导地位的装置版别没有其他原因。
假如你没有编程常识,我的主张是用下面免费的在线书开端,然后学习随后的材料。
Python The Hard Way by Zed A. Shaw
假如你有变成经历,可是不是Python,或许你刚学Python,我主张学习下面其间一个或悉数:
Google Developers Python Course (视觉学习者强烈推荐,五星好评)
An Introduction to Python for Scientific Computing (from UCSB Engineering) by M. Scott Shell (奇特的Python科学介绍,60页)
关于那些寻求Python30分钟速成班的能够去(某宝):
Learn X in Y Minutes (X = Python)
当然,假如你有Python编程经历,你能够越过这步.即便这样,我主张你持续阅览Python文档.
第二步 根底机器学习技能
KDnuggets’的创始人 Zachary Lipton指出人们对数据科学家的知道十分不同.实践上是机器学习范畴的反映,由于数据科学家的作业包含运用机器学习算法多样化程度.是否有必要深化了解算法,然后更有用的创立SVM机器模型并从中获取信息?当然不是,就像日子中简直一切东西,理论了解的深度的要求相对与实践运用(这是作者的一家之言哈~,译者是不支撑的,不了解你怎样调参,优化模型呢?哈~).取得机器学习算法的深化了解现已超出了本书规模,一般需求许多的时刻出资在学术中,或许经过高强度的自学。
好消息是你不需求具有PhD水平的机器学习理论方面的了解,才干用于实践.并不是一切码农都为了有用的编码需求理论的核算机科学教育.这两点是相同的(所以我翻译的是码农.对,我就是在吐槽~自己. 🙁 )。
Andrew Ng的Course课程常常取得五星好评.可是我的主张是,阅览在线课程曾经学生编制的课程笔记.越过关于Octave的笔记(相似Matlab言语,和咱们寻求的Python无关.译者注,从用词上我就能感到作者对Matlab弄弄的讨厌).可是要留意这些不是官方的笔记,可是好像能捕获Andrew Ng课程材料的相关内容.当然,假如你有时刻和爱好,能够参与Andrew Ng Coursera的机器学习课程。
Unofficial Andrew Ng course notes
假如你喜爱各种视频讲座,能够看Tom Mitchell的讲演视频.下面是是他最近的讲演视频,我(不是我)感觉他十分和蔼可亲,我是他的脑残粉(没搞错的话,网上盛行的台湾国立大学的机器学习视频是仿照Tom Mitchell的,Logo都差不多就左下角右上角加了个东西.是的,我又在吐槽了)。
Tom Mitchell Machine Learning Lectures
在这儿,你不需求一切笔记和视频.一个有用的战略包含实战演练,恰当时分参阅上面笔记和视频.例如,当你遇到回归模型是实际,阅览Ng笔记的回归部分或看Mtichell的回归视频.
第三步 科学Python库概率
好吧.有了一点Python编程经历和机器学习了解后.除了Python还有许多开源的库用于处理机器学习实践.一般,这些是履行根本机器学习使命首要运用的Python库。
numpy – N维数组是十分有用的
pandas – Python数据剖析库,包含结构例如dataframes
matplotlib – 2D 绘图库生成出书质量图片
scikit-learn – 用于数据剖析和数据发掘使命的机器学习算法.
学习这些的优异材料如下:
Scipy Lecture Notes by Gaël Varoquaux, Emmanuelle Gouillart, and Olav Vahtras
这个pandas的教程十分棒:
10 Minutes to Pandas
鄙人面的教程中你或许看到一些其他的库,比如说 Seaborn,一个根据Matplotlib的数据可视化库.上述包是广泛Python机器学习使命的中心,可是,让你鄙人面引用时,了解这些习惯更多相关的包而不会懵.
第四步 开端Python机器学习
Python. √
Machine learning fundamentals. √
Numpy. √
Pandas. √
Matplotlib. √
吉时已到,咱们开端运用python规范机器学习库–scikit-learn完结机器学习算法吧.
下面大多数教程和联络都在IPython(Jupyter)Notebook中完结.它是Python履行的一个交互式环境.这些IPython NOtebook能够挑选在线预览或下载,而且在你电脑本地交互.
iPython Notebook Overview from Stanford
别的请留意,下面教程来源于许多在线资源.一切Notebooks 都归功于作业,你发现没有正确作业,请让我知道,这种状况会赶快纠正.我十分想向Jake VanderPlas, Randal Olson, Donne Martin, Kevin Markham, and Colin Raffel等人问候.由于他们奇特免费可用的资源(50字好评已给,请返现).
榜首个教程从scikit-learn开端,在开端下面进程之前,我主张先做这些.
scikit-learn库的一般介绍,Python中最常用的机器学习库,涵盖了KNN算法:
An Introduction to scikit-learn by Jake VanderPlas
更深化的介绍,包含闻名数据集开端到项目完结:
Example Machine Learning Notebook by Randal Olson
要点放在scikit-learn中不同模型的评价战略,涵盖了练习集/测验集拆分(后边这句话的点没get到呢):
Model Evaluation by Kevin Markham
第五步 python机器学习主题
有了 scikit-learn根底后,咱们能够对常见,有用的算法做进一步深化了解.咱们从K-means聚类开端,一个广为人知的机器学习算法.处理无监督学习问题一个简略有用的办法:
k-means Clustering by Jake VanderPlas
接下来,咱们看看分类问题.了解历史上最盛行分类算法之一:
Decision Trees via The Grimm Scientist
让咱们看看接连数值猜测:
Linear Regression by Jake VanderPlas
咱们能够从过Logistic回归处理分类问题:
Logistic Regression by Kevin Markham
第六步 深化python机器学习主题
咱们现已开端scikit-learn,现在让咱们将留意转向高档主题.首要SVM(支撑向量机).一个将杂乱数据映射到高维空间的not-necessarily-linear分类
Support Vector Machines by Jake VanderPlas
接下来,随机森林,一个组合分类,经过调查Kaggle Titanic比赛逐渐引导:
Kaggle Titanic Competition (with Random Forests) by Donne Martin
降维是削减正在考虑问题中变量数目的办法.PCA(Principal Component Analysis,主成分剖析)是一种非监督的降维办法:
Dimensionality Reduction by Jake VanderPlas
在进入到最终一步之前,咱们能够花时刻考虑下,咱们现已在相对较短的时刻内走了很长一段路.
运用Python和它的机器学习库,咱们现已介绍一些最常见和总所周知的机器学习算法(K-means,支撑向量机,KNN),调查了强壮的组合技能(随机森林),研讨了支撑使命的额定机器学习算法(降维,模型验证技能).跟着这些根底的机器学习技巧的学习,咱们现已具有了一些运用的技能.
第七步 python深度学习
深度学习无处不在.深度学习构建与神经网络研讨能够追溯到十几年前,可是追溯到曩昔几年的最新进展明显添加.假如你不熟悉深度学习,KDnuggets有许多文教具体介绍了许多最新立异,成就和令人赞誉的技能.
最终一步并不对深度学习软件分类,介绍2个引领今世Python深度学习库的几个简略的网络完结.关于有爱好发掘更深的深度学习者,我主张你先从一下免费书开端:
* Neural Networks and Deep Learning by Michael Nielsen
Theano
Theano是榜首个Python深度学习库,按作者的话来说:
Theano是一个python的库,能够让你高效地界说,优化,评价包含多维数据的数学表达式,下面Theano的机器学习入门教程是十分长的,但适当的棒,十分生动:
* Theano Deep Learning Tutorial by Colin Raffel
Caffe
另一个测验履行的库,caffe.相同的:
Caffe是一个带有表达式,速度和模块化的深度学习库.由 Berkeley Vision and Learning Center (BVLC) 和社区贡献者开发.
咱们现已介绍了许多风趣的比如,这儿再给出一个, 用Caffe完结Google’s #DeepDream.了解了这么多,自己着手放飞愿望吧(别的,关于深度学习的开源软件十分多,更多的能够看的翻译的GitHub深度学习库,你了解多少?)。
Dreaming Deep with Caffe via Google’s GitHub
我没不能确保这个进程会很快或很简单,但假如你把时刻依照上面的7个进程做,没有任何理由,你不能到达合理水平,了解一些机器学习算法并运用Python盛行的库完结它,包含一些现在的深度学习研讨前沿。