Armijo 규칙에 대한 혼란


13

줄 검색에 사용 된 Armijo 규칙에 대한 혼란이 있습니다. 나는 라인 검색 추적을 다시 읽었지만이 Armijo 규칙이 무엇인지 알지 못했습니다. 누구나 Armijo 규칙이 무엇인지 자세히 설명 할 수 있습니까? 위키 백과가 잘 설명하지 못하는 것 같습니다. 감사


방정식에서 변수 x가 벡터가 아니라 행렬이면 어떻게 될까요? Armijo 규칙을 어떻게 업데이트해야합니까?
Frank Puk

아무것도 변하지 않습니다. 당신은 단순히 당신의 모양을 변경한다 벡터 A (열)에 -matrix X K . Xkxk
GoHokies

내가 붙어있는 곳입니다. 경우 행렬이되고, 좌측의 값 ( F ( X K + α P는 K가 ) )는 여전히 스칼라이다. 그러나 오른쪽의 값은 아닙니다-대신 행렬입니다 ( f ( x k ) 는 스칼라이고 β α f ( x k ) T p k 는 행렬입니다.)xkf(xk+αpk)f(xk)βαf(xk)Tpk
Frank Puk

행렬이 아닌 벡터로 작업해야합니다. 따라서 제어 변수 의 행렬 ( X k 로 표시 )을 N 2 요소가 있는 벡터 x k 로 재구성하십시오 . 검색 방향과 그라디언트는 N 2 요소 가있는 벡터도됩니다 . 이런 식으로 Armijo 조건의 RHS와 LHS는 모두 스칼라이며 비교할 수 있습니다. N×NXkxkN2N2
GoHokies

답변:


19

목적 함수 f ( x )에 대해 하강 방향 를 얻으면 "좋은"단계 길이를 선택해야합니다. 새 지점의 기능이 현재 지점보다 더 큰 단계를 수행하고 싶지 않습니다. 동시에, 단계가 너무 작아서 수렴하는 데 영원히 걸리는 것을 원하지 않습니다.pf(x)

Armijo의 조건은 기본적으로 "양호한"스텝 길이는 새로운 지점 에서 가 "충분히 줄어든"정도임을 나타 냅니다. 조건은 수학적으로 f ( x k + α p k ) f ( x k ) + β α f ( x k ) T p k로 표시됩니다. 여기서 p kx kβ ( 0 , 1 에서 하강 방향입니다 ) . f

f(xk+αpk)f(xk)+βαf(xk)Tpk
pkxkβ(0,1)

이것의 직관은 새로운 점 의 함수 값 이 p k 방향으로 x k 에서 감소 된 "접선" 아래에 있어야한다는 것 입니다. Nocedal & Wright의 "Numerical Optimization"책을 참조하십시오. 3 장에는 armijo의 충분한 감소 조건에 대한 훌륭한 그래픽 설명이 있습니다.f(xk+αpk)xkpk


1
탄젠트 라인으로 생각하지 않고 1 차 Taylor 확장으로 생각할 수도 있습니다. 이 경우, 단지 그러한 단계 크기 α 가 존재 함을 보장 한다. βα
cjordan1

이것이 중요한 이유, 즉 "좋은"단계가 필요한 이유는 Paul이 말한 것처럼 많은 최적화 체계가 느리게 수렴하거나 전혀 수렴하지 않기 때문입니다. 따라서 여러 종류로 제공되는 라인 검색은 Armijo가 가장 인기있는 알고리즘으로 알고리즘에보다 강력한 수렴 속성을 제공하는 데 사용될 수 있습니다.
cjordan1

1
폴 : 설명이 불완전합니다. 이 불평등만으로는 '충분한'감소를 보장하지 않습니다. 실제로, 당신은 알파 = 0을 가질 수 있고, 당신이 쓴 불평등을 여전히 만족시킵니다. 중요한 특징은 Armijo 규칙이 단계 크기를 0에서 멀어지게하는 것이며, 이는 다른 부등식에 의해 수행됩니다. f (gamma * x_new) -f (x_old)> beta * (gamma * x_new-x_old) ^ T * grad (f (x_old))

f(x)=x2xk=1pk=2αf(xk+αpk)α=1/2β>1/2f(xk+1/2pk)=0>12β=f(xk)+βαf(xk)pkβ

β>1/2β=104β

0

5 년 후에도이 질문은 여전히 ​​유효합니다.

여기 (16 및 17 페이지) 알고리즘을 포함한 훌륭한 설명을 찾을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.