- 主题:有大佬了解由n个点,拟合出一条直线,这个问题的矩阵表示吗?

这个问题,该怎么用矩阵表示呢?谢谢
--
FROM 120.242.238.*
谢谢大佬的详细指点。 W=(w,b)^T是2行1列的矩阵。
X=(x1,1;x2,1;...;xn,1)是n行2列的矩阵。
Y=(y1;y2;...;yn)是n行1列的矩阵。
只是 这里 J(W)= (X*W-Y)^T * (X*W-Y),否则 行列不对。
设 U(W) = X*W-Y,则 J(W)= U^T * U,dJ/dU = 2U, dU/dW = X (应该是求偏导,但是那个符号不知道怎么输入进来,所以用d代替)
所以,dJ/dW = 2U * X (这里U是 n行1列的矩阵,X 是n行2列的矩阵 ,又不能相乘了)
所以,dJ/dW = 2*U^T * X (转置过来,就可以相乘了,而且结果是 1行2列的向量,正好是(w,b))
————我想问一下,这里U 为什么要转置?难道仅仅是因为无法相乘,而转置后可以相乘,所以就转置吗?有没有什么规则的?再次感谢
【 在 operater 的大作中提到: 】
: W=(w,b)^T是2行1列的矩阵。
: X=(x1,1;x2,1;...;xn,1)是n行2列的矩阵。
: Y=(y1;y2;...;yn)是n行1列的矩阵。
: ...................
--
FROM 120.242.238.*
设 U(W) = X*W-Y,则 J(W)= U^T * U,dJ/dU = 2U, dU/dW = X (应该是求偏导,但是那个符号不知道怎么输入进来,所以用d代替)
所以,dJ/dW = 2U * X (这里U是 n行1列的矩阵,X 是n行2列的矩阵 ,又不能相乘了)
所以,dJ/dW = 2*U^T * X (转置过来,就可以相乘了,而且结果是 1行2列的向量,正好是(w,b))
————我想问一下,这里U 为什么要转置?难道仅仅是因为无法相乘,而转置后可以相乘,所以就转置吗?有没有什么规则的?有大佬能解释一下吗?再次感谢
【 在 snoopyzhao 的大作中提到: 】
:
: 令 H 为 X^T*X 的逆矩阵,则
: W = H*X^T*Y
: ...................
--
FROM 223.104.33.*
所以,dJ/dW = 2U * X (这里U是 n行1列的矩阵,X 是n行2列的矩阵 ,又不能相乘了)
我的意思是,为什么这里写成 2U * X,就无法相乘了?
【 在 fourwind 的大作中提到: 】
: 就是分量的平方和啊,无它。
--
FROM 120.242.238.*
是的 啊。要用垂直距离,只会更麻烦啊。我这简单的,都不好解释啊
【 在 z16166 的大作中提到: 】
: 你这个式子不是点到直线的垂直距离吧
: 只是y方向的差值
: --
: ...................
--
FROM 120.242.238.*
那现在的问题是: d(X^T *X)/dX ,到底是等于2X,还是等于2X^T?总该有固定的等式吧?而不是看结果才能判断去不去转置?
【 在 fourwind 的大作中提到: 】
: 矩阵乘法的定义决定的,两个列向量无法相乘,所以就像你提到的那样使用了。
: 多数优化教材里都采用了这样的记法。
:
--
FROM 120.242.238.*
我这个矩阵形式,已经差不多做出来了。只是,最后一步要转置,我理解不了,不知道如何解释?
【 在 z16166 的大作中提到: 】
: 搜最小二乘法矩阵形式,一堆
: --
: 发自xsmth (iOS版)
--
FROM 120.242.238.*
我这个,答案应该是已经算出来了。可是不理解,为什么只有转置才对?
【 在 snoopyzhao 的大作中提到: 】
:
: 这种计算有现成的规则可以用,找一个矩阵计算相关的小册子,应该会有,比如 Matrix Coodbook 这种……
--
FROM 120.242.238.*