保姆级人工智能学习成长路径|社区征文

  大家好,我是 herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池安全恶意程序检测第一名,科大讯飞恶意软件分类挑战赛第三名,CCF恶意软件家族分类第4名,科大讯飞阿尔茨海默综合症预测赛第4名,Datacon大数据安全分析比赛第五名,科大讯飞事件抽取挑战赛第七名。拥有六项发明专利。对机器学习和深度学习拥有自己独到的见解。今天给大家分享的是保姆级人工智能学习成长路径,希望能对大家有所帮助,特别是处于迷茫期的同学们。

0. 前言

  最近有很多小伙伴想学习人工智能,其中不少同学渴望从事相关职业。虽然网上的资料很多,但是很多内容不够接地气,导致他们看不懂,所以很迷茫,不知何去何从。作为获得AI比赛Top名次的老司机,就给大家讲讲如何系统学习人工智能,最终达到一名合格的算法工程师。希望大家能够跟随我一步步迈进人工智能的殿堂,一起冲鸭~~~

  先简单说一下学习的最大误区就是一上来闷头看视频。看视频是非常低效的学习方式,相比于阅读来说,在同样的时间内看视频学习到的知识量是远远小于阅读的。当然,国内外著名大学的经典视频有时间也可以看看。所以在后续的每个阶段学习中,都会介绍重点的学习教材。

1. 第一阶段:编程语言学习

  在IT届,最让人朗朗上口的谚语是:Talk is cheap, show me the code。这也充分表明了在计算机领域中代码的重要性了。而人工智能作为计算机领域的分支,同样满足实践是检验真理唯一标准。推荐Python语言作为学习人工智能领域的入门语言。一来是因为Python简单易学,二来是因为在人工智能领域中,很多库和框架可以通过Python语言来调用。

  在这里推荐两个课程:简明Python教程Python官方教程,前者比较适合完全零基础的同学,后者更适合具有了一定基础的初学者。之所以推荐官方教程,是因为官网教程和论文都是最权威的一手资料。

  为了帮助初学者更快的入门,特意将几大学习重点列举如下,从而方便初学者学习:

  1. Python基础语法(如基本类型、选择循环等语句等)
  2. Python编程规范
  3. Python函数
  4. Python面向对象
  5. Python异常处理
  6. Python文件操作
  7. Python正则表达式
  8. ....   除此之外,还需要花费一些时间学习机器学习常用的库,比如Numpy(numpy.array的基本操作、Fancy Indexing)、Pandas(Series、DataFrame的基本操作)、scikit-learn(数据划分、常用模型、交叉验证等内容)、imblearn(不均衡数据的处理)、梯度提升树(最常用的如XGBoost、LightGBM、CatBoost)、NLP常用库(jieba:中文分词、nltk:英文文本处理、Gensim:获取词向量、CountVectorizer:获取n-gram表示)。

  对于新手来说,学习过程中最重要的是不断重复学习,但需要注意的是单纯的重复是没有任何意义的。最忌讳的是无脑的重复。那什么是有效的学习呢?就是在每次重复翻看时,都有新的思考,并且通过查阅资料和代码实践后有新的收获。

2. 第二阶段:机器学习基本理论

  学习完Python语言后,就需要进一步学习机器学习的基本理论。推荐的学习教材是李航老师的统计学习方法。其中的常用模型包括:

  • 感知机
  • K近邻法
  • 朴素贝叶斯
  • 决策树
  • 逻辑回归
  • 支持向量机
  • 提升树
  • 隐马尔科夫
  • 条件随机场
  • 其他模型

  作为一名老司机,先介绍初学者最容易犯的误区,仅仅关注于学习机器学习模型,而忽略了对机器学习核心概念和核心思想的理解,可以通过下列几个问题来进行大概的判断:

  • 如何有效划分数据集
  • 如何解决过拟合现象
  • 模型之间的关联和区别是什么
  • 规则和模型如何选择
  • 如何根据业务场景选择合适的算法

  如果课本内容已经学的很明白,建议同学可以阅读或者动手实现模型代码。大家对上述问题不是很清晰的话,如果反响热烈,后续也会通过系列专栏的形式来讲解这一部分。

3. 第三阶段:深度学习理论与实战

  学习完机器学习基本理论后,就需要进一步学习深度学习的理论与实战。这是由于在工业界中的数据集数量庞大,只有使用拟合能力更强的深度学习才能取得更好的效果。在此推荐邱锡鹏老师的神经网络与深度学习。在学习过程中重点把握不同神经网络的结构和适用场景。比如最常用的三种神经网络结构:

  • 前馈神经网络
  • 卷积神经网络
  • 循环神经网络

  随着技术的演进,注意力机制开始在各个领域中大放异彩。它相比于循环神经网络而言,更好的解决了长程依赖问题。而现在如火如荼的Transformer模型也是在注意力机制的基础上发展而来的。

  与此同时,一定要动手使用深度学习框架来完成实践项目,比如使用深度学习框架(Tensorflow或者Pytorch)完成简单的分类或者回归的任务。然后再逐渐深入,从而加深对神经网络和深度学习的理解。

4. 第四阶段:细分领域深入学习

  再进一步就是选择细分领域进行学习了,相对主流的几大方向和细分方向分别是:

  • 计算机视觉(CV):图像分类、目标检测、关键点检测(如人体姿态估计)、图像分割、OCR等。主要提取的是颜色、形状和纹理等特征。

  • 自然语言处理(NLP):文本分类、命名实体识别、事件抽取、文本摘要、阅读理解等。主要提取的是词汇、语义等特征。

  • 推荐系统:热门推荐、Feed流、猜你喜欢等。

  • 金融风控等:客户群体筛选、欺诈风险鉴别、信用评定等。

  之前的几个阶段都可以通过教材的方式进行学习,而这一阶段的学习方式为工作或者比赛。如果没有合适的工作机会,但也想拿到进入人工智能领域的入场券,最简单直接的方式就是打比赛拿到top名次。

  建议大家可以学习各类Al比赛(Kaggle、阿里云天池、科大讯飞等)前几名队伍的成功经验,方向虽然很多,包含NLP,CV、语音、时序预测、等等方向。但建议大家学习时抓住一个方向进行努力,然后再拓展到其他方向。通过学习前排大佬的经验分享,就可以学习到很多实用的比赛tricks ,从而更好的帮助新手入门数据科学竞赛。

5. 第五阶段:集大成者

  如果我们想成为人工智能领域的大佬,就不能局限于某个细分领域了。因为很多领域之间其实是互相借鉴,互相成就的。举两个例子,一个是在NLP大杀四方的Transformer模型也被迁移到了CV领域,同样实现了佛挡杀佛。另外一个是先在CV领域中实现效果较好的simCLR(对比学习),后面被NLP领域借鉴实现了simCSE,也取得了极佳的效果。

  最后再简单介绍下需要长期培养的几大能力,祝大家早日实现自己的梦想:

  • 实际业务建模
  • 论文阅读与复现
  • 代码阅读与优化

文章来源:https://xie.infoq.cn/article/f756cec739593b8ba3558e9c2

0
0
0
0
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论