线性回归系数的矩阵维度
这是一个很好的例子,说明当您将文本脱离上下文时会发生什么。
已编辑问题中添加的段落有所不同,但这还不够,而且符号无处不在也无济于事。我找到了教科书和相关段落(第 2.3 节,第 10-11 页)。这是一个解释的快速尝试。
作者将X称为具有分量X j的变量(标量或向量),但在本段后面,他们将X j称为变量(我认为这是正确的表示法)。将“变量”与“组件”不同,将X视为一组p变量(通常意义上的变量,例如温度、股票价格等)。您可以将多个变量x i ( i = 1...p ) 放入向量X中,并将X的每个实例称为观察值 . 换句话说,观察是所有变量x i的一组测量值。
假设您进行了N次观察。将您的观察结果排列在具有N行和p列的矩阵中,其中每一行代表一个观察值(X的一个实例)。
现在还假设您正在尝试查找输入变量x i和一组不同的变量y k之间的关系,称为因变量或响应变量。一般来说,变量x i和y k是测量的,模型只是试图提取输入变量和因变量之间的关系,以便您可以从前者预测后者。
附带说明一下,观察结果通常用上标( x (n) ) 表示,变量用下标( x i ) 表示,因此不会混淆哪个是哪个。x i (n)是变量x i的第n个观察(测量)值。
在您的情况下,您有一个因变量y和p输入变量x i(i = 1...p)。假设它们的关系是线性的(注意:在许多情况下,这种假设是不合理的),我们可以为每个变量分配权重(“重要性”)并尝试从测量中找出这些权重。在您的情况下,权重用beta i表示(因此变量x i的“重要性”是beta i;注意相同的下标)。
如果您对因变量y有N个观测值,那么您可以将它们排列在一列中,就像对输入变量的观测值一样。请注意,我们仍然有一个因变量,所以本质上y是一个标量,但是该标量的N个观测值形成一个N维列向量。
现在将N xp输入矩阵乘以权重beta的p维列向量。你得到的是y ( \hat{y} )的N个预测值的列向量。预测值的N维列向量\hat{y}和测量值的N维列向量y的差就是误差(用最小二乘法最小化)。
如果您有q个因变量y i ( i = 1...q ),则它们中的每一个通常都有自己的一组权重beta。换句话说,输入变量和每个 y i之间的关系将是不同的。因变量也可以排列在一个矩阵中(就像输入矩阵一样),它的维数是N xq,其中q。在这种情况下,beta矩阵将不是一个单一的N维列向量,而是一个N xq矩阵。测试版中的每一列矩阵给出了输入变量和第q个因变量y q之间的关系。在这方面,对所有变量y i的单个观察将是y矩阵中的行向量。
我希望这能澄清一点。总而言之,教科书中的解释是正确的,但符号很难理解,有时甚至容易产生误导(如本节开头的变量和组件的情况)。老实说,您可以从Wikipedia文章中获得更直观的线性回归解释。
我用过W
asbeta
和Y_pred
as Y_hat
。
显然,就惯例而言,特征向量X
和权重向量W
都被假定为列向量。尽管这在您的情况下并不重要,但是当我们使用神经网络时,这一点尤其重要,并且层的权重向量由下式给出,p*N_n
其中p
是从前一层输入的特征数,并且N_n
是层。检查一个NN结构,你就会明白我在说什么。
就您当前问题的特殊情况而言,这本书是正确的,尽管评论说Y_predicted
应该是矢量,但事实并非如此,因为我们在和之间进行点积X
(W
尽管它以矢量化形式表示)。
另外如何W
有维度p*K
(假设它不是NN),这意味着同一问题的多种解决方案?相反X
,它将具有尺寸p*K
并将W
具有p*1
. 这意味着您拥有K
具有特征的训练示例p
。
如果它是一个带有K
节点的NN,那么X
likep*N
和W
as的尺寸p*K
是完全可能的。这种表示法的唯一缺点是您必须再次对结果进行转置。
以下是使用的符号的解释: