lz大约4-5年经验,目前算法/工程双背景,学历的话属于C9+海外Top30硕,跳槽看重的顺位为:
1. WLB, 最多接受10-8-5;
2. 有具体业务,不倾向于企业的AI Label 研究院等。嗯这年头实验室容易被嘎。
3. 范围锁定在中大厂不容易倒闭。
通过以上条件就把阿里,拼多多,中国字节,小红书,得物等加班太猛的公司筛掉了。
Offer 4家,薪资范围70w-1M:
企鹅厂大模型,工程化方向,4轮面试。
第一面 (30min):
推理引擎的加速Int8量化的方法有哪些?可否介绍下PTQ和QAT的区别?
Transformer的层融合是如何做到的?了解英伟达是如何做层融合的么?
训练一个encoder和decoder有什么区别?谈一谈为何decoder难以加速?
第二面 (1h):
考了一道C++的题目,shared_ptr的一种无法调用析构函数的场景。
QAT量化中,round函数导数是多少?不可导的话是否研究过用某一个函数代替?
如何用CUDA实现一个简单的reduce函数?如果用half2的数据结构是否可以增加吞吐?
Pipeline并行训练,讲一下PipeDream和Gpipe的差别。
第三面 (30min):
数据并行的训练方法与模型并行以及混合并行的区别?
Flash transformer里面的层融合做了哪些事情?
Cuda shared memory 如何使用?在不同的block之间可以共用shared memory么?
谈一谈GPT的训练过程,分为哪三步?(预训练,reward model training,PPO强化学习训练)
第四面 (30min):
大boss 面,谈人生,谈理想
海豚厂,算法方向,3轮面试
第一面(40min):
Transformer encoder 如何训练?学习率如何调节?
评价模型的指标有哪些?PR-AUC和ROC-AUC的区别在哪?
如何做酒店的特征工程?
请你设计一个系统,能够给酒店推荐当晚的酒店价格使得酒店收益最大化。
请你设计一个系统,给酒店排序让平台收益最大化。
第二面,第三面 (30min + 30min)
虽然是谈人生谈理想,印象比较深的一个问题是,如何管理一个12人以上的技术大团队,以及决定他们的绩效之类的,这是问老板的问题啊。
开水厂,工程方向,3轮面试
第一面(1h):
讲一下模型蒸馏中,temperature如何选择?
Cutlass与Cublas有什么区别?
GPU的使用中有哪些使用指标监测?当你发现用GPU跑算法的时候效率低下的时候,有哪些提高的方法?
写题:二叉树层序遍历,leetcode medium. https://leetcode.cn/problems/binary-tree-level-order-traversal/
第二面(1h):
讲一下卷积神经网络如何与BatchNormalization 层融合?
在Transformer里面Residue Network与Layer Norm如何算子融合?
写题: 三数之和,leetcode medium: https://leetcode.cn/problems/1fGaJU/
第三面(1h):
在混合精度训练中,发生溢出时该如何处理?
列举三种矩阵乘法加速的方法?只列举出来了两种。。。
写一个伪代码,如何实现数据并行训练?了解ASGD如何实现异步梯度更新么?
简单聊一下Winograd卷积是如何进行推理加速的?
写题:二分查找法。leetcode找不到原题。有一个升序数组,有可能为正也有可能为负,找到这个数组中距离0最近的数字并且返回。
宇宙条某相对加班少的组,走回流通道,2面搞定,算法岗。
第一面(30min)
最邻近向量搜索有哪些方法?
介绍Swin-Transformer与传统transformer的两大改进(hierarchical layers & shifted window.) 推荐一个视频讲得特别好:https://www.bilibili.com/video/BV13L4y1475U/?spm_id_from=333.337.search-card.all.click&vd_source=51891816787088bfa4034476ce50f05e
多头注意力与单头注意力的区别?
在做广告点击率模型之前,如何验证某个因子与广告点击率是相关的?
一个项目,如何衡量投入产出比?
第二面非技术。
等消息或者挂:3家
理想汽车, 工程岗位
第一面(1h)
介绍一下图像检测的backbone有哪些?有尝试过使用transformer和Darknet做对比么?
PTQ和QAT最大的区别是什么?如何用KL散度去优化Int8量化?
谈一下如何使用混合精度量化?如何确立离群值和非离群值?
在Cuda算子中,假如每次处理33个数,会造成什么影响?(warp size = 32, 相当于要执行两个warp影响性能)
谈一谈Sparse transformer里面的longformer与big bird的差别。
第二面(30min)
为什么layer-norm难以量化?有尝试过改进layer-norm的量化精度损失么
Cuda如何实现流水线作业?(Cuda Stream)
给了一段Cuda代码,问应该在什么地方加入sync操作以保证结果的正确性。(蛤,那段代码找不到了)
等通知,还没挂。
英伟达,深度学习岗
第一面(1h)
Bert的预训练的两种方式?
写出Bert的伪代码。谈谈Bert相对于上一代transformer-encoder有哪些改进?
C++相关:
三种智能指针的区别?
Vector 和 list的区别?
const放在成员函数有什么作用?
Extern关键字的作用?
push_back和Emplace_Back的使用区别?
问答题:如果在单核机器上跑一段代码,用1个线程和用2个线程跑,2个线程还快一些,这是为什么呢?(CPU流水线原理)
Leetcode: 拓扑排序,DFS解决. 找了半天没找到原题,但是不难。
以为答得挺好的,结果第二天收到拒信,不太清楚什么样的大佬可以面过啊。如果有面过的大佬可以私信教教我,还想再投其他岗位冲一把。
特斯拉,NLP岗
第一面(1h), 说实话我一脸懵逼,算法嘛好像也不是算法,工程也不是工程。
用英文进行自我介绍。
Pandas中如何分类统计字符串?
numpy 如何实现在某个dim上面的加和?
Linux如何统计文件大小?
SQL中Left Join, Inner Join, Outer Join的差别?
简单聊一下Vim怎么使用?
在python中,"@"的作用是什么?
太奇怪了,面的都是啥玩意,完全没问NLP啊,transformer都没问。收到了拒信。
总结
今年的行情确实比去年好,心疼22年毕业的学弟学妹。感觉现在的市场行情有几个特点:
1.给面试愿意给,但是要求比以往高了。前几年一个会调参,会用tensorflow的同学可能可以过大厂,今年需要懂业务,懂工程,又懂算法的同学才能通过面试,面的问题比之前要广很多。
2.传统模型开发机会太少,大模型的机会多。有机会的朋友还是要往大模型上面转啊。
3.外企面试的bar特别高。由于各种各样的原因,外企在中国HC少,导致了招聘难度变大,想做算法的同学很难找到一个坑。
祝大家都拿到如意的offer!
#晒一晒我的offer##面经##算法工程师##面试##如何判断面试是否凉了#