普通程序员想投身AI行业?知乎大V分享开发者转型的机遇与挑战

作者:知否
来源:智能
2018-03-02 13:45
[ 导读 ] 在市场的强烈需求以及高额薪资的双重诱惑下,不少开发者计划转型 AI 开发,投身于 AI 的浪潮中。不过,普通开发者

据 LinkedIn 发布的「全球 AI 领域人才报告」显示,2011 年深度学习技术爆发,人工智能领域有了飞跃式的发展,但核心人才资源的短缺限制了国内人工智能相关行业的发展速度,尤其是在软件、算法、机器学习等基础层领域,有着更加明显的人才需求缺口。与此同时,为了招揽更多优秀的人才,科技公司给 AI 工程师开出的福利待遇也远远高于其他 IT 领域开发者的薪资。

在市场的强烈需求以及高额薪资的双重诱惑下,不少开发者计划转型 AI 开发,投身于 AI 的浪潮中。不过,普通开发者如何基于现有的开发经历顺利过渡到 AI 行业?人工智能开发者如何构建自己的技能体系?未来工业界需要怎样的人工智能开发人才?这些都是非 AI 领域程序员不得不面对的问题。带着这些疑问,AI 研习社采访了知乎大 V 阿萨姆,他将结合自身的学习与工作经验为开发者解读转型 AI 所要面对的困难和挑战。

嘉宾简介:阿萨姆(现知乎 ID 为「微调」),普华永道高级数据科学家,负责统计学习模型开发。有丰富的工业及学术经验,擅长将理论知识应用于实践中。曾以第一作者发表过多篇不同领域的学术文章,如人机互动、智能系统等。研究兴趣包括异常检测、集成学习、跨领域机器学习。以笔名“阿萨姆”在知乎上创作了多篇机器学习相关的文章,曾数次被知乎及知乎日报收录。乐于技术分享,近期正在进行机器学习实践书籍创作。

以下是对阿萨姆的采访:

1. 一个合格的机器学习开发者应该需要怎样的技能?或者说怎样的知识体系?

我觉得分为很多方面,和公司的规模有很大关系。如果单从开发角度来看,最基本的要求是需要大致了解各个模型的优缺点,清楚在什么情况下选择怎样的模型。

公司有规模大小之分,但对于机器学习工程师这一岗位,很多公司也提出了基本的技能要求。这些基本要求不过分强调深度,但追求广度,属于一个“合格”工程师应该掌握的基本技能。简单概括包括如下几点:

1. 业务能力

理解问题的痛点,明白如何用机器学习方法看待商业问题;

懂得数据需求,能收集重要的数据和必备的信息;

具备从模型中攫取价值的能力,明白模型的最终目的是产生商业价值。

2. 数据能力

数据整合能力:能够将不同渠道的数据整合(数据库、excel、JSON等),合并、去重等;

数据处理能力:缺失值处理(发现与补全)、数据格式转换、数据压缩、过采样欠采样等;

数据可视化:能够使用基本的数据可视化工具来分析数据,不管是 R 的 ggplot2 还是 Python 的 Matlibplot,或者 tableau 和 Qlik 等。

3. 模型与算法理解

理解基本的机器学习算法,明白不同场景下的经典解决方案,不迷信算法。(比如小数据集的简单问题用线性模型就够了)

具备基本的统计概率知识,知道如何避免数据中的陷阱;

理解经典模型的基本调参,可以解释分析模型的输出结果。

4. 编程能力

熟练操作如 Python、R 等语言,知道特定算法的工具包,如 Sklearn;

熟练不同语言下的数据结构,知道如何高效地处理数据,如 pandas。

懂得分布式运算会有所帮助,明白如何在线上部署机器学习模型,也是一个加分项。

详细信息请参照我的知乎回答:https://www.zhihu.com/question/63881785/answer/243635446 。

2. 国内外不少巨头都在打造AI开发者平台,有的甚至开放了自家的算法供大家参考,对于目前几个大的AI开发者平台,工程师们应该怎样选择呢?

现在还处于百家争鸣的阶段,一般都是跟着公司/团队的需求走。更常见的选择是跟着巨头走,比如深度学习的话 TensorFlow(虽然被不少用 pytorch 和 caffe 的人诟病)背靠谷歌好乘凉。跟着巨头走的主要好处在于代码会持续更新,不会慢慢变得无人维护。其次就是和编程语言有关系,如果用 python 的话,通用机器学习库基本主要是 sklearn,如果用 java 有 weka。但最重要的是,不要把自己绑定到某一语言或者平台上,要花时间在编程语言和平台背后的模型上去。工程师们最好具备的是“T字型技能”,即深入掌握某个语言/平台,但对其他平台有粗略的了解。

3. 数据对于 AI 来讲非常重要,对于想转行做 AI 的工程师来讲,如何快速掌握大数据相关知识,培养良好的数据思维?

这个问题我就不强答了,因为我对大数据的了解比较有限。有一个值得关注的就是,现阶段很多的 ML 模型还用不到大数据,往往数据只有几个 GB 而已,甚至几 MB。因此,不要拘泥于大数据知识,如果有条件的话,优先掌握机器学习模型还是比较重要。

全部评论

相关文章

  • 验证码: 看不清?点击更换 看不清? 点击更换
  • 微信扫一扫

    知否网