现在读研学机器学习/人工智能,毕业后能找到好工作么?

转载于知乎

点击原文链接,可进入原问题

原问题:

从今年校招来看,机器学习等算法岗位应届生超多,竞争激烈,未来 3-5 年机器学习相关就业会达到饱和吗?

原问题描述:多个互联网公司都说今年面算法岗的人太多了,研发等其他岗位人才紧缺,估计明年后年算法岗就业形势更加严峻,未来3-5年算法相关的岗位会饱和吗?

Cheeeen:

这也是我所担忧的,所以虽然现在找到了工作,每天还是在不断的学习,紧跟最前沿的研究(至少得知道自己相关的 NLP领域,推荐算法领域每天发生了什么),也会看看工程方面的代码。

从我和身边朋友的经历来说,人工智能,机器学习泡沫很大,实际到岗后干活的多种多样,从业者的水平也层次不齐。

本人是自然语言处理方向的应届小硕一枚(日本某私立大学修士),毕业前花了三个月的时间准备,刷李航的蓝皮书,周志华的西瓜书,刷leetcode,最终拿到互联网公司的几个offer 加两个SP offer。

面试求职的角度来说: 在2017年或者2017年以前,你只要跟我上面说的一样,花上三个月左右的时间去准备,去刷书,刷题,面试走内推,一个应届硕士拿到大厂算法岗的offer 概率非常大。 我的一位实验室室友,7月底回的国,刷了一个月李航蓝皮书,再写了两个tensor flow 教程下面的项目,8月底的时候已经轻松斩获好几个offer,加一个SP offer。 所以从求职的角度来说,稍微准备一下,找机器学习相关的工作真的不难,但你想稍微准备一个月,就找个大厂的开发岗位,我觉得难度还是蛮大的,这是我担忧泡沫的原因之一。

入职工作的角度来说:拿到offer 入职以后的工作五花八门,但是实际对公司贡献的力量我觉得不如现在的开发人员,有很多人工智能从业者,每天的事情就是看博客,看论文,然后复现别人的论文或者自己写论文,这个真的对公司有用吗? 拿推荐排序算法来说,主流的排序算法就那么几种,现在转到深度学习排序了,然而举办的机器学习会议(NIPS,RecSys,KDD,ICML等等)上每年都会有很多论文,新的方法出现,这个时候你就算看了这么多论文,这么多方法,拿到实际运用层面来说,真的不一定用的上。

现在很多创业公司,尤其是图像方面的,每天里面的从业者的任务就是在发论文,在某个数据集上 提高小数点后面的数字,但是就算你把识别的准确率从97.90% 提高到97.99%,或者98.00%了,放到现实中能有什么用? 不能落地的项目对公司来说除了鼓吹一下,骗骗投资者的钱,实际的作用为0,公司的收益也为0。 对公司来说,把小数点精度提高零点几的科研人员的价值 真的不如 能想出一个好的idea,把这个算法落地,落到公司应用层面,落到实际的项目中的人。

薪资待遇的角度来说,现在算法岗的薪资是要高于开发人员的,甚至高很多,这也导致了算法岗的求职者趋之若鹜,但是这个现象合理吗?

综上,我认为现在机器学习,人工智能相关工作的泡沫很大,等投资者不想投资了,公司看开了,不需要白花钱养这么多AI从业者的时候,这个工作岗位就饱和了,三年的时间足够了。

(其实现在很多大公司招这么多AI人员,做机器学习部门,深度学习部门,说白了,都是噱头,因为大家都在All in AI, 我不紧跟就会被媒体,被同行嘲笑了,创业公司不吹点AI相关的东西都不好拿投资,但是成了AI部门之后做什么,AI能给公司带来什么收益,带来的收益和投资成正比吗?公司自己都没搞清楚这个问题 )

但另一方面,不可否认的是,AI从业者的自学能力也是非常强的,好几次去西北旺上班的公交车上,看到AI工程师一手抓着公交的栏杆,一手握着论文读,打心里蛮佩服的。我觉得三五年之后,完善的算法岗校招制度会建立,那些只会背数学公式,背蓝皮书的人一定会被淘汰,但是打心里热爱这份工作,保有激情,不但会写算法代码,也会写工程代码的人是经得起时间打磨的。

建议求职算法工作的同学一定不能忘记锻炼自己的工程代码,正如评论区

胡志亮说的:“不管你是算法还是开发,首先得是个工程师”

Leetcode名企之路:

会的。

先交代下背景,我是做后端的,不是算法工程师,业务是广告,由于平时和算法同学配合比较紧密,自己好奇心也比较强,也会学一些ML相关的东西,比如CTR、召回优化、相关性计算什么的,因为log常常需要我们给他们统一。

今年找我内推的同学投的全部是算法岗位,注意,是全部!不论你是什么方向的程序员,工程师的职责是为了解决问题而存在的,当你解决不了问题的时候或者问题得不到快速解决的时候你对一个企业就会失去价值一个职位的竞争关系和薪酬体系从来都是由供需关系决定的,而不是由你怎么怎么牛来决定的。我只从我了解的传统的推荐、搜索、广告传统互联网三驾马车来说,新的应用比如图像什么的我不太了解。本文的立论基础是说趋势、也就是说这个领域的中位数,单论技术来说,哪个领域的大牛都很强,比如阿里云数据库抗住双十一峰值这种难度是不亚于搞深度学习的,希望大家不要抬杠!

这个方向2017年大家都死命往里面扑,转行的、应届的...我们来看如果一个产品上线,那么涉及到前端会经常改版上线,改版的时候快速迭代肯定需要后端工程师功能的配合,还有大量的冗余代码为了支持进一步的快速迭代和上线需要搽屁股(背锅),也需要算法同学做相关性计算的模块来优化。整体来说,研发决定了你家这块互联网的地有多大,算法决定了在这块地上怎么产生更大的收益。但是和研发不一样的是,研发可能要不断的面对变化,而算法有时候model迭代几版之后AUC怎么都不见得提高,这就很尴尬,从这个角度来说研发的需求量会比算法大,企业会给没什么产出也给算法工程师年终奖发很高的系数?不会的。这也基本上符合现在各大公司的人员结构,研发的人数常常是算法团队的1~2倍;另一方面,算法的base model可以被工程化,比如你跑个FTRL、GBDT、LR有很多特征是每个位置通用的,比如用户画像,物料基本信息,这部分工程能力如果强的话,基本的反作弊上线,pipeline管控起来,上线配置一下base model这部分可以节省掉大量算法工程师原来需要各种数据清洗的工作,接下来才需要算法工程师进行优化。我想表达的意思是:互联网发展那么多年,本质上就是流量经济,而同一个流量需要的研发工程师比算法工程师多;另一方面,现在大家都一个劲的往里面扑,迟早会被杀成红海。

另外以一个后端程序员的视角怼一下,希望那些刷了一个公开课进入算法领域的工程师能居安思危。

代码能力太弱。很多算法工程师撸代码的能力和debug的能力真的很弱,这在一个公司是很致命的,这直接导致上线和迭代速度不够快,遇到不懂的时候顺藤摸瓜快速验证数据的能力差了很多,也谈不上什么代码的复用,而且经过很多封装之后算法工程师是剩下了:想特征的部分,这也是我对接的一个做算法同学比较焦虑的。广告的特征又比较稀疏,过拟合什么的据算法同学说广告这边不太容易过拟合。另:有很多东西是结合业务的痛点工程化出来的东西,比如前两天对搜索的召回比较有兴趣,撸了一下阿里搜索广告召回的论文,人家就是基于业务设计出来的。在工程领域有大量这种东西。

无知和弱小不是生存障碍,傲慢才是。做着一堆找特征的工作,每天对研发同学秀优越说我们搞的是人工智能,见效快的觉得low,见效慢的公司没办法等你,自己做了几年出去反而把自己最有优势的部分废掉,然后只能靠媒体的AI春药度日了。

业务sense太弱。我觉得一个优秀的工程师(不论是研发还是算法)是需要具备很强的数据sense、产品sense的。比如很多召回的优化,你对比一下竞品还有如果对业务足够熟悉,就容易相出优化的东西,一下子就知道哪部分做得不好导致线上效果不好,比你在那边死搞强太多。

LucasX:

看了这个问题下的回答,
勉强来答一发吧。

机器学习/计算机视觉方向的小硕一枚。

学术方面,
主要做CV方面的research;
数据挖掘/NLP方向的话,
接触过一些简单的应用,比如text classification/sentiment analysis等等。
没系统地做这两个方向的research。

水了几篇paper,有的还在under review。

知道难度很高,被打脸了也没关系,毕竟top conference不中的话,

看看reviewer的意见也是很有收获的~

工程方面,

在Java和Python环境下搭建过人工智能云平台,效仿其他AI公司一样,封装restful API接口,供给其他人/机构调用。
技术体系为:
Java:

deeplearning4j+springMVC+spring+mybatis+MySQL+httpclient+bootstrap+HTML5。

Python:

OpenCV+tensorflow+pytorch+sklearn+numpy+scipy+pandas+MongoDB+Django。


今年研二,没参加校招,
不知道是否真如题主所说的
「今年机器学习方向出现了饱和」。
但说句实话,AI方向的泡沫是真有点大。
我听说「深度学习」这回事的时候,
还是需要从业人员具备比较高深的算法基本功/C++功底的。
有时候往往还需要去写GPU代码,手撕CUDA。

现在呢?

import tensorflow as tfsess.run()
import sklearnmodel.fit(X, y)

甚至……
很多拿着20-30W年薪的工程师,
顶会paper复现不出来,咋办?
直奔github,git clone作者的开放源码。
然后喂数据,无脑训练就行。

校招的话,刷刷李航蓝皮书、LeetCode,CS231n。
去找个image classification/face recognition相关的project做一做,

就差不多可以入行了。
门槛真的是已经降低了太多太多。

我觉得现如今AI从业者的薪资高,
很多时候都是由资本的热钱带来的。
但这种情况显然不能持续太久。

因为薪资高低/职位热度仅仅取决于你能否为公司带来更大的利益

与技术水平高低、Paper质量优劣并无直接正相关关系。


不出意外,3年之内,
那些既没有盈利希望,
产品又没有占领市场绝对地位的所谓AI公司。
会一家家倒闭。
留下几家大型公司提供行业解决方案、模型或API服务。

甚至很多靠堆tricks,performance提了0.X个百分点而发了顶会的人。

可以扪心自问一下,自己的产出真的可以匹配如此高的薪资待遇吗?

而且有部分PhD们在学术界待久了,喜欢刷榜,不爱去解决工业界的实际问题


好几年前,移动开发/web前端 也有一度供不应求的局面,

但随后「大多数中低端」市场从业者很快就饱和了。

当然,高端职位依然很稀缺。

AI行业也会一样,那个时候大多数「中低端」从业者就会比较惨了。

高级工程师/研究员依然还是很稀缺,只是可能没有现如今这么抢手了。

怎么办?好好学呗~哪里有欠缺就补哪里。

进了IT这一行,「终身学习」就是逃不掉的了。


祝大家炼丹愉快~

匿名用户:

在某大厂的应用算法团队混了多年,搞算法的招聘也有好多年,说说这几年的现状:

10年硕士毕业的时候,机器学习是冷门中的冷门,国内没几个老板做这个方向,担心找不到工作,我一直把自己往开发工程师上走,当时找工作的时候投了个Java 工程师,半路上被二面面试官调给另外一个面试官,说那位搞算法面试官他坐了半天,没收到简历,看我沾点边,让我去那边,二面面试官看了下简历,发现新大陆似的问,你还发过KXX,我点点了点头,就这么过了,直通终面。等我入了职,我才发现,原来我可以算是专业的,大部分都是业余的,这就是当年的情形:大分司开始意识到算法的重要性,想招人但招不到人,高校搞机器学习数据挖掘的老板没几个,毕业生200人左右吧,哪果今天我来面试当年的我,估计是不会再通过了。当时算法工程与开发工程师,工资是一样的。

这种情况一直持续到14年,那段时间校招依然很难,沾点边的我们就面,觉得有潜力的招进来先培养,开算法课给他们讲,从基础开始讲起...说多了都是泪,这帮人有学习能力不错的,后来做得也不错,但大多数都转行了...

15年情况开始好转,那时候机器学习竞赛开始兴起,因为奖金高,不少功底好的同学开台刷奖,有好多这样的同学来面试,打比赛很有一套,各种模型都会用,动手能力超好,理论嘛也知道一点,不管了,就是他们了!从入职后的情况来,这批人还是很不错的,算法应用能力很强,动手很好,很多基础的算法平台他们都有贡献,相当的靠谱,算法效果刷刷的往上蹭,当然培训也在继续,课还得继续补。

16年情况好多了,算法岗的待遇提升了,简历雪花般地飞来,但是靠谱的不多,但比之前的要好不少,高校有点能跟上节奏了

17年深度学习火了,因为TF的发布,天池,kaggle等比赛的促进,算法的入门门槛低了很多,再加上算法岗的待遇爆发了,基本上,是个cser,都开始搞ml,应该是搞dl,一问dl,特别是cv的,说得头头是道,估计网上的面试题没少看,问下细节,交叉熵损失函数是啥?不知道!极大似然是啥,不知道,问个开放性的算法应用问题,比如怎么预测姓名的男女概率,80%的人都回答不上来....

所以,从我的经验来看,虽然转行搞机器学习算法的同学很多,但很多同学抱着的是投机心态,对算法的高工资眼热,对机器学习本身,并没有多大热情,而机器学习不是个编程问题,不是一年半载的编码训练就很学好的,机器学习本质上是个数学问题,而数学,够学一辈子的!现在进入行业的只会调算法包的算法工程师,3~5年会饱和,不仅会饱各,还会被淘汰,AutoML正在兴起,大部分人现在炒得火热的工智能公司都会破灭,人工智能不仅革别人的命,也革自己的命!而那些搞机器学习理论研究,擅于把算法应用于解决实际问题,并能把实际业务问题抽向为算法问题并建模解决的算法工程师,目前来看,永远都不会饱和,高端人才永远都是稀缺的!

兔子老大:

和很多答主的意见相反的是,我认为这个行业会回归理性,但不会没落到人才没人要的地步。

第一,CS这个行业的水其实很深,有人需要人研发人才,有人需要工程人才,有人需要调API的初级猴子,有人需要随便找几个”专家“来给公司充大头鬼,蹭一波热点,拿一波风投……所以基本什么水平的都能找到工作.....

第二,大部分人所谈的机器学习/算法岗其实只是狭义,现在很多吃瓜群众是把机器学习和深度学习等价了(托媒体的福)。有很多问题是没法直接找论文抄一个结构就直接部署上去……你还需要针对业务的理解来提取特征,对已有算法做出微调,以及根据实际绩效的反映来再进一步改进模型……即使是已经被深度学习席卷的图像类的算法,也不是抄个结构就直接上就行,end2end还是理想化了点,还是需要一部分人工干预,比如传统的图像处理算法来对模型的输出来进行修正或融合,有过一定工作经验的人自然懂,目前人工智能是真的只到达了人工阶段,这个行业还有足够的空间给这一代人发展。况且算法岗也不仅仅指机器学习,还有一些诸如地图规划,分布式处理这一类也能算为算法岗。即使是机器学习岗也不仅仅是书中最为流行分类和回归问题,比如一些规划类问题,资源调度问题,异常检测,大数据风控等背后都隐藏着对机器学习算法的需求,而且这不是学术界某些的目前还不落地的理论,而是工业界实实在在的需求。另外,也有用机器学习处理数据库索引和前端网页生成,设计师的绘图的研究,会不会因此对这些职位产生新的要求或者造成冲击还很难说。如果真的找不到工作,到底是因为自身实力问题还是行业饱和,还是地理位置问题,自己要想清楚。不要动不动就说行业饱和,也不要动不动被被人劝去一个自己不理解的领域谋发展。

第三,其他答主也提到了,目前机器学习应聘的人多并不代表着符合岗位要求的人多。大家都心知肚明那群突然多出来的人是为了什么,是哪里来的……按照这个趋势,目前CS除AI外有两样被很多大牛所看中,可能会是下一个big thing,一个是区块链,一个是量子计算。量子计算我个人觉得还早了点,而区块链我已经看到有些培训班开课了(不过听那里的老师讲课的语气,好像自己都不相信自己说的东西),所以下一个3-5年,”人才“暴增的怕是区块链领域。

最后,追热点本身没错,你们称为象牙塔学术界里也有大把人在追热点,但正如有人在比特币里割了韭菜,有人当了韭菜,大家且追且珍惜。。。。。

还有,

年年的就业难度都是历史新高,

年年的考研人数都是历史新高,

年年的考公人数都是历史新高,

年年的天灾都是百年一遇,

街边的店铺年年都是清货减价,最后三个月。

emmmm……

现在火的方向,不一定三年之后还会火。

考研选择方向,是一件非常重要的事,同学们报名的时候一定要慎重。

你会选择机器学习/人工智能作为你的研究方向么?

你可能感兴趣的:(现在读研学机器学习/人工智能,毕业后能找到好工作么?)