计算机视觉毕业后找不到工作怎么办?

2023-11-09

点击上方“视学算法”,选择加"星标"置顶

重磅干货,第一时间送达

编辑:Amusi  |  来源:知乎

https://www.zhihu.com/question/335451320

本文仅作为学术分享,如果侵权,会删文处理

计算机视觉毕业后找不到工作怎么办?

本人目前是985高校渣硕一枚,准研三,方向是计算机视觉。成绩中等,无论文,无比赛经历,有项目经历。导师基本放弃科研,平时学生都处于放养状态。编程基础还可以,自认为在教研室算好的了,python用得比较熟,C++也会一点。pytorch, tensorflow,keras等框架也用的还可以,之前为了找工作做准备,自己还复现了几篇论文中的代码放在github上,但获赞数寥寥。

当初选择该方向时,深度学习正处于大热阶段,什么无人驾驶,人脸识别听起来就很高大上,似乎人人都想往这方向转。然而到了找工作的时候了,发现就业形式和我想的相差太大。最近陆陆续续有公司开始秋招的提前批了,计算机视觉岗位招的清一色算法工程师,没有论文,或者大赛获奖的找到算法岗的简直不要太难,周围的同学都开始纷纷转Java开发,自己也开始慌了。

想到学了两年的cv,最后工作都找不到,一时间十分失落,感觉如果去做Java开发,还不如本科一毕业就出去工作,完全没有读研的必要。所以我想问的是现在跟深度学习,机器学习相关的专业,是不是都快烂大街了,是否应该劝退后来者。为什么网上很多鼓吹AI的,营造出一种很好就业的错觉,然而到最后大多数人都找不到这方面的工作。

作者:zhongyian
https://www.zhihu.com/question/335451320/answer/753241849


谢邀。

一、开发岗和算法岗无高低贵贱之分

学两年算法做开发,觉得学无所用,转开发又比不上专门做java的人专业是可以的,但隐约有点瞧不上开发岗不太鼓励。往大了说,任何工种都是平等的,更何况都是程序员;往小了说,算法工程师本上还是工程师,是开发的一种。开发方面大佬也多的是,只是最近算法比较火,但是未来还真不好说。

二、算法:研究岗与研发岗对应的能力

说到这里,可能会有人反对:算法就是建模,和开发两回事。但是就我找工作的经验,私以为算法分两种岗位,一种是研究岗,这类岗位包含大部分博士和少部分硕士,做建模工作,发发文章;一种是研发岗,这类岗位是少部分博士和大部分硕士,负责研究岗研究出的算法的落地,会涉及到数据清洗,特征工程,开发上线等工作。

大部分硕士瞄准的肯定是研发岗,这就要求开发能力必须过关,这也是为啥开发岗和算法研发岗都要考leetcode一样,因为算法效率在实际生产中还是有要求的。也就是说,工业界用的算法是滞后于学术界好几年的,不要对公司所做的算法有太多的幻想,现实数据比你想的质量差太多,现实用的算法也没有那么高端。也就是说,大部分时间不是用在建模。

三、劝退 or 鼓吹?

事实上19届秋招算法岗就有些供过于求了,头条甚至发了算法劝退贴。而由于前几年算法就业形势太好,导致一大批人转算法,这部分导致的泡沫其实还没有消化掉,比如题主现在就在吐槽。其实不是现在算法突然不好找工作了,而是之前太容易了。

至于劝退还是鼓吹,肯定是要劝退一部分盲目入行的同学,但其实公司也是有算法工程师的缺口的,遇到的好几个hr都说,收到几百份简历,但是没什么匹配的。所以说做算法的人多是真的,可是需要做算法的人也是真的。矛盾点在于供需不匹配。

其实,市场这双无形的手是会调整的。高薪、低门槛势必吸引更多的人做算法人多了门槛肯定高、薪水也不见得高多少,19年有些开发同学是可以拿到和算法同学差不多的薪资的,这在前两年可不是,薪资低了,门槛还高,做的人自然而然就少了。

四、有时候和你做什么无关,和你做到什么层次有关

不得不说,算法相对于系统等其他方面是好发文章的,现在挺多硕士都有文章,一个学弟(马上研三)也是做视觉,研二时候就两篇A类一作文章了。出去开会,也会发现现在硕士甚至本科好多同学都有文章,或者在很多竞赛中拿到名次。

倒不是闭眼吹周围人多厉害,而是在hr筛选简历过程中,一份简历有这些加分项,一份没有,基本肯定是要选有加分项的。功利的来看,几百份简历,没有明确的加分项,hr有多少时间,又如何能确定你基础扎实呢?尤其想去大厂,简历不出彩是真的有点难。

五、一定要有忧患意识,规划一定要早

985硕士想在激烈的求职市场上躺赢也是有点困难的,你说的python,c++,tensorflow,torch只是算法的入场券。当然了,导师不怎么指导的确也是不利因素,自己单打独斗的确困难。但是一定要眼光放长远,入学的时候应该想到,哪有能一直火的专业呢?

给题主的建议:

1、剑指offer太简单了,leetcode刷个一遍吧。不要望洋兴叹,周围有好几个leetcode刷两遍的,也没啥文章和竞赛,但是最后工作都不错。

2、找直系学长学姐,部门领导直推(不等于给个内推码的那种,当然如果只能找有内推码的,也不错了)。

3、明确自己的定位,有时候不是找不到工作,是找不到满意的工作。

4、不要慌,985计算机硕士已经比市场上绝大部分人好找工作的多了,坚持住,结果不会太差的。

作者:mileistone
https://www.zhihu.com/question/335451320/answer/778472869

现在市场出现了一个看起来很矛盾的现象,招聘公司觉得计算机视觉算法工程师难招;计算机视觉算法工程师应聘者觉得工作难找。

背后的原因在于前几年因为人工智能大火,非常多人转行进入计算机视觉领域,供给远远大于需求,给应聘者以工作难找的感觉。

另一方面,这突然转行涌入计算机视觉领域的人才大部分能力不太够,毕竟隔行如隔山,有效供给其实并没有因为大量人才转行拥入这个领域而变多,所以公司觉得计算机视觉算法工程师难招。

其实应届生找计算机视觉算法工程师的工作还是比较容易的,只有你有一个闪光点,比如编程能力强;数学好;机器学习/深度学习基础扎实;做过相关项目,而且理解较深;打过相关比赛,并取得不错的成绩;在相关领域发表过不错的文章等等。

计算机视觉算法工程师并不是所谓的“学个python,看看论文,找个开源项目改吧改吧就能跑出个结果”这么简单。把计算机视觉算法工程师的工作看成这么简单的肯定不太好找工作。

无论是java开发还是计算机视觉算法,想做好都不容易;无论是java开发还是计算机视觉算法,如果做得好,找工作都比较容易。



作者:hzwer
https://www.zhihu.com/question/335451320/answer/775965379


当我们说 AI 人才缺口的时候,是说能独当一面的人太少。不论毕业院校,没有拿的出手的比赛论文项目经历,直接拿到算法岗 offer 不可能。企业招这样的人又贵又没有战斗力,不如招本科实习生培养。

真想找 cv 工作,可以先把面试题刷好,练好基础算法和编程至少能够有一些产出能力,再找个地方实习转正。


作者:theHunter
https://www.zhihu.com/question/335451320/answer/752677408

题目会给人一种错觉,即嵌入式,操作系统,形式化,计算机图形,体系结构等方向好找似的。

认清事实,读研的学术方向和实际工作并不对等,大部分人的硕士学术生涯都很水的。

另外,据我观察,水的人做啥都水。如果你真的热爱 cv ,先做着不那么满意的岗,人生是长跑,以后总有机会进大厂。


作者:本马
https://www.zhihu.com/question/335451320/answer/1219440055

CV方向确实人多坑位少,比NLP方向内卷的更厉害。不过,NLP方向也快不行了。个人建议是,不建议直接转开发岗,算法与开发的技能栈差别比较大,容易两者都做不好,更焦虑。建议的是“算法退级”,比如从CV退去做更宽泛的深度学习乃至机器学习岗位,一些深度学习甚至计算机视觉在其他领域的应用,如天气预测,卫星等,这些不直接做AI的相关单位或企业也是可以考虑的。继续往后退的话,就是看看机器学习、数据挖掘相关的。如果还是不行,就找找数据分析岗。

作者:镜子
https://www.zhihu.com/question/335451320/answer/1299736579


撇开劝退的思路,我给个亲身经历过有效的解题思路吧。

其实大家的思维有点局限在互联网公司的范围里了,一说到cv算法岗,脑子里冒出来的公司基本都是那些,所以在就业供需失衡的时候当然是越来越内卷的。

但是跳出互联网公司的范围,真的就没有别的公司需要计算机视觉技术了吗?我不是在说做通讯、电子行业的公司,而是更大范围的跨越,一些比如法律、知识产权、教育等垂直领域的头部公司,他们同样有很多业务可以用到cv和nlp技术。

我曾在国内一家很大的知识产权律所下属的公司做过,做商标图形近似检索,用的都是深度学习和计算机视觉的技术,收入其实跟互联网公司差不多,甚至比一些白菜价低的互联网厂高一点,而且每周965,过得挺开心的。

分析其中的逻辑的话,因为比起竞争激烈的互联网,这些垂直领域更多的是大家瓜分市场,格局基本定下来很难改变了,头部公司本身已经保证了很高的盈利能力,但想要超越自己上面的公司,传统业务上很难再做文章(因为垂直行业很多时候更看重人脉、品牌、过往合作),所以他们会更渴望找到弯道超车的途径。

而深度学习带来的技术进步对于这些行业来说是很惊人的,我还记得第一次用简单ft的resnet做了个demo,出来的检索效果就让一些工作很多年的商标审查员直呼神奇,他们过去一直使用的检索方式在当下看来都是很传统而低效的,比如商标审查的时候,审查员就是坐在电脑前,通过一些比较简单的分类标签,然后把这个分类下的所有商标挨个看一遍,来筛选近似商标,我也想不到已经0202年了原来还有如此复古的工作方式。

所以我认为跳出互联网技术公司的圈子,去一些目前还没有被大家关注到的传统行业,也许是一种不错的思路。而且我相信,很快互联网圈子就会把战火烧到那些地方去,因此这个机会也是有窗口期的,错过了之后,后面肯定只会越来越难。

PS:其实现在已经有很多互联网大中小厂在给这些行业提供技术支持了,但从我的经验来看,大厂流水线出来的东西其实未必那么有竞争力,这些传统领域涉及到大量的细节规定和经验性的东西无法被总结成算法规则(或者说,还没人来总结,传统行业内的人是不具有这种总结能力的),而大厂流水线注定了产品服务的定制性不足,也许数据+dl能快速生产一个乍一看效果还不错的东西出来,但一落地其实是漏洞百出根本无法作为一款生产力工具的,因此很多有远见的传统行业公司其实在布局自己的下属技术公司或部门,自己给自己做产品和技术,工程师和产品很多时间都是直接面对一线律师或审查员在交流需求和经验,然后来提炼总结成算法和技术。像我那几年长期跟各种商标局审查员、代理人交流,我自己还看过商标审查规范,感觉自己都快成半个商标代理人了,通过这些交流学习,总结了大量的技术经验,这些都是学术和技术领域没有前人工作可以借鉴的。最后我做的检索算法现在被美国欧盟还有中国很多的律所在使用,作为摸着石头过河一步一步过来的人其实也是蛮自豪的。

作者:橙子 

https://www.zhihu.com/question/335451320/answer/758785960

1.多刷题

2.多看攻略

3.调整心态

4.好好准备项目

提前批还是很难的,题主不要失去信心,坚持一个方向,无论是开发还是算法,一定会有工作的,毫无疑问!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

计算机视觉毕业后找不到工作怎么办? 的相关文章

  • Spring Batch 多线程 - 如何使每个线程读取唯一的记录?

    这个问题在很多论坛上都被问过很多次了 但我没有看到适合我的答案 我正在尝试在我的 Spring Batch 实现中实现多线程步骤 有一个包含 100k 条记录的临时表 想要在 10 个线程中处理它 每个线程的提交间隔为 300 因此在任何时
  • Java中反射是如何实现的?

    Java 7 语言规范很早就指出 本规范没有详细描述反射 我只是想知道 反射在Java中是如何实现的 我不是问它是如何使用的 我知道可能没有我正在寻找的具体答案 但任何信息将不胜感激 我在 Stackoverflow 上发现了这个 关于 C
  • 在画布上绘图

    我正在编写一个 Android 应用程序 它可以在视图的 onDraw 事件上直接绘制到画布上 我正在绘制一些涉及单独绘制每个像素的东西 为此我使用类似的东西 for int x 0 x lt xMax x for int y 0 y lt
  • Java - 将节点添加到列表的末尾?

    这是我所拥有的 public class Node Object data Node next Node Object data Node next this data data this next next public Object g
  • JAXb、Hibernate 和 beans

    目前我正在开发一个使用 Spring Web 服务 hibernate 和 JAXb 的项目 1 我已经使用IDE hibernate代码生成 生成了hibernate bean 2 另外 我已经使用maven编译器生成了jaxb bean
  • INSERT..RETURNING 在 JOOQ 中不起作用

    我有一个 MariaDB 数据库 我正在尝试在表中插入一行users 它有一个生成的id我想在插入后得到它 我见过this http www jooq org doc 3 8 manual sql building sql statemen
  • 无法展开 RemoteViews - 错误通知

    最近 我收到越来越多的用户收到 RemoteServiceException 错误的报告 我每次给出的堆栈跟踪如下 android app RemoteServiceException Bad notification posted fro
  • Liferay ClassNotFoundException:DLFileEntryImpl

    在我的 6 1 0 Portal 实例上 带有使用 ServiceBuilder 和 DL Api 的 6 1 0 SDK Portlet 这一行 DynamicQuery query DynamicQueryFactoryUtil for
  • 路径中 File.separator 和斜杠之间的区别

    使用有什么区别File separator和一个正常的 在 Java 路径字符串中 与双反斜杠相反 平台独立性似乎不是原因 因为两个版本都可以在 Windows 和 Unix 下运行 public class SlashTest Test
  • 如何在PreferenceActivity中添加工具栏

    我已经使用首选项创建了应用程序设置 但我注意到 我的 PreferenceActivity 中没有工具栏 如何将工具栏添加到我的 PreferenceActivity 中 My code 我的 pref xml
  • 在两个活动之间传输数据[重复]

    这个问题在这里已经有答案了 我正在尝试在两个不同的活动之间发送和接收数据 我在这个网站上看到了一些其他问题 但没有任何问题涉及保留头等舱的状态 例如 如果我想从 A 类发送一个整数 X 到 B 类 然后对整数 X 进行一些操作 然后将其发送
  • 为什么HashMap不能保证map的顺序随着时间的推移保持不变

    我在这里阅读有关 Hashmap 和 Hashtable 之间的区别 http javarevisited blogspot sg 2010 10 difference Between hashmap and html http javar
  • getResourceAsStream() 可以找到 jar 文件之外的文件吗?

    我正在开发一个应用程序 该应用程序使用一个加载配置文件的库 InputStream in getClass getResourceAsStream resource 然后我的应用程序打包在一个 jar文件 如果resource是在里面 ja
  • 如何在控制器、服务和存储库模式中使用 DTO

    我正在遵循控制器 服务和存储库模式 我只是想知道 DTO 在哪里出现 控制器应该只接收 DTO 吗 我的理解是您不希望外界了解底层域模型 从领域模型到 DTO 的转换应该发生在控制器层还是服务层 在今天使用 Spring MVC 和交互式
  • 仅将 char[] 的一部分复制到 String 中

    我有一个数组 char ch 我的问题如下 如何将 ch 2 到 ch 7 的值合并到字符串中 我想在不循环 char 数组的情况下实现这一点 有什么建议么 感谢您花时间回答我的问题 Use new String value offset
  • Java执行器服务线程池[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如果我使用 Executor 框架在
  • 无法捆绑适用于 Mac 的 Java 应用程序 1.8

    我正在尝试将我的 Java 应用程序导出到 Mac 该应用程序基于编译器合规级别 1 7 我尝试了不同的方法来捆绑应用程序 1 日食 我可以用来在 Eclipse 上导出的最新 JVM 版本是 1 6 2 马文 看来Maven上也存在同样的
  • 如何从泛型类调用静态方法?

    我有一个包含静态创建方法的类 public class TestClass public static
  • Firebase 添加新节点

    如何将这些节点放入用户节点中 并创建另一个节点来存储帖子 我的数据库参考 databaseReference child user getUid setValue userInformations 您需要使用以下代码 databaseRef
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两

随机推荐

  • 如何利用TL431设计一个可调电压源

    TL431是一个三脚电压可控的稳压器件 常用的封装有TO 92 SOT 23 SOT 89 电路符号是这个 TL431常被用在参考电压 基准电压电路 用来替代稳压管 其中1脚是reference 2脚是Anode 3脚是Cathode TL
  • ARP(地址解析协议)

    ARP Address Resolution Protocol 地址解析协议 可以在以太网上 根据已知的IP地址查找主机的硬件地址 一 ARP的工作原理 我们以以太网的工作环境作为背景来探讨这一协议 串行链路由于是点到点链路 故而不需要AR
  • 微信网页开发分享

    首先提供一个微信官方地址点击打开链接 早期web项目中经常用到微信分享功能 现在整理一下 供记忆与分享 开发环境为JAVA H5 1 微信的开发环境不在多说 大概为 使用已备案的域名 设置 公众号设置 的三项域名 设置开发者密码 AppSe
  • Java直接杀死线程方法_如何杀死一个线程?

    1 简介 在这篇短文中 我们将讲述一下java中如果结束一个线程 事实上 这并没有想象中的那么简单 因为 Thread stop 方法已经被废弃啦 根据Oracle的解释 stop 方法可以导致被监视对象遭受破坏 2 使用一个Flag 我们
  • DWT数字水印算法(Python)

    DWT数字水印算法的基本原理 结合Arnold变换的基于DWT的数字水印的嵌入 充分利用了小波变换的特点 采用Haar小波 把原始图像及水印图像进行三级小波分解 然后在多分辨率分解后的频段嵌入水印信号 得到嵌入水印的图像 数字水印最重要的性
  • Keil5识别不到ST-Link的解决办法

    刚开始还以为是pack的问题 下载好多pack也没解决 后来发现其实是驱动的问题 从官网上下载驱动 之后进行基本的配置 如下所示 点击魔术棒标志 然后 然后 点击settings 点击add 添加自己的芯片类型 选择erase full c
  • 基于BERT模型实现文本分类任务(transformers+torch)

    BERT的原理分析可以看这 BERT Pre training of Deep Bidirectional Transformers for Language Understanding 论文笔记 代码实现主要用到huggingface的t
  • 如何保证MQ不丢失信息

    为了保证消息队列 MQ 不丢失信息 有以下几种方法可以考虑 增加冗余 通过将数据存储到多个不同的地方来防止数据丢失 使用持久化存储 通过将数据存储到磁盘上 而不是内存中 以确保数据不会丢失 引入数据备份 定期对数据进行备份 以防止意外数据丢
  • 二. go 常见控制结构实现原理之 select

    目录 一 基础问题 select 与channel select 与 channel 二 实现原理 1 select 底层结构 2 select选择case的执行逻辑 一 基础问题 select是Golang在语言层面提供的多路IO复用的机
  • Vue基础--组件的创建和使用

    一 组件化思想 一个页面中所有的处理概述逻辑全部放在一起 处理起来就会变得非常复杂 不利于后续的管理以及扩展 但是 我们将一个页面逻辑复杂的页面拆分成一个个小的功能块 每个功能块只完成属于自己这部分独立的功能 把大功能拆分成一个个小的功能
  • 51单片机0-9数字LED灯循环输出

    代码 include
  • 703n的OpenWrt配置一:安装和基本设置

    OpenWrt支持的路由可以从官网查到 顺藤摸瓜也可以找到固件的下载地址 如果知道路由器的cpu也可以从这里分类查找路由器型号 对于703n的ar71xx就是点我里面搜索703n找到的那几个文件 挑最小的固件下载 这样可以剩下更多空间安装其
  • 【C++】类的默认成员函数——构造函数、析构函数、拷贝构造函数、赋值运算符重载

    文章目录 一 前言 二 构造函数 1 基本概念 2 初始化列表 3 自动生成的构造函数 三 析构函数 1 基本概念 2 自动生成的析构函数 四 拷贝构造函数 1 基本概念 2 自动生成的拷贝构造函数 五 赋值运算符重载 1 基本概念 2 自
  • 全面剖析PMD静态代码扫描工具

    PMD是使用JavaCC生成解析器来解析源代码并生成AST 抽象语法树 的 这两天对PMD及自定义规则做了调研及实验 部分说明来自官方说明文档 做了大部分参数的详细描述及测试 少数几个参数不明白含义 有了解的朋友欢迎讨论 1 调研对象 pm
  • 如何连接安卓手机到mac并传文件

    平时你有没有需求将文件拖拽到安卓手机文件夹下呢 我最近就需要安装许多插件包到我的手机上 今天就记录下我是如何做这个事情的 本文纯属自己记录自己的学习过程 下面交代下步骤 1 mac端下载HandShaker 2 安装HandShaker包
  • 2.1.cuda驱动API-概述

    目录 前言 1 Driver API概述 2 补充知识 总结 前言 杜老师推出的 tensorRT从零起步高性能部署 课程 之前有看过一遍 但是没有做笔记 很多东西也忘了 这次重新撸一遍 顺便记记笔记 本次课程学习精简 CUDA 教程 Dr
  • git rebase 合并提交与避免分叉合并

    本文让你熟练使用 rebase 学会以下两种操作 从此拒绝杂乱无章的 git 提交 目录 用法一 合并当前分支的多个commit记录 step1 找到想要合并的 commit 使用 rebase i step2 进入 Interact 交互
  • 阮一峰ES6 入门教程

    学习地址 https es6 ruanyifeng com
  • 书单(含资源链接,快撸!)

    撸资源 笨办法 学Python 第3版 https www jianshu com p 67a4827e88a1 Python 编写高质量Python代码的59个有效方法 https pan baidu com s 1vAw1R9bP5EC
  • 计算机视觉毕业后找不到工作怎么办?

    点击上方 视学算法 选择加 星标 置顶 重磅干货 第一时间送达 编辑 Amusi 来源 知乎 https www zhihu com question 335451320 本文仅作为学术分享 如果侵权 会删文处理 计算机视觉毕业后找不到工作