一边,在移动互联网时代掉队的微软迅速组织起来了一个万人的 AI 团队。

另一边,Facebook、Google 在对各个技术公司进行买买买,为了在 AI 时代的探索中铺好路。

多年前「深蓝」下国际象棋时,所有人都觉得人工智能还是遥不可及的学问。

直到 AlphaGo 的出现,才警醒了世人,刺激了市场。

AI 终究是个要以学术为根本的学科,AI 时代下程序员的下一步该如何走?

回顾一下移动互联网所带来的机遇,不难想象掌握人工智能、深度学习等学科技能,将为一线工作带来怎样的优势。

可是, AI 人才的培养要求严苛的数学门槛、成本高昂的实战训练,让很多一线的程序员望而生畏:

  • 一线互联网公司对 AI 工程师的要求是什么样的?

  • 我应当掌握哪些 AI 技能树?

  • 从事 AI 工作一定要有硕士、博士的知识储备吗?

  • 从零学习人工智能真的需要5年以上时间吗?

  • 系统化学习和实战中总结哪个更高效?

于是,我们请来了一些大厂的 AI 技术专家来给那些迷失在「AI 道路门口」的程序员们,讲讲 AI 工程师细分职业的区别,趋势等等等...

如何成为一名数据科学家?

在回答这个问题之前,希望你先想想另外一个问题:为什么要成为数据科学家?

当然,如果你是为了10万美元的年薪也无可厚非,但是我衷心希望你能将这个职业和自己的价值感挂钩。

因为成为数据科学家的路途会很辛苦,但如果你将其看成是实现个人价值的一种方式,那么追寻目标才能带来长久的成就感,在这个过程中会感到快乐并且动力十足。

一、数据科学家应掌握的技能包

要回答“如何成为……”这样的问题,首先当然需要知道想要成为的对象是个什么样子。图1 是一个数据科学家的技能表。

首先编程能力是数据科学家需要的基本技能。数据读取、整合、建模分析和可视化的整个环节都需要用到这些工具。

在业界环境中,整个数据链大概分为5块:

1. 云端数据存储系统。比如亚马逊的云服务 AWS,大数据可以用分布式存储在 S3中。

AWS 更像是一个生态系统,里面有数据库,也可以在上面运行一些代码,比如实时从社交网站上爬取数据储存在云端数据库中。

2. 安全门。读写数据都需要经过这道安全门,这个部分主要是由公司的 IT 部门建立。

安全门有3种限制访问权限的方式: IP 地址:只接受从特定 IP 地址的访问;职能:比如只有头衔是数据科学家和数据工程师的人有权限;用户名密码。

公司常常会同时使用上面3种方法,也就是有特定职能,从特定 IP 地址,通过用户名和密码访问。

数据工程师会训练数据科学家穿越这重重安全门。这里对数据科学家的计算机要求并不高,只需要知道一些基本的 Linux 就可以,苦活累活都让工程师们包揽了。

3. SQL 客户端。数据科学家需要通过 SQL 从数据库中读取相应数据。

根据数据库的不同,使用 SQL 的类型和语法也略有不同,但大体上非常相似。掌握基本的数据库读取操作是非常必要的。

4. 数据分析。现在使用最广的数据分析语言是 R 和 Python,熟练使用至少其中一门语言几乎成为数据科学家的标配。

只会 SAS 行不?不行。当然,这些都只是工具,工具是解决问题的手段,而非目的。

你必须要有一个能用来进行数据分析的工具,偏好因人而异,但选择工具的时候最好考虑工具的灵活和可扩展性。

5. 结果报告。这里会用到基于 D3.js 的交互可视化,Rmarkdown 自动化报告以及 Shiny 应用。

数据科学家需要另外掌握的一个重要的技能是分析建模。图2 是数据流程构架图,这个模块可以进一步细分成下面几个:

数据科学家应该具备基本的概率统计知识,能够熟练进行 t 检验,开方检验,拟合优度检验,方差分析。

能够清楚地解释 Spearman 秩相关和 Pearson 相关之间的区别。熟悉抽样、概率分布、实验设计相关概念。

了解贝叶斯统计(很快就能在白板上写下贝叶斯定理)。

不是所有的应用数据科学领域都需要用到贝叶斯,即使你所处的行业用得很少,了解贝叶斯的基本概念也是很有必要的。

使用“贝叶斯”这个词的方式有很多。但其主要代表了一种解释概率的特别方式。

用流行的术语表达,贝叶斯推断不外乎计算在某假设下事情可能发生的方式的数目。事情发生方式多的假设成立的可能性更高。

一旦我们定义了假设,贝叶斯推断强制施行一种通过已经观测到的信息进行纯逻辑的推理过程。

所以,在很多应用场景中,贝叶斯也更加合适。

机器学习相关技能。知道什么是有监督学习,什么是无监督学习。知道重要的聚类、判别和回归方法。

知道基于罚函数的模型,关联法则分析。常用的黑箱模型:随机森林、自适性助推、神经网络模型。

如果从事心理相关的应用的话(如消费者认知调查),还需要知道基本的潜变量模型,如探索性因子分析、验证性因子分析、结构方程模型。

在应用过程中还需要加强对模型中误差的来源分类的理解,知道相应误差的应对方法。

当前存在的机器模型太多,理解模型误差可以帮助你有效地通过尝试少量模型找到足够好的那个。

除了技术能力以外,还需要其他一些非技术的能力。这些包括将实际问题转化成数据问题的能力,这一过程需要交流,也就要求良好的交流沟通能力。

关注细节,分析是一个需要细心和耐心的职业。还有就是展示结果的能力,如何让没有分析背景的客户理解模型的结果,并且最终在实践中应用模型的结论。

这个单子还可以一直列下去。看起来是不是不只一点吓人?

其实这个技能单是动态的,你一开始不必具有上面列出的所有技能,但在工作过程中,需要不断的学习成长。

一个优秀的数据科学家不是通过数据找到标准答案的人,而是那个接受和适应这个充满不确定性的世界,给出有用方案的人。

一个成熟的数据科学家面对分析项目时会看到多种可能性和多种分析方法,给出结果后依旧时刻关注这个结果,不停地保持小幅度频繁更新。

再次强调自学能力和成为一个终生学习者是优秀的数据科学家的必要条件。

二、如何获取上述技能?

现在你对数据科学家需要具备的技能应该有个大致的概念了。接下来的问题是如何获取这些技能。这个问题的答案部分取决于你的专业背景。

当前数据科学家的背景其实很杂,这里主要着眼于数学、统计、计算机或其它定量分析学科(电子工程、运筹学等)本科以上学历的情况。

数学统计背景的学生,需要加强计算机方面能力的培养。而计算机背景的学生需要更多地了解统计理论。

如果是其他定量分析学科,可能需要同时加强这两者。其他专业的学生成为数据科学家有两种情况:

从事和自己专业相关行业公司的数据分析。比如在一些精准农业应用的公司,会常常看到数据科学家是生态学博士,或者土壤学博士。

其实这些人不能算是广义上的数据科学家。

因为他们处理的问题局限于非常特定的领域,对生态和土壤的了解的要求高于对数据分析的要求。

虽然是其他专业,但是本身有着很强的计算机技能,比如物理学专业的学生会成为数据科学家或者量化交易员,这因为他们通常具有很好的编程能力。

关于数据科学家的学位背景,根据2017年的统计数据,美国的数据科学家41%有博士学位,49%有硕士学位,只有10%是本科。

研究生博士期间的课题最好偏向机器学习、数据挖掘或预测模型。其次需要的是数据库操作技能。

在工作中通常需要用 SQL 从数据库读取数据。对于统计或者数学专业的学生,在校期间可能不需要使用 SQL,因此不太熟悉。

这没有关系,我也是工作以后才开始使用 SQL 的。但你要确保自己至少精通一种程序语言,之后遇到需要用到的新语言可以迅速学习。

现在有大量的 MOOC 课程,以及一些在线的数据科学视频,都是提升自己的很好方法。

三、在数据科学的应用中有哪些常见误区?

会用函数跑模型就可以了?

会开车的只是司机,要当汽车工程师,仅靠会开车是不行的。这点放在数据科学领域也是一样。

不需要你背下模型背后的所有数学公式,但是至少需要学过一遍,让你可以翻着书解释模型机理。

模型精确度越高越好?

在实际应用中需要同时考虑收益和成本。如果模型精确度是90%,但是提高到95%需要复杂得多的模型。

因此需要大量的计算设备投入,同时带来的边际收益很小的话,满足于精确度小的模型就好了。模型选择和评估可能是数据分析流程中最难的环节。

技术过硬就是尚方宝剑?

人常常是不理性的,我们的行为和对周遭的态度受感情的影响。我们总是会对所有的事情加上自己的主观判断。

当然,你公司的同事,领导看待你的方式也受到主观的影响。很遗憾,这个主观的感受通常更多的来自于你作为人的部分,而不是机器的部分。

你觉得自己技术好是一件事情,领导觉得你技术好是另一件事情,领导觉得你的技术是有用的那又是新的一件事情了。

所以“做技术”不等于“情商低点没关系”。

技术不断更新,被泡沫裹挟着失去方向?

不断升级将会是一种常态,这不仅仅是数据科学,你必须这么做,因为所有的东西都在升级,就像军备竞赛一样,升级已经成为事物本身的存在方式。

面对不懂的技术,要么就说不懂,要么就去学。其实你真正鼓起勇气,开始认真去学习这门技术的时候,会发现其实没有那么神秘。

当然,马上又会有新的神秘的东西出现,这个过程又会重复。但你就是在这样循环反复中成长的,产品是这样,人也是这样。

四、数据科学领域现状

我们从数据上看看数据科学的现状吧。从最大的职业社交网站领英( LinkedIn )的数据看来,数据科学家职位的年薪在7.5万~17万美元之间,中位数是11.3万美元。

其中雇佣数据科学家的公司主要集中在微软、IBM、Fackbook、亚马逊、Google这些计算机互联网公司,图3 为前10名雇佣数据科学家最多的公司。

数据科学家所处的行业也集中在科技或者研究性组织,图4是排名前10的行业。

不同公司的数据科学团队架构不一样。主要有如下2种:

1. 独立式。独立的数据科学部门,会有一个数据科学总监这样的领导角色领导。这通常在研究所或者公司科研型的部门。

对于数据科学家而言,在这样部门的优点是能够和很多其他数据科学家有技术上的交流,也有明确的职业轨道。

缺点是,很难脱颖而出,需要和很多其他科学家竞争一些资源(比如培训会议的机会)。

2. 嵌入式。数据科学家各自嵌入到不同的职能部门中。常见的是市场部的数据科学家。

领导者就是传统的市场总监。在这样的团队优势在于直接和公司高层接触,影响商业决策。

因为独特很容易脱颖而出获取很多行业内培训和会议的机会,而且市场部是核心部门,如果你想在这个公司发展,这是很好的地方。

缺点就是,无法和其他数据科学家交流,很多东西需要自己决策,周围人只能选择相信或者不相信你,但不能给出特别的帮助。

久了会有在专业上落后的危险,所以需要充分利用在市场部的培训会议资源,积极参与数据科学家社区。

最大的缺点是没有清晰的职业轨迹,因为在市场内部的分析团队不会太大。

如果你的职业目标是最后管理一个大团队或者职能的话,这可能不能满足你的目标。但其职位本身从初级到高级的跨度可以很大。

数据科学家这个职位还比较新,所以从团队建设和职业轨迹上都还在发展,具有很好的前景。

希望你能成为一个不断思考,终生学习的数据科学家!

《如何成为一名数据科学家》

作者:林荟

美国杜邦公司商业数据科学家,美国爱荷华州立大学博士。《套路!机器学习:北美数据科学家的私房课》作者。2017年1月至今主持美国统计协会市场营销在线数据科学讲座。

点击左下角“阅读原文”,获取更多人工智能技能!

AI 崛起,科学家的天下,程序员的谢幕相关推荐

  1. python编程语言的缺点-常见的AI编程语言优缺点比较,程序员千万不要入错行!...

    原标题:常见的AI编程语言优缺点比较,程序员千万不要入错行! 人工智能编程是一种技术的提升,为不同公司的运营和人们的生活带来了极高的效率和最佳效益. 人工智能为不同的行业带来了另一种智能技术,其潜力的 ...

  2. 让世界充满AI—时代的开拓者(程序员)

    让世界充满AI-时代的开拓者(程序员) 人工智能是一门涵盖多学科知识,而又被当今社会广泛应用于多领域,给人带来便捷.高效的同时,又让业界为其担心的交叉学科知识的综合产物.随着各种智能机器人开始服务于各 ...

  3. AI 技术越来越平民化,程序员不想被淘汰该怎么办?

    不久前,B站上独立游戏开发者大谷上传的一则"修复100年前老北京影像"视频带火了一项技术--AI修复.通过AI技术手段,100年前的老旧黑白影像变得更加清晰,还原了彩色世界,让人一 ...

  4. 现在入坑 AI 太迟?这些程序员发现了掘金新出路

    从技术.应用场景到生态架构,AI正在茁壮发展. 商业化落地是AI技术发展的重要评判依据.去年以来,产业智能化发展风生水起,交通.工业.教育.医疗等成为AI落地的重点方向,这也让那些早先入局AI的企业和 ...

  5. AI编程软件会取代程序员吗?

    最近听到同事问了这样一个问题,今天就来好好的唠一唠,随着科学技术的发展,现在生命上都已经开始出现AI编程软件了.不由得感叹,一句现在时代发展还真快呀!然后我就和他一样产生了一种小小的恐慌和困扰,是呀! ...

  6. 全球最常用密码名单公布:“123456”排第二;谷歌神秘项目曝光:AI写代码,抢程序员饭碗;WSL GA发布|极客头条

    「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧. 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews ...

  7. 天下程序员苦文档久已 | 《活文档》第一波短评

    小伙伴们都知道,这是我们最近刚刚上架的一本书.这本书切中了不少程序员的痛点,因此,一上架就成为大家抢购的图书,最近一周一直稳居新书销量榜榜单. 除了预览版大佬们推心置腹的推荐,我们已经收获了第一批读者 ...

  8. 这20首诗词献给天下程序员们

    点击上方"民工哥技术之路"选择"星标" 每天10点为你分享不一样的干货  读者福利!多达 2048G 各种资源免费赠送 转载自:程序员最幽默(ID:humor1 ...

  9. 软件行业的崛起---------之合格的程序员

    原 1. 编程语言能力 不用多说,作为合格的程序员,精通一门语言是必须的.这种精通,不是说看了一本<24小时精通XXX>,抄了几个程序就能说精通的,要靠长时间的积累和浸淫. 2.编码能力 ...

最新文章

  1. centOS7 LNMP+phpmyadmin环境搭建 第三篇phpmyadmin安装
  2. 在leangoo里列表一般怎么设置?
  3. 简单字符串比较——JAVA
  4. 哪些深度相机有python接口_python 从深度相机realsense生成pcl点云
  5. unity 安卓 后台运行_iOS14多任务界面放出,类似iPad,实现安卓锁定后台的功能?...
  6. java 多线程缓存_[Java教程]【JAVA并发编程实战】12、使用condition实现多线程下的有界缓存先进先出队列...
  7. python bottle框架 运维_python bottle 框架实战教程:任务管理系统 V_1.0版 | linux系统运维...
  8. 爬虫python可以干嘛_【Python爬虫】什么是爬虫,爬虫能做什么?
  9. 小白也能看得懂的服务端性能测试指标及问题排查
  10. c语言国二题库及答案2017,全国计算机二级《C语言》考试题库与答案
  11. Windows xp IIS 信息服务
  12. Linux系统监控命令整理汇总-掌握CPU,内存,磁盘IO等找出性能瓶颈
  13. 排序sortByKey,和sortBy
  14. Xubuntu 16.04下安装gtx 960m的NVidia显卡驱动----2017.03.19
  15. VS2005 编译器选项
  16. 专访|单月 GMV 破千万,5800 万用户,樊登读书视频生态解读
  17. 【查找】临近省赛,Alan邀请emoji玩起了猜数字游戏活跃一下大脑。游戏规则如下:首先Alan写下几个数字让emoji猜,当emoji猜完之后,Alan会给他一个提示(java)
  18. 【ibokan】SEO个人笔记+百度百科详细介绍
  19. php 前端超出字数,标题字数超出范围截断处理方案比较
  20. C语言原码,反码和补码转换详解

热门文章

  1. php安装文档,PHP - Manual: 安装 (官方文档)
  2. pytorch和python有什么区别_PyTorch到底好用在哪里?
  3. wpf 按钮样式_键盘 | 01.在程序集间引用样式
  4. kvm虚拟机不通网关_linux ssh 虚拟机下CentOS7开启SSH连接
  5. 女神!浙大教授荣获世界杰出女科学家奖!
  6. 删文97篇!前UCLA教授竟是民科?不看好量子通信被禁言
  7. 谋划一年,还把手机藏鞋里?00后高考作弊被判刑
  8. 50张动图带你走进神奇的物理生物化学世界,超震撼!
  9. 宇宙的最原始状态是个什么样子
  10. 别傻啦,不会高数,你连人话都听不懂