1.入门教程
1.1李航老师的《统计学习方法》 数学原理讲的多
1.2周志华老师的《机器学习》
1.3斯坦福大学公开课 http://open.163.com/movie/2008/1/M/C/M6SGF6VB4_M6SGHFBMC.html ng的视频
1.4 矩阵理论 《矩阵分析与应用》 张贤达 pdf 第二版 熟悉矩阵分解,特征值、特征向量等
1.5 最优化或者凸优化理论 看线性规划或者凸优化相关资料
1.6信息论和概率论 看deep learning(中文版)的前几章
1.7深度学习 看deep learning(中文版) 和《神经网络与深度学习》
1.8 《机器学习实战》 python实现
2.学习软件和库
2.1 python ,numpy,scipy,matplotlib (安装方式:下载python3.#,安装。如果没有安装pip,则手动下载安装pip;执行pip install numpy,pip install scipy;pip install matplotlib)
2.2 sklearn,xgboost (执行pip install sklearn,pip install xgboost) sklearn包含了大部分机器学习相关的技术 sklearn 中文网站:http://blog.csdn.net/chinachenyyx/article/details/75299043
2.3 tensorflow,keras (执行pip install tensorflow;pip install keras) tensorflow包含了大部分深度学习相关的技术,keras是高度集成的深度学习框架
2.4 jieba(安装方式:pip install jieba) 自然语言处理的工具,主要用于分词
2.5 gensim (安装方式:pip install gensim) 自然语言处理的工具,包含了很多自然语言处理的技术
2.7模型结果图示化工具graphviz 参考资料:http://blog.csdn.net/love_data_scientist/article/details/78635032
3.学习流程建议:
3.1可以先看李航老师的《统计学习方法》 和 《机器学习实战(python实战)》,不用贪多,比如《机器学习实战(python实战)》看一章,在《机器学习实战(python实战)》中找到相应的章节练习。走几个算法有感觉慢慢就好了
3.2等熟悉了机器学习处理的问题的一般流程,可以学习sklearn库相关的资料,因为库中帮我们实现了很多算法
3.3前两步完成了可以学习tensorflow(或者直接学习keras)
3.4学习完上面的,
可以学习推荐系统相关的东西,参考资料http://blog.csdn.net/love_data_scientist/article/details/77807880
可以学习自然语言相关的东西,入门为主不易入坑过深,参考资料http://blog.csdn.net/love_data_scientist/article/details/78110326;http://blog.csdn.net/love_data_scientist/article/details/78459999
关键是要理论和实践相结合,否则收获不大,而且容易忘
算法依托数据,数据决定了模型的上限,而算法只是逼近这个上限而已。
所以学习完机器学习相关的知识,还要补充数据处理相关的技术,比如hadoop,hive,mysql,尤其map-reduce的实现,可以使用java,python,shell等实现map-reduce,看个人喜好。参考资料:http://blog.csdn.net/love_data_scientist/article/details/78560668
如果还想深入学习,还可以学习一下数据检索以及结果展示相关的知识,比如ES(elastic search),ELK(Elasticsearch、Logstash和Kibana)等