首页 > 其他 > 详细

简单粗暴地入门机器学习

时间:2017-05-15 23:33:38      阅读:315      评论:0      收藏:0      [点我收藏+]

有很多小伙伴问过我零基础要怎么入门机器学习或者人工智能,今天来提炼一下,方便志同道合的朋友们参考。

记得我刚入此山洞准备修炼的时候,就 Google 了好多这类的问题,那时候觉得大家的建议好多呀,这条路看起来真长,那么多东西要学,那么多书要看,那么多有用的课程要学。

现在我可以就自己走过的坑坑包包来推荐一条简单粗暴的路径。


[step 1: 方向]

在行动之前,先想好这几个最基本的问题,如果自己想不全都可以去搜一下,知乎上很多大拿的回答:

--1.为什么要学习机器学习或者人工智能呢?

我的话,很实在地说,就是不想被淘汰呀!最开始就是这么一个感觉。
官方一点的话,就是可以提高效率呀。
广泛的需求我并没有去想,只是想解决一下自己的需求。
譬如,不想做家务,就弄个机器人给我做;不想做琐事,就弄个智能助理给我做。

所以大家在开始入洞之前,也要先想几分钟这个问题:

eg:是想做数据科学还是人工智能开发呢?
if Data Science:就多做 kaggle 上偏分析的项目
if AI:再想想是自然语言处理还是图像识别呢?

我觉得 NLP 和 CV 是最基础的技术,AI 主要还是看应用领域,现在比较火的:自动驾驶,聊天机器人,ARVR,智能家居,智能教育,等等,最基础的就是看和理解么,当然对于每个具体的方向,肯定是涉及到更多技术和具体的细节知识需要去学的,不过入门的话,这俩是基础。可以选其一,有兴趣也可以选俩。AI 主要还是跟实际应用场景关联起来意义才大,医疗,生物,气象,教育,交通目前比较火,对某个领域感兴趣可以专攻更深。

--2.机器学习,人工智能,数据科学的关系?

为了确立明确的入口,最好是知道这三者的关系,方便大家做计划时更专注一些
大家可以去多看几篇这样的文章,可以很快地了解一下大纲。

我比较喜欢下面这个图,因为它还列出了其他几个大的技能。
来自这篇文章:http://www.cnblogs.com/DonJiang/p/5744535.html

技术分享

从这个图看,机器学习的基础还是要看滴,虽然现在深度学习很流行,类似 Tensorflow 等平台也可以直接把数据仍进去,调用多种模型,变换网络的层次等参数,它就输出结果,不过神经网络模型是只是机器学习的一种,不是全部。当然开始的话,完全可以跨过ML课程,去学用TF训练一个聊天机器人,分析情绪,翻译器等等。

--3.多长时间后想达到什么样的目标?

eg:1 年后找到 ML 工作
then:简历上需要相关项目 or 学历背景
对于很多已经工作的伙伴,学历如果不容易实现的话,可做好项目这一栏。
then:在拉勾网等招聘网站上面找到感兴趣的工作,去看相关工作描述,提取出需求的技能,列入学习清单,学习时间紧时可以挑相关的先重点学。


[step 2: 路线-步骤]

第一步确立方向后,假设你想做人工智能,并且是自然语言处理,以此为例:

入门路线的话,一点我只推荐一个吧,简单不会被吓到,也是我经验觉得比较高效的:

--1.语言:

推荐 python
入门书:learn python the hard way
pkg 教程网站:python scikit-learn
当然还需要 numpy,matplotlib,pandas 等常用包,scikit 是介绍算法多一些,可直接看

--2.课程:

Coursera 上吴恩达的是我觉得比较基础且系统的,但它用matlab,大家可以直接换成 python 去敲代码。Udacity 上的机器学习课程是用 Python 做的。

--3.书:

周志华的西瓜书《机器学习》

--4.自然语言处理基础:

课程:cs224d
如果是图像处理,课程:cs231n

--5.小项目:

数据科学:Kaggle 上很多好玩的比赛,开脑洞+实战
人工智能:建议找个感兴趣的小方向,实际做出来一个,例如做一个自动会创作音乐的小程序

--6.螺旋式升级:

我觉得最有意思的就是在第5步,这期间就会发现还有好多关联东西需要学,所以就边学边战吧


[Tips]

2017 可以给自己定个小目标,一个月拿下一步,升一级,酱紫至多 5 个月后你就可以有自己的AI了。

上面几步,大家完全可以根据自己的喜好,在搜索引擎提供的结果中,选择适合自己的资源和节奏。

我觉得最有效的就是从实战中学习,但是理论也是必不可少的。

每一步先只选一个,适合自己的资源,就开始好好学。

上面只是一小步,离精深还远。

[关于阻碍]

大家担心比较多的问题就是,数学不记得了还能学么?

我觉得,暂时不要紧,可以直接看 scikit,里面有代码的 demo,知道套路可以用,先用上就会很有成就感。
里面文档不懂得,例如哪些参数什么意思呀,怎么调呀,也可以找搜索引擎帮助。
不过面试的话,对模型的原理,推导,细节还是要把握好的。

大家都说成长最快的方式,就是找这个领域的牛人学习。对于这种学习,如果没办法做到直接的,在线的,看他的书呀,听他的课呀,都算是学习。


推荐阅读
历史技术博文链接汇总
也许可以找到你想要的

简单粗暴地入门机器学习

原文:http://blog.csdn.net/aliceyangxi1987/article/details/71915183

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!