现互联网研发一枚,曾拿过多个算法/研发岗SP offer,简要介绍一下大模型算法岗面试内容和如何准备面试。大模型算法岗的面试内容,实际上可以拆解成两部分,一是算法岗通用的面试内容,二是大模型专有相关部分。
![](/i/ll/?i=img_convert/42a3708519979d5bccf9762b3301bfeb.jpeg)
算法岗通用面试内容这部分内容很重要,因为通用的面试内容可以适用于不同的研发岗,包括算法、后端开发、数据开发等等,可以“一稿多用”;此外这部分基础掌握的好,也能给面试官留下基础扎实、高潜力的印象。
通用的面试内容,通常分为个人经历介绍、手撕代码、原理考察、创新性问题几部分。个人经历个人经历主要是自我介绍,接着面试官会根据简历和自我介绍中的项目提问。
因此需要详细准备自己的项目内容,可以用STAR方法整理,即背景是什么,项目的目标是什么,采取了什么行动,最终达成了什么结果。
举个例子:我负责了课题组的风力发电机故障诊断的项目,这个项目背景是风力发电机的运维成本极高(背景),需要对风力发电机故障进行实时诊断和提前预警(项目目标),因此利用了风力发电机100w+传感器数据,应用ResNet方法构建了风力发电机的故障诊断模型(行动),最终实现了提前预警,诊断精度提升了x%,发表了一篇一作SCI论文(结果)。
这样,面试官就会问关于项目的详细内容,例如如何提取故障特征,为什么使用ResNet,ResNet的原理是什么等等问题。
因此有必要准备一个自己非常熟悉的项目,把算法的原理、项目流程(数据预处理、特征选择、模型和数据)烂熟于心。
手撕代码第一部分项目介绍结束后,面试官会给1~2道算法题让面试者完成,来考察面试者的基本功。因此有必要多刷一些力扣题(leetcode),至少刷完力扣hot 100题。力扣100题基本上是各企业面试常考的题。要做到快速手撕代码,在刷题之前,也要熟悉基本的算法和数据结构。
例如数组、链表、堆、栈、队列、树、图等数据结构;以及排序算法(快速排序、归并排序、二分搜索)、搜索算法(深度优先搜索、广度优先搜索等;还要学会分析代码的时间复杂度和空间复杂度、优化代码。
一般手撕代码写不出来的话,可以先考虑写一个暴力解,再去思考如何优化。当然有些很硬核的公司(例如Optiver,NVIDIA等外资),可能不仅局限于把力扣上的题写出来,还会涉及用代码实现一个底层逻辑(例如实现一个卷积核)。原理考察这部分仍然是看基础。
例如对于深度学习、自然语言处理、大模型的算法工程师,可能就会问例如反向传播算法的原理、ResNet、Transformer的原理;对于风控算法工程师,则会考察如LightGBM、Xgboost和随机森林算法的原理。可以结合岗位JD来看自己需重点准备哪些机器学习算法的原理。
当然在手撕代码环节没有考察到的数据结构和算法,也可能被问到,例如快速排序、堆排序算法的原理。创新性问题这类问题就比较发散了,重点是看面试者在解决方案未知下的思考能力,一般会结合业务给一个问题。例如,对于风控算法面试,会提问如何基于数据构建一个好的风控模型,如果没有人行征信数据,又怎么构建好的风控模型?
大模型专有面试内容专有面试内容则包含了大模型的相关的知识,依据个人项目的相关性会给出不同的问题。个人经历如果个人经历中有大模型相关的项目,那么就会问项目细节。和上面通用的问题一样,需要应用STAR法则来梳理,并且熟悉项目中应用的算法原理。
未来可以不从事相关方向的工作,但紧跟时代前沿技术总是没有错的,说不定就赶上了新时代的风口~手撕代码这个环节和上面一样,但硬核的公司可能会要写一些模型底层的逻辑,例如用代码实现Encoder和Decoder。原理考察这里重点考察自然语言模型、深度学习模型、大语言模型相关的原理。例如Transformer的原理、Bert等自然语言模型的原理、ChatGPT的原理。可以通过岗位的JD来了解我们需要掌握什么内容。例如这是我在boss直聘上找到的JD。这里要求熟悉CNN、LSTM、BERT、GPT的原理,就可以从这几个知识点来准备。创新性问题这部分问题会结合应用场景和大模型来提问,例如公司需要一个医疗客服机器人,那么说说如何用大模型实现的思路。如何准备大模型算法岗面试1.打好基础1)熟悉基本的数据结构和算法,刷力扣题目。2)结合岗位JD学习所需要的深度学习模型、自然语言模型和大语言模型的原理、关键概念3)尽量尝试记住它的代码实现(不是必要)2.理论结合实践1)参加一些大模型相关的项目和竞赛,利用大模型技术解决实际问题。2)如果没有条件参加大模型相关的项目,也可以去Kaggle、Github等网站上找一些开源的项目来学习,熟悉项目内容。3)充分熟悉自己的项目,并思考如何用类似的流程来解决一些行业内的问题(创新型问题)。
如何学习AI大模型?
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。