算法、推理、部署,面了40多个大佬的感想

今年三月份到现在陆陆续续面了40来个人,有实习生,有校招生,也有来社招的大佬们。面了挺久,有些总结和感想,发出来和大家交流交流,也趁着这个机会为之后参与校招的同学提供一些学习方向。

我面的岗位主要是算法工程师,也会面试一些推理相关的人。

简单从这三点说:

  • 对候选者的要求

  • 大家的水平

  • 未来的看法

技术交流

技术要学会分享、交流,不建议闭门造车。一个人走的很快、一堆人可以走的更远。

资料、数据、技术交流提升, 均可加知识星球交流群获取,群友已超过2000人,添加时切记的备注方式为:来源+兴趣方向,方便找到志同道合的朋友。

方式①、添加微信号:mlc2060,备注:加群
方式②、微信搜索公众号:机器学习社区,后台回复:加群

实习生

第一个是招实习生,实习生的简历,大家的学校感觉都不错,北邮、北航、东南大学、厦门大学、大连理工、西交西电等等,项目做的也都很多,有发表过一些顶会的也有其他不错期刊的。也有同时在其他公司实习的,这种有公司实习经历的同学我们肯定是优先考虑,毕竟在公司实习能有个完整的项目啥的,而且ssh、git、docker一些常用工具也都会用。

图片

不过实习生的话,公司要求没有校招高,只要有对口的项目,代码能力过关,来了我们都愿意培养,一起搞个项目,学生嘛,学习起来很快,上手新项目多带带很容易就会了。重点说下代码能力必须要过关,你项目不多不要紧,你来了可以学,代码能力不行就会怀疑你项目是咋做的有没有自己亲自动手做的。

还有一个是要求实习生对基础理解的比较好些,项目虽然可以不用太多,但是你做过的项目细节,自己必须要清楚,深入问的时候能够回答上来,比如一个BN层,训练和推理有哪些表现不一样,有哪些参数需要更新等等,这些细节面试的时候大部分人都说不全,不能一次性说对。

总结下对实习生的要求:

  • 项目可以不多,但是要精

  • 基础知识要好

  • 代码能力过关

就OK了,至于方向的话,只要是和算法CV相关就行。

校招生

校招生要求会高一些,校招生的学校和实习生没区别,也都挺好,不过看简历项目明显多了一些(最起码暑假阶段找了个实习,然后秋招面试的时候可以写上去),对于校招生来说,除了基础知识外,更要看项目是否匹配啥的。

因为现在深度学习算法咋说也火了好多年了,从神仙打架到诸神黄昏了。到现在简历上搞一些什么使用unet训练一个分割网络实现某个任务,或者说使用yolov7检测某个目标已经不是什么亮点了。不过这种也不是不行,但你需要更多的深度我才会感兴趣:

  • 网络结构有无值得说明的改进

  • 为什么这样做可以明确说出原因和数据证明

  • 对使用这个方法以及和其他方法做过比较详细的对比,选择这个模型是有理由的

现在是大模型和多模态的时代,大模型确实在很多场景上都应用的挺好而且都能落地,比如chatgpt以及基于llama的各种开源模型在各种场景上的应用,隔几天就能出一个大模型、隔几天刷一次榜;多模态的话,gpt4已经可以看图生图了(gpt-plus用户可以体验),而且效果也比较惊艳,这种多模态潜力还是很大的,有很多开源的项目可以借鉴:

  • https://github.com/QwenLM/Qwen

  • https://github.com/IDEA-Research/GroundingDINO

  • https://github.com/Vision-CAIR/MiniGPT-4

因此也希望校招生有多模态相关的项目(实话实说,多模态和大模型对显卡的要求比普通项目更高,确实在学生时代搞还是挺难…),多模态,和CV结合再和NLP结合,都能搞出不错的项目。

图片

比较简单点的多模态可以尝试下grounding dino,对于稍稍的大模型+目标检测来说是一个不错的点子:

图片

话说回来,在面试今年算法校招生的时候,就更想要一些偏多模态,

至于部署工程方面,我也看到很多校招生有一些工程的项目,比如使用C++写个模型的前后处理,比如剪枝量化啥的,不过感觉都不是很深,比如关于剪枝的细节,问具体剪的是哪?剪网络层?剪通道?还是剪kernel,回答的都不是很清楚,还有量化,因为现在很多库对量化支持的很好,大家普遍调用一下API看到结果好就好了,也没有看细节,这个一问就问出来了(比如trt的量化,有api可以直接量化)。这些部署可以搞得再细一点,不过这些童鞋在大家都一样的基础上,你再会C++、再会一些部署方向的东西,比只会写python算法的肯定要强些。

推理相关

推理面了一些校招以及一些社招,大家的方向大概是这几种:

  • 搞上层编译器的(类似于torch-tensorrt的利用pytorch生态和TensorRT生态的在nvidia显卡加速的编译器,不需要自己写codegen),会针对不同的后端(比如onnx和torchscript)写parser,针对计算图写一些pass;也有搞基于MLIR的编译器的,在自己的公司硬件上跑,前端中端后端需要都搞

  • 搞推理框架的,就是优化训练和部署中的一些性能问题、精度溢出问题;有些公司喜欢搞统一的框架(训练和部署都解决了),不喜欢用现有的轮子,要自己造;对于加速类的推理框架,会实现比如模拟量化功能、精度对比功能等等

  • 搞加速的,就是对任务中各种瓶颈的算子进行加速,C++转cuda,python转c++等等,使用C++封装一些项目blabla

有些社招的大佬做的比较深,细节说的比较好,也对新的技术(比如新显卡hopper架构)有探索的热情(面试过一些35+的大佬,热血激情不分年龄),在多个大厂待过,很强。

图片

也有一些优秀的校招生,项目优化op的细节都能答上来,加分~也有几个校招生不清楚项目为啥要这么做,问则答曰领导要求的,问有没有自己的想法,回答的也不是很好,这种是比较降分的。

感想

预计明年的热点还是大模型和多模态,而部署加速一直有需求。问了面试的算法校招生,说今年难度也挺大,有好学校的秋招过了国庆目前只有一个offer。

还有因为大模型,一开始各个厂抢大模型加速的人才比较剧烈,不过现在应该好多了。

其余一些想说的:

  • 面了不少寒武纪和百度的大佬

  • 有工作7、8年的大佬,在多个大厂待过然后目前在创业公司

  • 也有离职(自己原因、公司原因)待业的大佬

环境依然不是很乐观,之后一起加油!


http://www.niftyadmin.cn/n/5098217.html

相关文章

2023 年值得关注的软件测试趋势(2)

8.无脚本自动化对测试环境的影响 无脚本自动化测试正成为软件测试趋势中越来越受欢迎的选择,因为它消除了软件测试中对脚本和编码的需求。它旨在简化和简化测试过程,使组织更容易执行自动化测试,而无需专门的技术技能。 它是通过使用允许测试…

flask实战(问答平台)

问答平台项目结构搭建 先创建一个配置文件config.py,后面有些配置写在这里 #app.py from flask import Flask import configapp Flask(__name__) #绑定配置文件 app.config.from_object(config)app.route(/) def hello_world(): # put applications code herer…

【配置环境】SQLite数据库安装和编译以及VS下C++访问SQLite数据库

一,环境 Windows 11 家庭中文版,64 位操作系统, 基于 x64 的处理器SQLite - 3.43.2Microsoft Visual Studio Community 2022 (64 位) - Current 版本 17.5.3 二,SQLite简介 简要介绍 SQLite(Structured Query Language for Lite&a…

SM5308 是一款集成升压转换器、锂电池充电管理、电池电量指示的多功能电源管理SOC

2.1A 充电 2.4 A 放电高集成度移动电源 SOC 简介: SM5308 是一款集成升压转换器、锂电池充电管理、电池电量指示的多功能电源管理 SOC,为移动电源提供完整的电源解决方案。SM5308 的高集成度与丰富功能,使其在应用时仅需极少的外围器件,并有效减小整体…

“升级是找死,不升级是等死”,GitLab CE 的痛苦升级之路

编者按:本文转载自公众号运维识堂,已经联系作者取得转载授权。 GitLab 在发展的十余年中,在国内积累了大量的 CE 用户,但是很多 CE 用户并不会跟随 GitLab 的发版节奏(月度发版)进行版本升级,在…

在数据库插入万条数据,比普通插入提升百倍速度

在数据库插入万条数据,比普通插入提升百倍速度 JDBC中通过普通方法插入一万条数据 /*** 普通方法插入10000条数据* throws Exception*/Testpublic void testInsert() throws Exception {//注册驱动Class.forName("com.mysql.cj.jdbc.Driver");//获取连接C…

uCOSIII实时操作系统 八 软件定时器

目录 软件定时器概述 使用步骤: 创建软件定时器: 启动软件定时器: 停止软件定时器: 删除软件定时器: 单次定时器: ​编辑周期定时器: 无初始化延时: 有初始化延时&#xff…

基于C8051F380的流水灯设计

一、C8051F380简介: C8051F380-GQ 是Silicon Labs的一款高度集成的汽车和工业微控制器 MCU。C8051F380的CPU内核为8051,内核规格: 8 位 , 速度: 48 MIPS ; CPU最大主频:192MHz ;工作电压范围:2.7V~5.25V &a…