R 中的最小二乘优化

Least square optimization in R

我想知道如何在 R 中解决以下问题。

我们有一个 v 向量(包含 n 个元素)和一个 B 矩阵(尺寸 m x n)。 例如:

    > v 
    [1] 2 4 3 1 5 7

    > B
         [,1] [,2] [,3] [,4] [,5] [,6]
    [1,]    2    1   5    5    3    4
    [2,]    4    5   6    3    2    5
    [3,]    3    7   5    1    7    6

我正在寻找 m 长向量 u 这样

    sum( ( v - ( u %*% B) )^2 )

被最小化(即最小化平方和)。

您描述的是线性回归,可以使用 lm 函数完成:

coefficients(lm(v~t(B)+0))
#      t(B)1      t(B)2      t(B)3 
#  0.2280676 -0.1505233  0.7431653