我在一项旧的对/错考试中阅读了以下声明:
如果我们使用梯度下降法通过最小化平方误差的总和来解决线性回归问题,则可以得到多个局部最优解。
解决方案:错误
我的问题是,这个问题的哪一部分是错误的?为什么这句话是假的?
我在一项旧的对/错考试中阅读了以下声明:
如果我们使用梯度下降法通过最小化平方误差的总和来解决线性回归问题,则可以得到多个局部最优解。
解决方案:错误
我的问题是,这个问题的哪一部分是错误的?为什么这句话是假的?
Answers:
这个问题很有趣,因为它揭示了优化理论,优化方法和统计方法之间的一些联系,任何有能力的统计人员都需要理解。尽管这些连接简单易学,但它们却微妙且经常被忽略。
总结从评论到其他答复的一些想法,我想指出,“线性回归”至少可以通过两种方式产生非唯一的解决方案-不仅在理论上,而且在实践中。
第一种是无法识别模型时。这将创建具有多个解的凸但非严格凸目标函数。
考虑,例如,回归针对和(具有截距)为的数据。一种解决方案是。另一个是。要查看必须有多个解决方案,请使用三个实参和一个误差项来对模型进行参数化X ÿ (X ,ÿ ,Ž )(1 ,- 1 ,0 ),(2 ,- 2 ,- 1 ),(3 ,- 3 ,- 2 )Ž = 1 + ý ž = 1 - X (λ ,μ ,ν )ε
残差平方和简化为
(这是在实践中出现的目标函数的一种限制情况,例如M估计量的经验粗体可以不确定吗?,您可以在其中阅读详细的分析并查看该函数的图。)
因为平方(和)的系数为正,行列式为正,所以这是。当,它被最小化,但是可以具有任何值。 由于目标函数不依赖,因此其梯度(或任何其他导数)也不依赖。因此,任何梯度下降算法-如果不对方向进行任何随意更改-都会将解的值设置为初始值。56 3 × 56 - (24 / 2 )2 = 24 (μ ,ν ,λ )μ = ν = 0 λ SSR λ λ
即使不使用梯度下降,解决方案也会有所不同。在R
,例如,有两个简单的,相当于指定此模型的方式:如z ~ x + y
或z ~ y + x
。第一个产生但是第二个产生。 Ž =1+ÿ
> x <- 1:3
> y <- -x
> z <- y+1
> lm(z ~ x + y)
Coefficients:
(Intercept) x y
1 -1 NA
> lm(z ~ y + x)
Coefficients:
(Intercept) y x
1 1 NA
(这些NA
值应解释为零,但要警告存在多个解决方案。由于进行的初步分析R
与该解决方案的方法无关,因此可能出现该警告。梯度下降方法可能无法检测到多个解决方案的可能性,尽管一个好人会警告您一些不确定性,说它已经达到了最佳状态。)
如果参数的域是凸的,则严格的凸度可确保唯一的全局最优。 参数限制可以创建非凸域,从而导致多个全局解决方案。
一个非常简单的例子是为数据估计“均值”的问题,它受的限制。这可以模拟一种与正则化方法(例如Ridge回归,Lasso或弹性网)相反的情况:坚持认为模型参数不会变得太小。(此站点上出现了各种各样的问题,询问如何使用这种参数约束来解决回归问题,这表明它们确实是在实践中出现的。)- 1 ,1 | μ | ≥ 1 / 2
此示例有两个最小二乘解,两个都很好。通过将最小化,找到约束。这两个解决方案是。由于参数限制使域是非凸的因此可能会出现多个解决方案:| μ | ≥ 1 / 2 μ = ± 1 / 2 μ &Element; (- ∞ ,- 1 / 2 ] ∪ [ 1 / 2 ,∞ )
抛物线是(严格)凸函数的图。红色的粗线部分是限制在范围内的部分:它在处具有两个最低点,其平方和为。其余的抛物线(如虚线所示)已被约束删除,从而消除了其独特的最小值。μ = ± 1 / 2 5 / 2
除非愿意采取大的跳跃,否则梯度下降法很可能会在以正值开始时找到“唯一”解,否则会找到“唯一”解以负值开头时为。μ = - 1 / 2
对于较大的数据集和较大的维度(即,需要拟合的回归参数更多),可能会发生相同的情况。
恐怕您的问题没有二进制答案。如果线性回归严格是凸的(对系数没有约束,没有正则化器等),则梯度下降将具有唯一的解,并且它将是全局最优的。如果您遇到非凸问题,则梯度下降可以并且将返回多个解。
尽管OP要求进行线性回归,但以下示例显示了最小二乘最小化,尽管非线性(相对于OP要求的线性回归)可以有多个解,而梯度下降可以返回不同的解。
我可以用一个简单的例子来经验证明
考虑以下示例,其中您尝试最小化最小二乘以解决以下问题:
您试图通过最小化目标函数来解决的问题。上述函数虽然是微分的,但不是凸的,可以有多种解决方案。用于替代实际值见下文。一
(9 - 瓦特1
上面的问题有3种不同的解决方案,它们如下:
如上所示,最小二乘问题可以是非凸的,并且可以有多个解。然后可以使用梯度下降方法(例如microsoft excel求解器)解决以上问题,并且每次运行时,我们最终都会得到不同的解决方案。由于梯度下降是局部优化器,可能会卡在局部解中,因此我们需要使用不同的初始值来获得真正的全局最优值。这样的问题取决于起始值。
这是因为要最小化的目标函数是凸的,只有一个最小值/最大值。因此,局部最优也是全局最优。梯度下降将最终找到解决方案。
为什么这个目标函数是凸的?这是使用平方误差最小化的好处。导数和等于零将很好地说明为什么是这种情况。这是一个相当大的教科书问题,几乎涵盖了所有地方。