수치 최적화에 3 차 도함수를 사용하지 않는 이유는 무엇입니까?


29

만약 Hessians가 최적화에 너무 좋다면 (예를 들어 Newton의 방법 참조 ) 왜 거기서 멈추는가? 3 차, 4 차, 5 차 및 6 차 도함수를 사용하자 왜 안돼?


11
최적을 찾으면 왜 더 살펴 볼까요? 실제로, 당신은 정말로 무엇을 요구하고 있습니까? 통계 질문은 무엇입니까?
whuber

2
대부분의 경우 최적의 추정 방정식을 해결하거나 목적 함수를 최소화하는 추정치의 제한 분포는 공동으로 정상이므로 전체적으로 첫 번째와 두 번째 모멘트로 특성화 할 수 있습니다.
AdamO

3
무언가를 할 수 있다고해서 그렇게 해야 한다는 의미는 아닙니다 . 고차 미분은 노이즈에 점점 더 민감 해집니다.
Vladislavs Dovgalecs

6
나는 통계에 관한 것이 아니기 때문에이 질문을 주 제외로 닫으려고 투표하고 있습니다. 수치 최적화에 관한 것입니다
Aksakal

11
당신은 과학적인 돌파구를 만들지 않았습니다. 할리는 약 3 1/4 세기 동안 당신을 이겼습니다. Halley, E., 1694, "모든 방정식의 근본을 구할 수있는 새롭고 정확하며 쉬운 방법", 그리고 이전의 축소가없는 방법 "Philos. 트랜스 로이 Soc. 런던, 18, 136–145. 최적화를위한 3 차 미분 방법이 존재하고 수년 동안 연구되었지만 큰 인기를 얻지 못했습니다. 잘 구현된다면, 가장 큰 장점은 잘 구현 된 뉴턴 방법에 비해 견고성이 증가한다는 것입니다. 이것은 가장 까다로운 문제에 유리할 수 있습니다.
Mark L. Stone

답변:


31

나는 왜 뉴턴의 방법이 왜 1 차 및 2 차 파생 상품만을 사용하고 3 차 또는 그 이상의 파생 상품을 사용하지 않는지에 대한 질문으로 해석하고있다.

실제로, 많은 경우에, 3 차 도함수로가는 것이 도움이됩니다. 나는 전에 사용자 정의 물건으로 해본 적이 있습니다. 그러나 일반적으로 더 높은 도함수를 사용하면 계산 복잡성이 추가됩니다. 모든 도함수를 찾아 계산해야하며 다변량 문제의 경우 첫 번째 도함수보다 많은 제 3 도함수가 있습니다! -그것은 당신이 얻는 걸음 수의 절감보다 훨씬 큽니다. 예를 들어, 3 차원 문제가있는 경우 3 개의 1 차 도함수, 6 개의 2 차 도함수 및 10 개의 3 차 도함수를 가지므로 3 차 버전으로 이동하면 수행해야하는 평가 수가 두 배 이상 증가합니다 (9에서 19), 평가를 마치면 단계 방향 / 크기 계산의 복잡성이 증가한 것은 말할 것도 없지만, 반으로 가야하는 단계 수를 거의 확실하게 줄일 수는 없습니다.

knth(k+n1k1)


3
고 파생 상품을 어떻게 활용하고 있는지 설명해 주 시겠습니까?
whuber

5
@whuber OP가 말하는 것은 매우 분명한 사실은 Newton의 최적화 방법입니다. 문제는 "뉴턴의 방법이 왜 1 차 및 2 차 파생 상품 만 사용하고 3 차 이상의 파생 상품 만 사용 하는가?"입니다. 주제가 분명하지 않고 그가 무엇을 요구하는지 명확하지 않지만, 나는 어떤 이유로 든 투표를하기보다는 투표를하기보다는 답을 줄 것이라고 생각했습니다.
jbowman

4
+1 이것이 좋은 대답이라고 생각하지만, 테일러 확장을 기반으로 무엇을하고 있는지 보여줌으로써 개선 될 수 있습니다.
Matthew Drury

8
아주 성공적인 컨설턴트이기도 한 교수 중 한 사람이 우리에게 한 번 말했다. 시장에 내놓기 전에 " Newton을 사용하는 요점은 계산을 저장하는 것입니다. 그렇지 않으면 철저한 검색을 수행합니다. 3 차원 문제에 3 차 미분을 추가하면 함수가 ~ 입방이 아닌 한 반복이 크게 줄어 각 단계에서 계산의 배가를 거의 지불하지 않을 것입니다.
jbowman

9
아니요, 그렇지 않습니다. 처음 나타날 수있는 것보다 조금 더 깊은 의견입니다. 요점은 두 가지입니다. 처음에는 좋은 것처럼 보이지만 전혀 분명하지 않은 이유로 생각하지 않는 경우가 많으며, 혁신의 진정한 열쇠는 아이디어 자체가 아니라 결함을 극복하거나 해결할 수있는 무언가 일 수 있습니다. 아이디어. 사실상 이러한 추론은 그 점을 지적하고 아이디어에서 약점을 찾도록 지시합니다. 포기하는 것이 아니라 생각을하는 것에 관한 것이며 비판적인 시각을 가지고 있습니다.
jbowman

22

이 질문의 통계적 측면이 무엇인지 알지 못하므로 최적화 부분에 대답하겠습니다.

수렴에는 두 ​​부분이 있습니다 : 반복 비용 및 반복 횟수

여기서 거의 모든 대답은 반복 비용에만 초점을 맞추고 반복 횟수는 무시합니다 . 그러나 둘 다 중요합니다. 1 나노초 안에 반복하지만 수렴 하는 데 반복이 필요한 방법은 아무 효과가 없습니다. 그리고 폭파되는 방법은 반복 비용이 얼마나 저렴하더라도 도움이되지 않습니다.1020

무슨 일이 일어나고 있는지 알아 봅시다.

그렇다면 :> 2 차 파생 상품을 사용하지 않는 이유는 무엇입니까?

부분적으로 (그리고 이것은 2 차에도 해당되지만 조금 더 그렇습니다) :

고차 방법은 일반적으로 최적에 가까울 때 더 빨리 수렴 합니다 .

반면에 , 최적에서 멀어지면 더 쉽게 부풀려집니다 !

(물론 이것은 항상 사실 이 아닙니다 . 예를 들어 2 차가 Newton의 방법으로 1 단계로 수렴 될 것입니다. 그러나 실제 특성이 좋지 않은 임의의 함수의 경우 일반적으로 사실입니다.)

이것은 최적에서 멀리 떨어져있을 때 일반적으로 하위 (읽기 : 1 차) 방법을 원한다는 것을 의미합니다 . 가까이있을 때만 분석법의 순서를 높이고 싶습니까?

근데 근방에 있을 때 왜 2 차로 멈춰 ?

"이차적 인"수렴 행동은 실제로 "충분히"우수하기 때문에!

이유를 확인하려면 먼저 "이차 수렴"이 무엇을 의미 하는지 이해해야 합니다 .

수학적으로 2 차 수렴은 가 반복 에서 오류 인 경우 일부 상수 대해 다음이 사실임을 의미합니다 .ϵkkc

|ϵk+1|c |ϵk|2

평범한 영어로, 이것은 당신이 최적 (중요!)에 가까워지면, 모든 추가 단계 는 정확도의 수를 두 배로 합니다 .

왜? 예를 들어 쉽게 볼 수 있습니다 : 및 경우 , 등이 엄청나게 빠릅니다. . ( 초 지수입니다 !)c=1|ϵ1|=0.1|ϵ2|0.01|ϵ3|0.0001

왜 2 차가 아닌 1 차에서 멈추지 않겠습니까?

실제로, 2 차 파생 상품이 너무 비싸면 사람들은 종종 이것을합니다. 그러나 선형 수렴은 매우 느릴 수 있습니다 . 예를 들어 가 있다면 선형 수렴으로 10,000,000 회 반복하여 를 얻지 만 2 차 수렴으로 23 회만 반복해야합니다. 따라서 선형 및 2 차 수렴간에 급격한 차이 가있는 이유를 확인할 수 있습니다 . 이다 없습니다 (예를 들어, 다음 단락 참조) 2 차 및 3 차 융합 마찬가지.ϵk=0.9999999|ϵ|<0.5

이 시점에서 컴퓨터 과학을 알고 있다면 2 차 수렴을 통해 문제가 이미 해결 되었음을 알 수 있습니다 . 왜 여기에 이유가 표시되지 않는 경우 :에서 얻을 수있는 실제 아무것도 없다 배로 자릿수마다 반복을 대신 배로 은 - 무엇을 당신을 살거야? 결국, 컴퓨터에서- double정밀도 숫자 조차도 52 비트의 정밀도 (약 16 자리)입니다. 어쩌면 그것은 필요한 단계 수를 16에서 3으로 줄입니다 ... 각각의 반복 마다 차원저주 인 3 차 미분 을 계산해야한다는 가격에 도달 할 때까지 훌륭하게 들립니다.당신을 강타합니다. A의 차원 문제, 당신은 단지 배 지급 배 얻기 위해 바보입니다. 그리고 실제 세계에서 문제는 단지 개가 아니라 적어도 수백 가지 의 차원 (또는 수천 또는 수백만)을 가지고 있습니다 ! 따라서 20,000의 요소를 지불함으로써 20의 요소를 얻을 수 있습니다 ... 현명한 트레이드 오프는 거의 없습니다.6656

그러나 차원의 저주가 이야기의 절반이라는 것을 기억하십시오 .

다른 절반은 일반적으로 최적에서 멀어지면 더 나쁜 행동을 하는데 이는 일반적으로 반복 횟수에 악영향을 미칩니다.

결론

일반적인 설정에서 2보다 높은 차수의 방법은 나쁜 생각입니다. 물론 테이블에 도움이되는 추가 가정을 가져올 수있는 경우 (예 : 데이터 고도 다항식과 유사하거나 최적의 위치를 ​​제한하는 방법 등이있는 경우) 좋은 생각이지만 문제 별 결정이 될 것이며 일반적인 규칙은 아닙니다.


좋은 대답이지만, Abel-Ruffini 정리는 붉은 청어라고 생각합니다. 우선, 우리는 다변량 문제에 대해 이야기하고 있으므로, 제로의 다변량 다항식을 계산하는 것은 기껏해야 제한적인 관심의 하위 문제입니다. 그리고 더 중요한 것은 솔루션에 대해 닫힌 수식이 있는지 여부는 중요하지 않습니다. 실제로 사람들은 4 차 다항식에도 닫힌 수식을 사용하지 않습니다. 너무 길고 복잡하고 불안정합니다. 실제로 0의 다항식은 수치 적으로 계산됩니다 (컴패니언 매트릭스에서 QR 사용).
Federico Poloni

@FedericoPoloni : 예, 그것을 넣기로 결정했을 때 같은 생각이 떠 올랐습니다. 원래는 없었습니다 ... 나는 왜 더 높은 학위를 가질 수 있는지에 대한 또 다른 예라고 생각할 수도 있습니다. 예기치 않은 문제. 그러나 도움이되지 않으면 다시 가져 와서 의견을 보내 주셔서 감사합니다.
Mehrdad

@FedericoPoloni : PS 수치 계산에 관한 주제 인 동안 Sturm 함수는 흥미로울 것입니다 (아직 들어 보지 못한 경우).
Mehrdad

7

계산하는 것조차 꽤 많은 작업입니다

H=[2fx122fx1x22fx1xn2fx2x12fx222fx2xn2fxnx12fxnx22fxn2].

이제 세 번째 미분이 어떻게 보이는지보십시오 : 이것은 3 차원 행렬입니다. 요소는 다음과 같습니다.

H/x=[Hx1Hx2Hxn]
(H/x)ijk=3fxixjxk

여섯 번째 미분은 6 차원 행렬입니다 :

6fxixjxkxlxmxn

일반적으로 트레이드 오프는 헤 시안보다 높으면 좋지 않습니다. 나는 잡음 증폭과 비교하여 더 높은 차수 근사를 사용함으로써 잠재적 인 속도 이득 간의 절충을 의미합니다. 통계 애플리케이션에 대해 이야기하고 있기 때문에 항상 입력에 노이즈가 있습니다. 이 노이즈는 미분에 의해 증폭됩니다.

골프를한다면 최적화의 비유는 먼저 녹색에 도달하려고 노력하는 것입니다. 일단 녹색에 구멍을 뚫을 것입니다.


4

일반적으로 이러한 알고리즘의 효과를 분석하면 2 차 알고리즘의 2 단계와 거의 동일한 효과를 갖는 4 차 알고리즘의 1 단계와 같은 결과가 나타납니다.

따라서 사용할 알고리즘의 선택은 상대적으로 간단합니다. 4 차 알고리즘의 한 단계가 2 차 알고리즘의 두 배나 많은 작업을 수행하거나 2 차 알고리즘의 한 단계 이상을 수행하는 경우 대신 후자를 사용해야합니다.

이것이 이런 종류의 방법의 전형적인 상황입니다. 고전적인 알고리즘은 일반적인 문제에 대한 최적의 작업 대 효과 비율을 갖습니다. 고차 접근 방식이 비정상적으로 계산하기 쉽고 고전적 변형을 능가 할 수있는 문제가 가끔 발생하지만 상대적으로 드문 경우입니다.


2

미분의 순서를 함수에 대한 다항식 근사의 순서로 생각할 수 있습니다. 대부분의 최적화 루틴은 볼록함에 의존합니다. 2 차 다항식은 모든 곳에서 볼록 / 오목되는 반면 3 차 이상의 다항식은 모든 곳에서 볼록하지 않습니다. 이러한 이유로 대부분의 최적화 루틴은 2 차로 볼록 함수의 연속 근사에 의존합니다. 볼록한 2 차 근사화는 2 차가 볼록하기 위해서는 양의 한정 조건이 부과되어야한다.


3
아닙니다. 2 차는 반드시 볼록하거나 오목하지는 않습니다 ( ). x2y2
Dirk

@ 더크 는 무엇과 같습니까? x2y2
Ovi

1
이차 함수이지만 볼록하거나 오목하지 않습니다.
Dirk

@ Dirk 네, 맞습니다. 긍정적 인 반정의주의 사항을 추가해야합니다. 나는 그것을 내 대답에 추가 할 것입니다.
Lucas Roberts

1

SGD 수렴을위한 3 차 방법을 방어하는 유일한 방법이 되겠지만, 전체 공간에서 계수 가 필요한 것은 아니지만, 예를 들어 단 하나의 방향만으로도 단 하나의 추가 계수 만 있으면됩니다. 이 방향으로 이미 2 차 모델이 있습니다.dim3/6

단방향 3 차 모델이 유용한 이유는 무엇입니까? 예를 들어,이 방향으로 2 차 도함수에 가깝기 때문에 기본적으로 두 가지 대안 시나리오가 있습니다. 고원 또는 변곡점-전자에만 큰 단계 크기가 필요하고 3 차 도함수는이를 구별 할 수 있습니다.

나는 우리가 하이브리드 다차원 방법으로 갈 것이라고 믿는다 : 예를 들어 최근의 기울기의 PCA와 같은 저 차원 부분 공간에서의 2 차 방법, 여전히이 부분 공간에 직교하는 기울기의 부분을 향한 무료 1 차 동시 기울기 하강을 허용 하는가 ... 가장 관련성이 높은 단일 방향에 대한 3 차 모델을 추가합니다.

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