华为校招&实习机试在线OJ刷题系统 | 在线OJ注册使用教程
1、视觉骨干网络里,某一层卷积输出特征图的通道数通常由什么决定?
A. 输入特征的通道数
B. 卷积核的空间尺寸
C. 该层卷积核的个数
D. 卷积的步长
2、下列激活函数中,值域为开区间 (0, 1) 的是哪一个?
A. Leaky ReLU
B. Sigmoid
C. Tanh
D. ReLU
3、向量 u 经 v = Mu 映到另一组坐标。矩阵 M 在这里主要起什么作用?
A. 求矩阵的秩
B. 做特征变换或投影
C. 把样本从数据中删掉
D. 计算行列式
4、Agent 范式 ReAct 的名字,是哪两个英文单词拼在一起?
A. Reasoning 与 Acting
B. Read 与 Act
C. Recall 与 Activation
D. Real 与 Action
5、一个约 7×10¹⁰ 参数的问答模型正在预训练。论坛长文和问答对构成的训练集上,困惑度一直在降;另采的一批真实用户提问上,困惑度先降后很快反弹。抽查生成文本时,能看到训练语料里的套话被反复说出,还伴随事实错误。下面哪条分析和对策最准确,也最接近近年大模型训练的常见处理?
A. 属于欠拟合,模型容量不足,没能学全训练文本里的规律。应把参数量再加大,或把训练步数再加长。
B. 属于领域偏移,因为验证提问和训练文本不是同一来源。应去掉正则,直接在验证集上接着训,直到验证困惑度停止上升。
C. 属于过拟合,模型记熟了训练噪声和个别样本,数据里的偏差也被放大。应使用权重衰减、Dropout 和早停,并在后续加入 RLHF,以提升泛化和事实性。
D. 属于过拟合。只要做交叉验证、把数据重新切开,让验证集和训练集分布完全一致即可。
6、已知 a* = 8.76(绝对误差限 0.006),b* = 1.49(绝对误差限 0.004)。a* + b* 的绝对误差限是多少?
A. 0.006
B. 0.024
C. 0.010
D. 0.004
7、量化如何与推理实现配合,下面哪一句最准确?
A. INT4 权重量化主要用来压缩权重,从而降低显存并缩短加载时间。部分 GPU 带有 INT4 张量核心,但累加精度和软件生态都受限,部署时通常先把权重反量化成 FP16 或 BF16,再做计算
B. 融合算子时,反量化要单独做成一个 kernel,不能和矩阵乘写在一起,这样才精度稳、代码简单;合在一起会既损失精度又让实现变复杂
C. KV Cache 做成低比特后,只能靠加大 batch 或加长上下文间接抬高吞吐,单请求解码不会因此变快。解码本身算力吃紧、带宽并不紧,Cache 变小省下的访存对延迟没有帮助
D. 把激活量化到 INT8,主要是为了省显存;能不能加速,要看权重有没有一起量化。若只量化激活,计算前得先变回 FP16,用不上低精度乘加
8、Agent 处理复杂任务时需要分解任务。下列哪一项是对的?
A. 子任务必须一次拆到不能再分的原子动作,中间层不能再拆
B. 必须倒序规划:先写最终目标,再回头补子任务
C. 拆分方案定稿后,执行时不准根据反馈改动
D. 自顶向下拆分,把难题变成一组可执行、便于管理的子任务
9、为大模型 Agent 接入工具时,想减少调用错误。下列哪种做法是无效的?
A. 发出调用之前,先检查参数类型和取值范围是否说得通
B. 规定每个工具在短时间窗口内最多调用几次
C. 给工具附上说明文字,写明能做什么、参数怎么填、会出什么错
D. 收回结果后先做校验,不对就重试,或切换到备用工具
10、随机变量 Z 的标准差为 4,W = −3Z + 5。方差 Var(W) 是多少?
A. 48
B. −12
C. 12
D. 144
答案速查
1.C 2.B 3.B 4.A 5.C 6.C 7.A 8.D 9.B 10.D
逐题解析
第1题(答案:C —— 该层卷积核的个数)
1、视觉骨干网络里,某一层卷积输出特征图的通道数通常由什么决定?
视觉骨干网络里,某一层卷积输出特征图的通道数通常由什么决定?
解析:卷积层的输出通道数 = 该层卷积核(filter)的个数。每个卷积核在输入的全部通道上做加权求和,产出一张输出通道;N 个卷积核就得到 N 个输出通道。权重形状为 (输出通道, 输入通道, kh, kw),其中「输出通道」这一维就是卷积核个数。
A 错:输入特征的通道数是每个卷积核输入侧的深度,决定的是卷积核权重的形状,不是输出通道数。
B 错:卷积核空间尺寸 (kh, kw) 影响输出特征图的高和宽(配合 padding),不影响通道数。
D 错:步长决定输出特征图空间尺寸被缩小的倍数,与通道数无关。
第2题(答案:B —— Sigmoid)
2、下列激活函数中,值域为开区间 (0, 1) 的是哪一个?
下列激活函数中,值域为开区间 (0, 1) 的是哪一个?
解析:Sigmoid σ(x) = 1/(1+e⁻ˣ),输出严格落在 (0, 1):当 x→+∞ 时趋近 1、x→−∞ 时趋近 0,但永远取不到端点,是开区间。
A 错:Leaky ReLU 在 x<0 时输出 kx(k 为小斜率,如 0.01),x>0 时输出 x,值域是整个实数轴(负半轴无下界)。
C 错:Tanh 值域是开区间 (−1, 1),虽然也是开区间,但不是 (0, 1)。
D 错:ReLU = max(0, x),值域是 [0, +∞),0 可以取到,且无上界。
第3题(答案:B —— 做特征变换或投影)
3、向量 u 经 v = Mu 映到另一组坐标。矩阵 M 在这里主要起什么作用?
向量 u 经 v = Mu 映到另一组坐标。矩阵 M 在这里主要起什么作用?
解析:矩阵乘向量 v = Mu 的几何意义就是线性变换:把 u 从原坐标系映射(旋转、缩放、剪切、投影)到 M 的列空间所张成的坐标系中,本质是特征变换或投影。线性代数中「矩阵作用于向量」=「换一组基表示 / 变换特征」。
A 错:求秩是对矩阵本身的分析操作(非零行数/极大无关组列数),不是矩阵作用于向量的功能。
C 错:矩阵乘法不可能「把样本从数据中删掉」,这不是任何线性运算的语义。
D 错:行列式是一个标量(体积缩放因子),M 的行列式可以另算,但 v = Mu 这个运算并不是在计算行列式。
第4题(答案:A —— Reasoning 与 Acting)
4、Agent 范式 ReAct 的名字,是哪两个英文单词拼在一起?
Agent 范式 ReAct 的名字,是哪两个英文单词拼在一起?
解析:ReAct 源自 2022 年论文《ReAct: Synergizing Reasoning and Acting in Language Models》,名字是 **Re**asoning + **Act**ing 的拼接:模型交替产生「思考轨迹(推理)」和「行动(调用工具/环境)」,二者协同提升任务完成质量。
B 错:Read 与 Act 只是形似拼接,不是 ReAct 的出处。
C 错:Recall 与 Activation 与该范式无关。
D 错:Real 与 Action 同样是干扰拼接。
第5题(答案:C —— 属于过拟合,使用权重衰减、Dropout 和早停,并在后续加入 RLHF)
5、一个约 7×10¹⁰ 参数的问答模型正在预训练。论坛长文和问答对构成的训练集上,困惑度一直在降;另采的一批真实用户提问上,困惑度先降后很快反弹。抽查生成文本时,能看到训练语料里的套话被反复说出,还伴随事实错误。下面哪条分析和对策最准确,也最接近近年大模型训练的常见处理?
一个约 7×10¹⁰ 参数的问答模型正在预训练……下面哪条分析和对策最准确?
解析:题干给出的是典型过拟合三联征:训练集困惑度持续下降、验证(真实用户提问)困惑度先降后升、生成复述训练语料套话且伴随事实错误。标准处理是正则化组合拳——权重衰减(L2)、Dropout、早停(在验证困惑度反弹前停止训练);对大模型事实性问题,后续用 RLHF/对齐阶段进一步提升泛化与事实性,这正是近年大模型训练的常见做法。
A 错:欠拟合的表现是训练集和验证集困惑度都偏高且都还在下降,与「验证反弹、复述套话」不符;加大参数/步数只会更过拟合。
B 错:领域偏移虽存在(验证集与训练分布不同源),但「去掉正则、直接在验证集上接着训」是严重错误做法——这等于把验证集泄漏进训练,且会加剧过拟合。
D 错:交叉验证/重切数据只能让评估更可靠,不能解决模型记噪声、复述套话的过拟合本身;且大模型预训练做 K 折交叉验证也不现实。
第6题(答案:C —— 0.010)
6、已知 a* = 8.76(绝对误差限 0.006),b* = 1.49(绝对误差限 0.004)。a* + b* 的绝对误差限是多少?
已知 a\* = 8.76(绝对误差限 0.006),b\* = 1.49(绝对误差限 0.004)。a\* + b\* 的绝对误差限是多少?
解析:误差限的可加性:若 |Δa| ≤ εa、|Δb| ≤ εb,则 |Δ(a+b)| = |Δa+Δb| ≤ |Δa|+|Δb| ≤ εa+εb。速算:0.006 + 0.004 = **0.010**。
A 错(0.006):只取了 a\* 的误差限,忽略了 b\* 的贡献。
B 错(0.024):0.006 与 0.004 的某种错误组合(如与 8.76、1.49 混算),和/差运算的误差限就是两者之和。
D 错(0.004):同 A,只取了 b\* 一侧。
第7题(答案:A —— INT4 权重压缩显存、加载更快,通常反量化成 FP16/BF16 再计算)
7、量化如何与推理实现配合,下面哪一句最准确?
量化如何与推理实现配合,下面哪一句最准确?
解析:A 完整准确地描述了当前主流实践:INT4 量化的核心收益是权重体积和显存占用(约 FP16 的 1/4)以及加载时间;虽然部分 GPU 有 INT4 张量核心,但累加精度和软件生态受限,主流推理框架(vLLM、TensorRT-LLM 等)普遍采用「存储/传输用 INT4,计算前反量化成 FP16/BF16 做高精度矩阵乘」的 weight-only 方案。
B 错:方向反了。现代推理栈恰恰把反量化融合(fuse)进矩阵乘 kernel 里(dequant + GEMM 融合),避免单独 kernel 产生的额外访存与 kernel 启动开销;「必须单独做」与事实相反。
C 错:解码阶段是典型的访存带宽瓶颈(memory-bound),每步都要把 KV Cache 整个读一遍;KV Cache 低比特化直接减少访存量,对单请求解码延迟有直接帮助,「没有帮助」错误。
D 错:激活 INT8 量化(配合权重量化)正是为了用低精度乘加(INT8 tensor core)加速计算,并不是「只为省显存」,也不需要「先变回 FP16」——那样就完全用不上 INT8 算力了。
第8题(答案:D —— 自顶向下拆分,把难题变成一组可执行、便于管理的子任务)
8、Agent 处理复杂任务时需要分解任务。下列哪一项是对的?
Agent 处理复杂任务时需要分解任务。下列哪一项是对的?
解析:任务分解(task decomposition / planning)的标准做法是自顶向下:从最终目标出发,逐层把大问题拆成可执行、便于管理和验证的子任务,Agent 逐个完成并汇总。这是 ReAct/Plan-and-Solve 等范式的共同基础。
A 错:不要求一次性拆到原子动作;允许中间层子任务在执行时继续细分,粒度按需而定。
B 错:不必倒序规划;主流做法就是从目标正向自顶向下拆解,倒序只是个别场景的技巧而非必须。
C 错:规划不是一成不变的,执行中要根据反馈动态调整(replan),否则环境稍有变化就会失败。
第9题(答案:B —— 规定每个工具在短时间窗口内最多调用几次)
9、为大模型 Agent 接入工具时,想减少调用错误。下列哪种做法是无效的?
为大模型 Agent 接入工具时,想减少调用错误。下列哪种做法是无效的?
解析:B 是限流(rate limiting)措施,作用是防止滥用、控制成本和保护后端服务,但它不改变「调用参数对不对、工具选得对不对」,对减少调用错误本身无效——该错还是错,只是错得慢一点。题目问「无效的」,选 B。
A 有效:调用前做参数类型和取值范围的校验(schema check),能拦截大量格式/取值错误。
C 有效:清晰的工具说明(docstring:能做什么、参数怎么填、会出什么错)直接提升模型选择和填参的正确率。
D 有效:对返回结果做校验、失败重试或切换备用工具,是容错闭环,能显著降低最终失败率。
第10题(答案:D —— 144)
10、随机变量 Z 的标准差为 4,W = −3Z + 5。方差 Var(W) 是多少?
随机变量 Z 的标准差为 4,W = −3Z + 5。方差 Var(W) 是多少?
解析:方差的性质:Var(aZ + b) = a²·Var(Z),常数 b 不影响方差。负号在平方后消失。速算:Var(W) = (−3)² · Var(Z) = 9 · 4² = 9 × 16 = **144**。
A 错(48):误用了 |a|·σ 的线性错误公式(3×4×4=48 是把「标准差线性」的错法混进来了)。
B 错(−12):方差不可能为负;(−3)×4 是把标准差当线性量算的典型错误。
C 错(12):|−3|×4,同样是把标准差按线性放大处理的错误,混淆了方差与标准差。