在小学阶段,当我们计算多位数相乘时,最常规的方法是列竖式,将多位数相乘转化为多位数与个位数的逐次相乘。
然而,在探讨更高级的数学结构之前,我们需要观察一种特别的计算序列。假设我们以
验证计算结果准确无误。这种运算序列通过特定的位移,将复杂的乘法直接拆解为个位数的对应相乘与求和。由于这种方法能够直接独立地生成乘积的每一位,它在复杂的算法实现中具有极高的稳定性。那么,支撑这种位移相乘的底层逻辑是什么?
运算原理的代数拆解
首先我们观察任意两个多位数相乘的代数本质。任何一个十进制数都可以展开为基数
因为乘法分配律的存在,乘积最高位的位权必然为
如果我们提取乘积中任意中间某一位的基数,例如
由于上述组合的幂次之和恒为
这在视觉上等价于:将其中一个乘数的系数序列进行翻转,然后与另一个乘数的系数序列进行滑动平移,将对齐的项相乘后再相加。我们将这种代数结构称为“翻转平移相乘法”。
撤掉基准:向多项式的自然延伸
既然我们已经明确了上述计算仅仅依赖于幂次的相加规则,那么如果撤掉十进制中固定的基数
假设我们有两个多项式需要相乘:
提取多项式的系数向量:被乘数为
利用前文推导的翻转平移逻辑,由于已知
这证明了“翻转平移相乘法”是脱离了具体数值的、更普遍的代数向量运算规则。
维度的跨越:进入真实物理系统
既然这种向量序列的运算结构在代数系统中表现得如此自洽,那么如果我们将多项式的系数替换为现实生活中独立事件发生的概率,或者随时间变化的真实资金流,会发生什么?
情境 1:离散概率的叠加(掷骰子模型)
假设有两枚骰子,掷出点数
由于点数之和的范围是从
观察这个等式,它的结构与前文多项式系数求和完全一致。这意味着,计算两个独立随机变量之和的概率分布,本质上就是对概率分布向量
情境 2:时间序列的累积(复利模型)
假设某人每年年初向账户存入资金序列
如果要计算第 3 年年底的本息总额,我们需要将过去每一年存入的资金,乘以其对应在账户中存续的时间带来的复利放大倍数:
第 3 年底总额
这再次证明,计算随时间累积的动态系统总量,同样是对资金输入序列与衰减/放大序列执行翻转平移相乘。
连续的极限:卷积的确切定义与降维映射
基于上述所有离散模型,数学家们将这种“通过两个函数
对于离散序列,其精确定义正是我们前文反复推导的过程:
而当我们将时间的切片无限细分,离散的累加就演变成了连续情形下的积分:
为了建立物理直觉,我们将这个积分公式映射到人体代谢药物的浓度变化模型中。
假设有一名正在接受静脉滴注的患者。在这个系统中:
- 变量
代表过去发生注药动作的具体历史时刻。 - 函数
代表在 这个历史时刻,注入血液的药物速率(或初始剂量)。 - 时间差
代表这批历史药物从注入到当前观察时刻 ,所经历的具体代谢时间。 - 函数
代表药物经过了这段时间代谢后,依然存留在血液中的残留比例。
因为点滴是持续注入的,所以当前时刻
无论是小学的多位数竖式拆解,还是药代动力学中的浓度积分,它们底层描述的都是同一套机械法则。
如今,卷积被广泛应用于科学与工程领域:在概率论中,两个独立随机变量之和的概率密度函数是它们各自密度的卷积;在统计学中,加权滑动平均本质上是一种卷积操作;在图像处理中,卷积核就像一把二维的“滑尺”,在像素矩阵上平移,从而实现图像的模糊、锐化或边缘检测。
进一步思考:当环境不再恒定
在上述的药物代谢模型(或银行复利模型)中,我们建立了一个隐藏的前置条件:药物的代谢衰减规则
但是,如果物理环境的参数发生了改变——假设患者随着持续的滴注,其肝脏功能被激活或受损,导致身体对药物的代谢速率本身也在随着绝对时间
在这种系统法则随时间动态变化的非线性物理场景下,原本完美的“平移”结构被破坏。此时,如果我们依然需要计算当前时刻体内的药物总浓度,原始的卷积公式
参考文献
[1] convolution. https://en.wikipedia.org/wiki/Convolution#cite_ref-8
