在与计算机科学家讨论了 JSL 的“Vec Quadratic()”函数后,我们都同意我们不了解它的确切工作原理。我还检查了脚本索引和文档库:


问题出现在所附的预测和置信区间计算示例中,其中使用了此函数。具体来说,我们无法读懂协方差矩阵之后的部分,以及为什么它涉及连接(“[1] || :X”)(另见下面的屏幕截图)。

如果有人可以解释或指出进一步文档的方向,我将不胜感激。
你好@Ressel ,
我希望我能对这个问题做出一些解释,或者至少阐明一些道理。
如果您回顾脚本索引并按照 Vec Quadratic() 的示例进行操作,就会明白很多。如果您有一个矩阵 X = [1 3 5, 2 4 6],这是一个 2x3 矩阵,如果您对其进行转置以获得 3x2 矩阵,则 X' = [1 2, 3 4, 5 6]。
下一步是与对称矩阵 S = [1 3 5, 3 2 6 , 5 6 1], S*X' 执行标准矩阵点积:
S*X' = [1 3 5, 3 2 6, 5 6 1]*[1 2, 3 4, 5 6] = [1+9+25 2+12+30, 3+6+30 6+8+36, 5+18+5 10+24+6] = [35 44, 39 50, 28 40].
下一步是将这个新矩阵与 X 进行点积以得到一个新的 2x2 矩阵:
X*(S*X') = [1 3 5, 2 4 6]*[35 44, 39 50, 28 40] = [292 394, 394 528].
然后,Vec Quadratic 函数简单地取其对角线元素,得到向量 [292, 528]。
连接函数 || 的作用是让公式将数据表中该行的 2x2 对称矩阵与 2x1 转置矩阵相乘。例如,对于第 1 行,Vec Quadratic 最终将看起来像这样 Vec Quadratic( [2.33333333333333 -1, -1 0.5], [1] || 1 )。这与 Vec Quadratic( [2.33333333333333 -1, -1 0.5], [1,1] ) 相同。第 1 行的 [1]||:X 最终看起来像 [1 1],第 2 行的看起来像 [1 2],等等。公式需要获取 :X 的单行条目并将其转换为矩阵,所以这就是公式中的 [1]||:X 所做的。
我希望这是有道理的。
祝你好运!,
DS