课程/M03 习题:矩阵与线性映射
附录源文件:exercises/m03-习题.md

M03 习题:矩阵与线性映射

对应模块:M03 矩阵与线性映射 先独立完成,再对 答案。计算题保留中间步骤,不要只写结果。

A 概念题

  1. 取 。分别用「数据表」「线性映射」「算子」「列向量组」解释它;哪个身份不成立?为什么?
  2. 同一个 ,列组合与行点积的求和项完全相同,只是分组不同。请写出两种分组,并说明为什么「列组合适合人想、行点积适合机器算」。
  3. 如果矩阵乘法定义成逐元素乘,复合映射 还能用一个矩阵表示吗?请用 的具体例子说明会失去什么。
  4. 写出方阵可逆的四个等价条件,并解释:为什么 的长方阵可能有左逆,却不可能有两边逆?
  5. 为什么 而不是 ?行变换保持行空间与零空间,为什么不保持列空间?求列空间基时应该用原矩阵还是 RREF 的列?

B 计算题

  1. ,。 (a) 用列组合和行点积分别求 ; (b) 求 与 ; (c) 验证 。
  2. ,。 (a) 用行乘列求 ; (b) 用列组合、行组合、外积和分别验证; (c) 写出这次乘法的 FLOPs。
  3. 。 (a) 求 与 ; (b) 解 ; (c) 判断 是否可逆,并找它的一个非零零空间向量。
  4. 对 : (a) 做 LU 分解,写出 、; (b) 用 的对角线求 ; (c) 解 ,写出前代与回代。
  5. 。 (a) 求 与 RREF; (b) 写出四个子空间的基与维数; (c) 验证行空间 ⊥ 零空间、列空间 ⊥ 左零空间,以及两个维数公式; (d) 判断 与 是否在列空间里。

C 大模型题

  1. 一个线性层 ,输入 batch 为 、、。 (a) 参数量是多少? (b) 前向 FLOPs 约是多少? (c) 输出张量的形状与 fp16 显存占用是多少?
  2. 注意力中 ,、、、。 (a) 写出 的完整形状与元素个数; (b) fp16 下分数矩阵占多少显存? (c) 计算 的 FLOPs; (d) 这个分数矩阵的秩最多是多少?为什么?
  3. LoRA 用 近似全量更新 ,取 ,、。 (a) 全量与 LoRA 的参数量各是多少?比例多少? (b) 前向时 LoRA 分支比全量矩阵乘省多少 FLOPs? (c) 推理时如何把 LoRA 合并回 ?合并后秩是多少?

D 开放题

  1. 设计一个 NumPy 实验,验证「矩阵乘法的四种视角结果一致」,并要求在任意随机形状下都成立。你会写哪些断言?如果某种实现只在方阵上通过,可能是什么 bug?
  2. 设计一个实验,测量某个隐藏状态矩阵的「有效秩」在通过一个低秩层前后的变化。你会用什么指标?如何排除「只是数值噪声」的解释?

计算题的数值答案见 m03-答案;开放题没有唯一答案,答案给出评分要点。

输入关键词开始搜索