Lagrange multiplier
很多时候我们需要求的表达式的最大值,一般我们都是求导,令其等于0. 但在机器学习的过程中,我们经常遇到在有限制的情况下,最大化表达式. 如下例子所示:
maximizef(x,y) m a x i m i z e f ( x , y ) subject to g(x,y)=0 g ( x , y ) = 0
这时我们引入一个拉格朗日乘子 λ λ 构造出拉格朗日表达式:
对于有多个限制的表达式,则有:
接下来要对拉格朗日表达式求导,令其为0
Δx,y,λL(x,y,λ)=0⟺Δx,yf(x,y)=λΔx,yg(x,y) Δ x , y , λ L ( x , y , λ ) = 0 ⟺ Δ x , y f ( x , y ) = λ Δ x , y g ( x , y ) && g(x,y)=0 g ( x , y ) = 0
Δx,yf=(∂f∂x,∂f∂y) Δ x , y f = ( ∂ f ∂ x , ∂ f ∂ y )
Example:
if we want to maximise f(x,y)=x+y f ( x , y ) = x + y while x2+y2=1 x 2 + y 2 = 1
令 g(x,y)=x2+y2−1 g ( x , y ) = x 2 + y 2 − 1 则: L(x,y,λ)=f(x,y)+λ⋅g(x,y)=x+y+λ(x2+y2−1) L ( x , y , λ ) = f ( x , y ) + λ ⋅ g ( x , y ) = x + y + λ ( x 2 + y 2 − 1 )
对拉格朗日表达式求导,则有:
求解可得 x,y,λ x , y , λ