复习与资料整理学习方法

矩阵乘法不是对应相乘:用两组资料算清行、列与单位

矩阵乘法的一格结果,来自左矩阵一行与右矩阵一列的对应乘积之和,而不是只把同位置两个数相乘。先核对内侧维数和类别顺序,再计算有含义的结果。下面用两组领资料的自编例题给出完整输入、四格过程、独立总量检查和一个计数变式。

叠放的纸张与文件近景,作为按资料包计算打印页数练习的摄影配图
配图:Camilo Rueda López · Unsplash License纸质资料的场景配图;正文矩阵、资料包与页数均为自编教学数据。摄影:Camilo Rueda López / Unsplash。

这篇要学会什么

本例领取矩阵A为2×3,页数矩阵B为3×2,共同的三类资料按X、Y、Z对齐,因此AB为2×2。上午组得到10页黑白、7页彩色,下午组得到7页黑白、7页彩色;两组合计17页黑白、14页彩色。把下午的Z类从3份改为4份,下午应变为8页黑白、9页彩色。

先给每一行和每一列命名

以下班组、资料类别与数量均为KitNelo自编教学材料,不是真实课程记录。问题只有一个:两组各领取指定份数后,需要多少黑白打印页和多少彩色打印页。单位是打印页,不是双面排版后的纸张数,也不包括装订或废页。

A的行是上午组、下午组,列是X、Y、Z资料的份数;B的行必须以同样的X、Y、Z顺序排列,列是每份资料的黑白页数和彩色页数。A有两行三列,B有三行两列。保留标签,让中间的三类资料既在数量上匹配,也在含义上匹配。

输入A:各组领取的份数
班组X/份Y/份Z/份
上午组210
下午组103
输入B:每份资料的打印页数
资料类别黑白页/份彩色页/份
X41
Y25
Z12

按一行与一列,算完四个输出位置

OpenStax的矩阵运算章节说明,乘积要求左边列数等于右边行数,结果保留左边行数与右边列数。本例是(2×3)×(3×2),所以结果应为2×2;先画出两行两列,再计算每一格。

计算上午组黑白页时,用上午行(2,1,0)对齐B的黑白列(4,2,1),得到2×4+1×2+0×1=10。每一项都是份数乘以每份页数,先按资料类别算页数,再把同一种输出相加。

其余三格也按完整行列展开。0表示本例明确没有领取该类资料,不代表输入缺失;0×5不能删去后把后续类别挪到错误位置。用每一步都写出理由的练习方法检查自己是否能说明每一个乘数的来源。

完整行列计算与输出
输出位置对应乘积之和结果
上午/黑白2×4+1×2+0×110页
上午/彩色2×1+1×5+0×27页
下午/黑白1×4+0×2+3×17页
下午/彩色1×1+0×5+3×27页

换一条计算路径核对总量

逐格答案还应能与另一种汇总方式一致。先把各组领取的同类份数相加:X共2+1=3份,Y共1+0=1份,Z共0+3=3份。再按类别计算全部打印页。

黑白页总量为3×4+1×2+3×1=17;彩色页总量为3×1+1×5+3×2=14。这与结果矩阵按列相加的10+7、7+7分别一致。全部打印页为17+14=31页。

这条检查核对的是同类数量和贡献,不需要再除以份数求平均。从贡献恢复总量的加权平均练习可以帮助区分总量与平均值;本篇交付的是打印总页数,不能在最后无故多除一次。

两条独立汇总路线应对齐
输出类型按组汇总按资料类别汇总
黑白页10+7=173×4+1×2+3×1=17
彩色页7+7=143×1+1×5+3×2=14

维数正确,为什么仍可能算错题目

维数匹配只解决能否进行这次数值运算,不能自动保证类别匹配。若B的行改成Z、X、Y,A的列却仍为X、Y、Z,直接按新位置相乘会给上午组黑白6页、彩色5页。算式可以执行,但配对的资料类型已经错误。修复时按标签重新对齐,不靠改答案补救。

乘法顺序也属于问题的一部分。本例BA在数值上可以相乘,却会成为3×3,已不是两组分别对应两种页数的输出。B的列标签是页数类型,A的行标签是班组,即使它们都恰好有两个位置,也没有本题所需的中间类别对应。不要把尺寸碰巧相同当作原问题仍然成立。

编辑设计的漏项错误

错误计算

上午黑白页只算2×4=8页。

修正计算

上午黑白页=2×4+1×2+0×1=10页。

第一项只计入X资料,遗漏了领取的一份Y。行列点积要累计全部匹配类别的贡献,不是只取第一个位置,也不是先把两边所有数相加后相乘。

多领一份Z时,先预测变化再重算

现在只把下午组Z类从3份改为4份,其他输入保持不变。先预测:一份Z有1页黑白、2页彩色,因此下午输出应分别增加1和2;上午输出不变。

完整复算为下午黑白1×4+0×2+4×1=8页,下午彩色1×1+0×5+4×2=9页。新结果两行是(10,7)与(8,9),合计18页黑白、16页彩色,共34页。它比原来的31页多3页,恰好是一份Z的全部页数。

完成后说明一次输入变化经过了哪些类别配对。这个小型模型假设每份资料页数固定,没有装订、复印损耗或其他操作约束;实际打印安排需要另加那些条件,不能把练习总量当成完整生产计划。

检查的是算法与含义,而不只是一个总数

  • 能指出A的列和B的行都按X、Y、Z对齐。
  • 能解释2×3与3×2为什么得到2×2。
  • 四格输出各自保留完整的三项乘积。
  • 原结果按组与按类别的汇总都得到17和14。
  • Z增加一份时,只把对应班组的结果增加1和2。

常见问题

AB能算,BA一定也能算吗?

不一定。例如A为2×3、B为3×1,AB的内侧维数是3与3,结果2×1;BA的内侧维数是1与2,不匹配。应分别检查两个方向。

参考资料与延伸阅读

继续阅读