像整理一张列与列互相牵扯的表格:如果不先理顺,每改一个数字,都可能要连带重算许多内容。贝叶斯半参数回归也有类似负担。它一边用少量参数描述明确关系,一边用灵活曲线适应复杂形状;代价是要反复更新大量系数,矩阵计算很容易成为瓶颈。
Nurul Fitriyani 和 Matt P. Wand 的做法,是在迭代开始前先正交化设计矩阵。设计矩阵就是把输入变量和曲线基函数排成的数字表;正交化则像把斜着交叉的坐标轴扶成直角。只要同步变换系数、先验和约束,模型表达的关系可以保持不变,后续计算却更简单。这对 Gibbs sampling——反复抽样参数的算法——和变分推断——用较简单分布逼近结果的方法——尤其有用,因为一次预处理节省的运算会在循环中反复兑现。
作者称,这种改写让计算量相对于矩阵列数降低两个数量级,计算机实验得到约 5 至 60 倍提速。值得注意的不是另造一个模型,而是先重排计算,再运行原有推断流程;不过论文材料未披露各实验设置对应的具体倍率。