如何学习机器学习的一点心得

如题所述

学习之前还是要了解下目前工业界所需要的机器学习/人工智能人才所需要必备的技能是哪些?你才好针对性地去学习。正好我前两天刚听了菜鸟窝(一个程序猿的黄埔军校)的一位阿里机器学习算法工程师的课,帮助我理清了思路,在此分享下。

①机器学习的基础是数学,入门AI必须掌握一些必要的数学基础,但是并不是全部的数学知识都要学,只学工作上实际有用到的,比如是微积分、概率论、线性代数、凸优化等这些。

②数据分析里需要应用到的内容也需要掌握,但不是网上所说的从0开始帮你做数据分析的那种,而是数据挖掘或者说是数据科学领域相关的东西,比如要知道计算机里面怎么挖掘数据、相关的数据挖掘工具等等

补足了以上数学和数据挖掘基本知识,才可以正式进行机器学习算法原理的学习。

③算法方面需要掌握一些基本的框架:python、spark、mllib、scikit-learning、pytorch、TensorFlow,数据方面需要懂得HQL、numpy、pandas,如果你本身是后台开发、app开发、数据分析、项目管理,则是一个学习算法的一个加分项。

④最后需要对人工智能有全局的认知,包括机器学习、深度学习两大模块,相关的算法原理、推导和应用的掌握,以及最重要算法思想。

菜鸟窝老师还给出了这样一个学习路线图,你也可以看看。

网络教程还是挺多的,就看怎么学习了,不过遇到比较好的老师带,会少走很多弯路。如果经济上压力不大,建议可以去报一下菜鸟窝的机器学习班,毕竟人家老师都是BAT实战的,知道企业中真正要用到的东西。

不知道有没帮到你?

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-01
如何更好地掌握机器学习

Colorado是伯克利大学的在读博士,同时也是Metacademy的创始人。Metacademy是一个优秀的开源平台,许多专业人员共同在这个平台上编写wiki文章。目前,这些文章主要围绕着机器学习和人工智能这两个主题。

在Colorado的建议中,更好地学习机器学习的方法就是不断的通过书本学习。他认为读书的目的就是让心中有书。

一个博士在读生给出这样的建议并不令人惊讶,以前本站可能还推荐过类似的建议。这个建议还可以,但我不认为适用每个人。如果你是个开发者,想实现机器学习的算法。下面列出的书籍是一个很好的参考,可以从中逐步学习。

机器学习路线图

他的关于机器学习的路线图分为5个级别,每个级别都对应一本书必须要掌握的书。这5个级别如下:

Level 0(新手):阅读《Data Smart: Using Data Science to Transform Information into Insight》。需要了解电子表格、和一些算法的高级数据流。
Level 1(学徒):阅读《Machine Learning with R》。学习在不同的情况下用R语言应用不同的机器学习算法。需要一点点基本的编程、线性代数、微积分和概率论知识。
Level 2(熟练工):阅读《Pattern Recognition and Machine Learning》。从数学角度理解机器学习算法的工作原理。理解并调试机器学习方法的输出结果,同时对机器学习的概念有更深的了解。需要有算法、较好的线性代数、一些向量积分、一些算法实现经验。
Level 3(大师):阅读《Probabilistic Graphical Models: Principles and Techniques》。深入了解一些高级主题,如凸优化、组合优化、概率论、微分几何,及其他数学知识。深入了解概率图模型,了解何时应该使用以及如何解释其输出结果。
Leval 4(宗师):随便去学吧,记得反馈社区。本回答被提问者和网友采纳
第2个回答  2017-12-01
先看看相关的图书:要有好几本作为参考,最好是角度差异大、深浅程度不同,比如系统的导论式的、深入的有推导的、浅出的手把手的。它要充当不同学习过程中的工具书。
网络教程:比如Andrew Ng的、各种专题的博客,有针对地找相应的教程,相对着看,网络资源比如51cto学院的课程跟书的表达方式毕竟是不一样的,也是很有益的信息源。
paper:比如学CNN的时候,就搜一堆论文来,集中一段时间看一轮,一定要有针对性,带着很明确的问号去看。
开源资源:很多很多东西,其实都有人做出来开源了,直接拿来用,一边用一边理解,甚至可以学习源码。
关注这个领域:关注相关的会议期刊,关注大牛们(Hinton、Bengio、LeCun等)的动向,微博加一堆领域大牛每天看一眼他们分享什么上来。
基础知识:线代、统计、概率、数学分析;信息论方面基本概念要理解,比如要知道相对熵是什么意思和怎么算;凸优化和最优估计相关内容,在各种各样问题中都会遇到,学好了可以帮大忙。
机器学习主要就是找到目标函数并且做参数估计,虽然有很多现成工具,但是不熟悉优化问题的话,会很抓瞎。
熟悉几个模型:神经网络(SAE、RBM、CNN等)、SVM、最大熵、CRF、随机森林、GMM等等。了解不同应用场景下各种模型有什么优劣,挑一些自己以后可能常用到的多练习。
相似回答