首页 > 其他分享 >做大模型一年半,经历了无数场面试。

做大模型一年半,经历了无数场面试。

时间:2024-10-30 20:47:26浏览次数:7  
标签:论文 训练 AI 无数场 模型 做大 面试 经验 候选人

做大模型一年半,经历了无数场面试。

经验

我最常听到的候选人(尤其是学生)的说辞是:我没有大模型经验,可以给个机会吗?

答案是,我们并不看重候选人的大模型训练经验。这里不是说经验不重要,而是大部分人的经验没有意义。只有头部大模型公司的核心骨干的经验才有意义,而这和绝大多数人选无关(e.g.: 校招/实习常见的简历是微调 LLaMA 7B,社招常见的简历是各个公司自己的 XX 大模型)。

事实上,平平无奇的大模型经验反而是扣分项。候选人说自己有大模型训练经验,我会问:你说你有千卡训练 XX B 模型的经验,用的是什么并行配置,DP/PP/TP 如何划分?很多时候,我得到的回答是:我不知道。甚至有时候,候选人会问我,什么是 DP,我实在是无言以对。做 CV 的候选人还能背两句 DP 和 DDP 区别的八股,做 NLP 的候选人,在最需要并行的研究领域,却完全不知道 DP 是什么。类似地,如果候选人做过大模型训练,却不知道什么是 MFU,不知道 Megatron 启动的命令行参数含义是什么[1]……都属于负分经历。

论文

现在不比以前,很多人都有顶会论文。就像大家日常吐槽的一样,90% 的论文都是废纸。特别亮眼的文章自然是加分项,例如 PEFT(Parameter-Efficient Fine-Tuning)方向,最近的 LoRA-GA 和 LoRA-pro 都是不错的文章,但大部分改网络结构讲故事的普通论文是不加分的。如果你有论文,那么说明你经过了基本的科研训练,仅此而已。MSRA 之前招聘实习生有时甚至还会倾向于招聘没做过科研的白纸,因为怕之前短平快的科研经历把候选人的品味带歪了,掰不过来。

除了经验和论文,还能看什么

用一个词来概括,是潜力。潜力这个词太虚,这里换成两个词来描述:基础、好奇心。

什么是基础?对于学生来说,首要的自然是学习。学校背景如何、专业课成绩如何、基础知识是否扎实?面试时遇到学生,经常碰到的尴尬场面是:问数学题(高数/线代/概统),答曰大一学的忘了;问编程题(leetcode easy/medium 难度),答曰没刷题写不了;问模型结构(指 LLaMA),答曰平常都是调 ChatGPT API,不清楚。相当一部分候选人是答不上来 transformer 模型结构的——一半人承认自己不清楚细节,另一半人里 90% 是自以为自己知道、但实际不知道。

大部分科研人的代码能力孱弱到只会调 ChatGPT API,或者改改 torch.nn.Module,或者调用开源框架跑跑 SFT/RLHF。分不清楚进程和线程,操作系统背完就忘;编程语言只会一些最基本的 Python,其他语言一概不通。是的,我知道这不影响你发论文,不影响你毕业,git clone 一下开源代码改两行就能满足你的需求嘛。但是,如果你想做改变世界的研究呢?例如,穿越回 2016 年,你想到了 AlphaGo 的 idea,给你足够的计算资源,你有信心自己动手实现它吗?

什么是好奇心?没有大模型经验没关系,但是你愿意主动去了解吗?你会去主动读大模型的论文吗?可惜很多候选人不去读。甚至别说读论文,有些想转行大模型的人连大模型用都不用一下。ChatGPT 能解决什么问题、不能解决什么问题?它的能力边界在哪里?一问一个不知道。有时候跟一些候选人保持联系了几个月,但是对方对大模型的了解在几个月的时间里没有任何长进,实在是令人惋惜。如果没机会训练 100B 以上的模型,甚至没有机会训练 7B 的模型,你愿意去下载和分析别人训好的 7B 乃至 1B 的模型,看看里面权重分布的规律吗?如果有这个细腻的心思,可能你在模型量化方面已经做出了很好的工作。

也有时候,基础和好奇心可以互补。例如模型训练刚开始时的 loss 大约是多少?如果数学基础扎实,那么可以做一些合理的假设推导出来;如果好奇心强,会注意观察每一个细节,也能答对这道题。

最后,再介绍一些比普普通通的大模型训练经验和论文更加分的经历的具体例子:

A. 在两张 2080Ti 上实现和比较过不同的流水算法的性能;

B. 用 Triton 自己实现过一些算子;

C. 能讲出不同的大模型使用的 tokenizer 的差异;

D. 在 Python 以外的语言上有不错的开发能力(例如某些开源项目背书);

E. 实现过一个效果拔群的五子棋 AI(最好是 RL 算法)。

参考

  1. ^这里指候选人说自己用 Megatron 训练,但是是组里的师兄/公司的导师给了自己一条启动命令,但是自己不知道每个参数的含义的情况。

 

 大模型&AI产品经理如何学习

求大家的点赞和收藏,我花2万买的大模型学习资料免费共享给你们,来看看有哪些东西。

1.学习路线图

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。


2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己整理的大模型视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

(都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要点击下方图片前往获取

3.技术文档和电子书 

这里主要整理了大模型相关PDF书籍、行业报告、文档,有几百本,都是目前行业最新的。



4.LLM面试题和面经合集


这里主要整理了行业目前最新的大模型面试题和各种大厂offer面经合集。



标签:论文,训练,AI,无数场,模型,做大,面试,经验,候选人
From: https://blog.csdn.net/2401_85390073/article/details/143374773

相关文章

  • Java面试题中高级进阶(JVM篇01)
    前言本来想着给自己放松一下,刷刷博客,突然被几道面试题难倒!说说堆和栈的区别?什么时候会触发FullGC?什么是Java虚拟机?似乎有点模糊了,那就大概看一下面试题吧。好记性不如烂键盘***12万字的java面试题整理***说说堆和栈的区别栈是运行时单位,代表着逻辑,内含基本数据类型和......
  • Java面试题中高级进阶(JVM篇01)
    前言本来想着给自己放松一下,刷刷博客,突然被几道面试题难倒!说说堆和栈的区别?什么时候会触发FullGC?什么是Java虚拟机?似乎有点模糊了,那就大概看一下面试题吧。好记性不如烂键盘***12万字的java面试题整理***说说堆和栈的区别栈是运行时单位,代表着逻辑,内含基本数据类型和堆中对......
  • Spring Boot 20道面试题
    +目录1.什么是SpringBoot?2.SpringBoot的主要优点是什么?3.SpringBoot的核心注解是哪个?它有什么作用?4.SpringBoot如何加载外部配置文件?5.SpringBoot如何实现跨域请求?6.SpringBoot的热部署是如何实现的?7.SpringBoot如何配置多数据源?8.SpringBoot中如何实现AOP?9.Spr......
  • MySQL存储引擎——针对实习面试
    目录MySQL支持哪些存储引擎?MySQL存储引擎架构了解嘛?MyISAM和InnoDB有什么区别?MyISAM和InnoDB如何选择?如何查看表的存储引擎?如何修改表的存储引擎?MySQL支持哪些存储引擎?MySQL支持多种存储引擎,包括InnoDB、MyISAM、MEMORY、ARCHIVE、BLACKHOLE、FEDERATED、NDBCluste......
  • html和css面试题
    1:主流浏览器的内核分别是什么?IE:trident内核 [‘traidnt]Firefox:gecko内核 [ˈɡekəʊ]Safari:webkit内核Chrome,Opera:Blink内核(基于webkit) 2:每个HTML文件开头都有<!DOCTYPE html>,它的作用是什么<!DOCTYPEhtml>声明位于文档中的最前面的位置,此标签告知浏......
  • 力扣面试题 _ 1393
    .-力扣(LeetCode)1.目标        编写解决方案报告每只股票的 资本损益。        股票的 资本利得/损失 是指一次或多次买卖该股票后的总收益或损失。        以 任意顺序 返回结果表。2.分析3.实现selectstock_name,sum(cas......
  • 前端面试题整合(有html、css、js、vue等)
    #一、html#行内外空元素行内元素:a/img/span/b/strong/input/select/section块级元素:div/p/table/ul/li/h1-h6空元素:br/hr/img/input/link/meta#浏览器内核Trident:IE,360,搜狗Gecko:FirefoxPresto:旧OperaWebkit:Safari,旧ChromeBlink:Chrome,Opera#浏览器存储c......
  • kerberos认证(面试)
    kerberos认证主要用来解决身份认证的问题,避免非法用户去操作我们kafka里面的数据。kerberos它是一个服务,是需要我们搭建的。AD:主要用来存储用户名和密码、秘钥、包括用户所有的一些权限。KDC里面包含两个角色。用户鉴权流程:首先客户端通过用户名、密码或者是keytab(秘钥)来访......
  • 【GiraKoo】面试者如何忽悠一个不懂技术的面试官
    萌新面试者如何忽悠一个不懂技术的面试官由于公司业务需要,做了几天Android的面试官。作为一个完全没有做过Android项目的开发者,我无法问出具体的框架,技术细节。对于萌新,新公司,新业务往往公司无法派出一个技术大牛来面试一个萌新。很多情况下,是其他搞技术的人,或者项目经理直接......
  • 面试总结-技术罗列
    1、JVM原理及优化:JVM调优:https://www.cnblogs.com/stubborn-dude/p/15522475.html【GC收集器】和【内存分配与回收的策略】:https://www.cnblogs.com/stubborn-dude/p/14889157.htmljvm总结:https://www.cnblogs.com/stubborn-dude/p/14707682.html2、分布式事务:https://zhuan......