有许多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
评论
查看更多