@techNmak: https://x.com/techNmak/status/2064388143781130421
摘要
一份面向2026年AI/ML工程师面试的全面两篇指南,涵盖经典机器学习、大语言模型、微调、检索增强生成、智能体以及生产系统,强调需同时准备传统与现代主题。
查看缓存全文
缓存时间: 2026/06/10 11:50
2026年AI/ML工程师面试指南 - 第一部分
AI/ML面试已经变了。
几年前,许多候选人可以通过复习监督学习、推荐系统、模型评估和一些深度学习基础知识来准备。
这已经不够了。
现代AI/ML岗位现在涵盖了几个相互重叠的领域:
-
经典机器学习和统计学
-
LLM和多模态模型基础
-
微调和后训练
-
RAG、智能体和应用架构
-
评估、安全、可靠性和可观测性
-
推理基础设施、延迟和成本
许多候选人犯的错误是只准备最新的主题。
他们学习RAG、智能体、嵌入、提示词工程和微调,但忘记了高强度的面试环节可能仍然会考察偏差-方差、梯度提升、类别不平衡、校准、实验和数据泄露。
相反的错误也很常见。
一些候选人精通传统ML,但在被问及分词、长上下文模型、多模态架构、偏好优化或提示词工程与微调之间的权衡时,会感到吃力。
这本两部分的指南涵盖了双方。第一部分涵盖模型如何构建、训练和适配。第二部分涵盖围绕它们的生产系统——RAG、智能体、评估、安全、基础设施和系统设计。
第一部分聚焦于模型、数据和训练:
-
经典机器学习
-
统计与实验
-
校准
-
LLM基础
-
多模态系统
-
微调和后训练
-
提示词工程与上下文工程
第二部分聚焦于周围系统:
-
RAG
-
智能体
-
评估
-
测试时计算
-
安全
-
LLMOps
-
推理基础设施
-
ML系统设计
然而,在深入研究单个概念之前,有一个区别很关键:
首先,确定实际角色
“AI/ML工程师”现在范围太广,无法描述一种面试形式。
在准备之前,确定头衔背后的实际工作。
一位经典ML工程师可能会被考察监督学习、排序、推荐系统、欺诈检测、特征工程、监控和ML系统设计。
一位应用科学家可能会面临关于统计学、实验、建模假设、因果推理、指标设计和研究判断的更深入问题。
一位LLM应用工程师可能会被考察提示词工程、上下文工程、RAG、评估、模型路由、延迟、成本和生产故障模式。
一位智能体工程师可能会被考察工具使用、编排、记忆、规划、终止、权限、护栏和可观测性。
一位多模态工程师可能需要理解视觉-语言模型、图像-文本检索、文档AI、音频、视频、视觉定位和多模态微调。
一位ML基础设施或推理工程师可能会被考察服务系统、批处理、缓存、量化、GPU、分布式训练、模型部署和可靠性。
一位研究工程师可能需要在架构、训练流程、微调、后训练、评估设计和实现细节方面有更深的理解。
最优秀的候选人不会从同一个角度回答所有问题。
他们首先会理解被要求构建的是什么样的系统。
经典机器学习
偏差与方差
LLMs并没有让经典ML从面试中消失。
许多生产问题仍然是分类、排序、回归、预测、检索、异常检测或推荐问题。
你应该能够清晰解释偏差-方差权衡。
高偏差通常意味着模型过于简单或欠拟合。它在训练和验证数据上表现都差。
可能的修复方法包括:
-
更好的特征
-
更具表达力的模型
-
减少正则化
-
改进优化
-
更多相关的训练信号
高方差通常意味着模型学到了无法泛化的模式。它在训练数据上表现良好,但在验证数据上表现差。
可能的修复方法包括:
-
更强的正则化
-
更简单的模型
-
更具代表性的数据
-
更好的验证集划分
-
早停法
-
集成
-
移除易导致泄露的特征
重点在于,欠拟合和过拟合需要不同的干预措施。
随机森林 vs 梯度提升树
随机森林使用自助采样和随机特征子集独立训练许多棵树,然后通过平均或多数投票聚合它们的预测。
它们通常鲁棒性较强,相对容易调优,对单个噪声观测不那么敏感。
梯度提升顺序地训练树,每棵树都旨在减少当前集成模型的损失。对于平方误差回归,这意味着直接拟合残差;对于其他损失函数,意味着拟合伪残差,即损失函数的负梯度。
提升树在结构化数据和表格数据上通常表现极好,但可能在以下情况下过拟合:
-
树太深
-
学习率太高
-
使用了过多的提升轮次
-
记住了稀有的类别标识符
-
验证集与生产环境不匹配
-
通过工程化特征引入泄露
一个强有力的回答不能简单地说:
使用 XGBoost。
它应该解释为什么该模型适合数据、延迟约束、特征类型和预期的故障模式。
经典的过拟合场景
一个常见的面试问题如下:
你训练了一个点击率预测模型。 训练集AUC:0.93 验证集AUC:0.78
最大的差距出现在稀有的类别ID上,例如 campaign_id。
你会怎么做?
一个较弱的回答会说:
添加正则化。
这可能有帮助,但这并非诊断。
一个更强的回答会系统地进行。
1. 检查数据划分 对于CTR、欺诈、广告和推荐系统,随机划分训练验证集可能会将未来行为泄露到过去。
基于时间的数据划分通常更符合实际。
你还应该检查相同的用户、活动、产品或会话是否以某种方式同时出现在两个数据集中,使得验证变得人为地容易。
2. 检查泄露 高基数的类别特征可能会记忆标签,尤其是当目标编码计算不正确时。
目标编码应使用折叠外或时间感知的计算,进行平滑处理,并仔细处理稀有和未见过的类别。
3. 检查稀有类别 稀有的ID会产生不稳定的估计。
可能的处理方式包括:
-
最低频率阈值
-
哈希
-
平滑
-
将稀有类别分组
-
正则化嵌入
-
移除不具泛化性的标识符
4. 调整复杂度 对于提升树,可能的修改包括:
-
更浅的树
-
更强的叶子节点最小样本约束
-
更低的学习率
-
行和列的子采样
-
早停法
-
更强的L1或L2正则化
5. 验证真实信号仍然存在 进行特征消融实验,按分段比较性能,检查校准情况,并在现实的留出集上进行测试。
重要的不是确切的超参数。
而是展示你能区分:
-
记忆化
-
泄露
-
验证集不匹配
-
分布漂移
-
真实的预测信号
类别不平衡与操作阈值
类别不平衡是很容易给出自信但错误答案的地方之一。
如果欺诈发生在0.1%的交易中,一个总是预测“非欺诈”的模型可以看起来有99.9%的准确率,同时捕获不到任何欺诈。
这并不意味着ROC-AUC没有意义。
ROC-AUC衡量的是跨阈值的排序质量。但在高度不平衡的设置中,它可能无法揭示在业务实际使用的阈值下的性能。
对于罕见事件检测,你应该理解:
-
精确率
-
召回率
-
PR-AUC
-
F-beta值
-
假阳性成本
-
假阴性成本
-
校准
-
阈值选择
-
审核团队容量
-
分段性能
一个好的回答不会盲目地说“最大化召回率”。
如果每个假阳性都会触发手动调查,那么运营容量就很重要。
如果每个假阴性代价高昂或危险,那么只优化精确率也是错误的。
正确的操作点取决于故障成本和业务约束。
校准与可靠的概率
分类系统通常使用概率,而不仅仅是标签。
当一个模型的置信度与观察到的结果相匹配时,该模型就是校准的。
如果一个校准良好的模型给大量案例分配0.8的概率,那么这些案例中大约80%应该是正例。
校准不同于区分能力。
一个模型可以将正例排在负例之上,从而实现强大的ROC-AUC,但同时产生不可靠的概率。
例如,它可能给仅有70%概率发生的事件分配0.95的置信度。
这种区别在以下方面很重要:
-
欺诈检测
-
医疗风险预测
-
信用评分
-
保险
-
预测
-
人工审核优先级排序
-
任何概率影响资源分配的系统
你应该理解:
-
可靠性图
-
Brier分数
-
对数损失
-
期望校准误差
-
过度自信和信心不足
-
阈值选择
-
子组校准
-
分布漂移下的校准
可靠性图比较预测置信度与观察到的频率。
Brier分数衡量预测概率与二元结果之间的平方误差。
对数损失强烈惩罚高置信度的错误预测。它反映了概率质量,但由于它也依赖于区分能力,所以它不是一个纯粹的校准指标。
期望校准误差(ECE)汇总了跨区间的置信度与观察准确率之间的差距。
ECE很有用,但它不是决定性的。它的值取决于分箱方法,并且一个单一的聚合数字可能会掩盖重要子组中严重的校准不良。
常见的后验校准方法包括:
-
温度缩放
-
Platt缩放
-
保序回归
温度缩放学习一个标量调整项应用于logits。
Platt缩放拟合一个从分数到概率的逻辑映射。
保序回归学习一个灵活的单调映射,但可能在校准数据有限时过拟合。
校准应在与部署环境相似的数据上进行测量。
一个在其原始测试集上校准的模型,在以下方面发生变化后可能会变得校准不良:
-
类别流行率
-
地理位置
-
用户行为
-
传感器
-
数据管道
-
时间
一个强有力的面试回答会区分三个问题:
-
模型能正确地对案例进行排序吗?
-
它的概率可靠吗?
-
所选择的阈值是否能产生可接受的结果?
这些是相关的,但它们是不同的问题。
特征工程与泄露
特征工程仍然很重要,尤其是在表格数据的机器学习中。
你应该理解:
-
高基数类别特征
-
缺失值
-
时间特征
-
历史聚合
-
滚动窗口
-
时间点正确性
-
训练-服务一致性
目标编码是一个常见的面试陷阱。
如果在划分之前就使用整个数据集的标签统计信息对类别进行编码,那么验证样本的信息就会泄露到训练特征中。
模型可能在离线看起来很好,但在生产中失败。
更安全的设计使用:
-
折叠外编码
-
时间感知编码
-
平滑
-
裁剪
-
对未见过的类别进行单独处理
同样的原则适用于用户级别聚合、转化率、欺诈历史和滚动特征。
只有当一个特征在预测时是可用的,它才是有效的。
统计与实验
一个优秀的AI/ML候选人应该知道如何判断一个改变是否真的有效。
你应该能自如地讨论:
-
置信区间
-
假设检验
-
A/B测试
-
统计功效
-
样本量
-
p值及其局限性
-
多重检验
-
辛普森悖论
-
选择偏差
-
离线与在线指标不匹配
-
新奇效应
-
护栏指标
-
因果推理
最好的离线模型并不总是一个好的产品模型。
一个排序模型可能会改进离线NDCG,同时降低用户满意度。
一个支持机器人可能会提高问题解决率,同时增加投诉量。
一个欺诈模型可能会提高召回率,同时让调查人员不堪重负。
面试官通常更关心的是你是否知道某个指标何时可能误导你,而不是你是否能背诵其定义。
置信区间表达了对一个估算量的不确定性。它并不意味着对于一个已经计算出的频率学派区间,固定的总体参数有95%的概率落在这个区间内。
p值不是零假设为真的概率。它衡量的是观察到的数据(或更极端的数据)与假设的空模型不相容的程度。
统计功效是当特定大小的效应存在时检测到该效应的概率。它取决于效应大小、样本量、方差、显著性阈值和实验设计。一个功效不足的实验可能会错过一个有用的改变;而反复测试许多指标可能会产生假阳性,除非团队预先定义主要结果或为多重比较进行调整。
以上是经典ML和统计学概念的可视化回顾:
LLM基础
分词
现代LLMs通常使用子词或字节级分词。
较小的词表会带来:
-
更长的序列
-
更多的碎片化表示
-
相同文本的更高注意力成本
较大的词表可以改善压缩,但会增加:
-
嵌入表大小
-
输出层大小
-
内存需求
-
很少使用的token数量
一个小的词表不一定频繁导致词表外失败。
子词和字节级分词器旨在通过将稀有文本分解成更小的单元来表示它们。
分词还会影响:
-
多语言性能
-
代码理解
-
算术能力
-
上下文使用
-
成本
-
延迟
一个模型可能需要更多的token来表示一种语言中的同一句话,相比于另一种语言。
自注意力与FlashAttention
标准自注意力将序列中的每个token与其他每个token进行比较。
这导致注意力得分矩阵随着序列长度呈二次方增长。
稀疏和线性注意力变体减少了或近似了这些交互。
FlashAttention解决了一个不同的问题。
它保持精确的注意力,但通过减少GPU内存层级之间昂贵的数据移动来提高速度和内存效率。
因此,FlashAttention改进了注意力的实际实现。
它并没有将标准的密集注意力变成线性时间算法。
位置编码、RoPE与长上下文
绝对位置嵌入为每个token位置分配一个学习的或固定的表示。
RoPE(旋转位置编码)对query和key向量应用与位置相关的旋转。
这些旋转向量之间的相互作用为注意力提供了一种有用的相对位置行为形式。
这是RoPE在仅解码器LLMs中变得常见的原因之一。
但RoPE并不能自动提供可靠的无限制上下文。
在一个上下文长度上训练的模型,当被推到远远超出该范围时,可能会退化。
问题不仅仅在于API是否接受更多token。
模型还必须:
-
检索远程信息
-
比较分离的证据
-
跟踪实体
-
理解顺序
-
跨长距离推理
-
避免忽略上下文的中间部分
诸如位置插值、YaRN、LongRoPE、熵感知ABF和其他RoPE缩放方法等方法可以扩展或调整位置行为。
长上下文质量还取决于:
-
训练或微调数据
-
注意力实现
-
位置缩放方法
-
上下文打包
-
检索策略
-
评估设计
-
模型实际利用远程证据的能力
上下文窗口
相似文章
@ConsciousRide: 2026年AI工程面试中90%的问题都围绕以下7点。1. LLM基础:分词、Transformer与...
一条Twitter帖子概述了2026年AI工程面试中占据主导地位的七个关键领域,包括LLM基础、RAG系统、智能体工作流、推理优化、评估、MLOps以及生产实践。
@_vmlops: AI工程面试涵盖的内容远不止机器学习理论 这个GitHub仓库是一个很好的速查表,涵盖:• LLMs & Tr…
这个GitHub仓库为AI工程面试提供了一个全面的速查表,涵盖诸如LLMs、RAG、微调和AI安全等主题。
@dkare1009: 大多数AI工程师从零散的博客文章和过时的教程中学习。一本指南书刚刚将一切整合在一起。T…
一本新的综合性AI工程指南书整合了关于LLM基础、微调、RAG、智能体系统和部署的知识,旨在帮助工程师构建可投产的AI系统。
@_vmlops:AI工程师系统设计面试指南
一本旨在帮助AI工程师准备系统设计面试的指南。
@DeRonin_: 作为2026年的人工智能工程师,请学习这一点:> 系统性输出阅读。在1000个模型响应中进行模式识别是……
一位资深AI工程师分享了2026年需要掌握的关键技能,包括:系统性输出阅读、上下文工程、工具描述规范、评估设计、模型路由、提示版本管理、置信度评分、流式响应架构、回退链、延迟预算、故障分类、代理与工作流决策,以及将故障复盘作为作品集内容。