机器学习开发与应用
第一章 前言… 2
第二章 平台的选择… 2
第三章 API的学习… 2
3.1 Scikit_learn. 2
3.2 Spark MLLib. 3
第四章 进一步提升… 3
第五章 原理层面的提升… 4
第六章 补充的学习… 4
6.1 遇到一个知识点,不断的google,查看别人的文章… 4
6.2 快速阅读大量的相关书籍,我阅读了大概20几本,也会一并上传… 4
6.3 阅读文献,我下载了少量的文献也会一并上传… 4
第七章 机器学习的未来… 4
第八章 总结… 5
8.1 学会快速阅读… 5
8.2 学会快速的GOOGLE. 5
8.3 不努力是不行的… 5
8.4 多写代码… 5
第一章 前言
本文主要讲的是学习的方法、路线和一些实践经验,不会涉及细节。
第二章 平台的选择
下面的文章讲的非常好:
http://spark.apache.org/docs/latest/ml-guide.html
总结下:
生产环境用spark MLLib
优点:分布式,能处理大数据;
缺点:算法种类不多
语言:python、scala、java
演示环境或者科研环境用scikit-learn
优点:算法种类多样,演示方便
缺点:不是分布式
语言:python
第三章 API的学习
3.1 Scikit_learn
官网:http://scikit-learn.org/stable/
学习方法:范淼和李超的《python机器学习机实践—–从零开始通往Kaggle竞赛之路》
学习心得:该书适合机器学习的入门者,非常实用,但存在部分API过时,可通过官网修正;
需要下载该书附带的源码,自己动手编写代码;
该书例子内的数据都比较干净,需要自己去UCI等网站下载数据进行尝试;
UCI网址:http://archive.ics.uci.edu/ml/
3.2 Spark MLLib
官网:http://spark.apache.org/docs/latest/ml-guide.html
官网文档的中文版本:http://blog.csdn.net/liulingyuan6/article/details/53582300
学习方法:
l 首先简单浏览官网或者对应的中文文档,其中pipline需要全看,特征提取和特征转换随机看几个,分类、回归、聚类、协同过滤都分别看几个例子,模型选择和调试全看。
l 阅读spark自带的代码,并做简单修改进行代码编写,我写的一些代码路径:
/usr/local/spark/examples/src/main/python/ml
l https://www.ibm.com/search/csass/search/?q=Spark+%E5%AE%9E%E6%88%98&sn=dw&lang=zh&cc=CN&en=utf&hpp=20&dws=cndw&lo=zh阅读里面的文章,并改成python版本,期间肯定会遇到各种问题,借此机会熟悉语法
第四章 进一步提升
http://www.cnblogs.com/pinard/
阅读上面的文章,里面讲解了各种机器学习算法的原理、优缺点、适用场景和调优经验
学习方法:算法原理只能说是简单的介绍,可以简单看看,看不懂可以直接跳过以后再看;
其他内容建议全部阅读
第五章 原理层面的提升
通过上面的学习,已经具备解决基本问题的能力,但对原理如果能更好的了解,分析和解决问题的思路将更加开阔。
学习方法:吴恩达作为业界公认的大牛,他的公开课非常的给力
http://open.163.com/special/opencourse/machinelearning.html
同时到CSDN上找一些别人听课的学习笔记
罗马不是一天建成的,学这个一定有耐心,切记浮躁
第六章 补充的学习
6.1 遇到一个知识点,不断的google,查看别人的文章
6.2 快速阅读大量的相关书籍,我阅读了大概20几本,也会一并上传
6.3 阅读文献,我下载了少量的文献也会一并上传
第七章 机器学习的未来
深度学习 迁移学习
需要更深一步的理论基础,可以玩玩tensorflow
第八章 总结
8.1 学会快速阅读
8.2 学会快速的GOOGLE
8.3 不努力是不行的
8.4 多写代码
上面是小小的总结,主要是学习路线和方法,不断实践才是获取知识的捷径