Quasi-Newton Computation flow:
Advantages
Disadvantages
🌊 Recent research topics:
- Improves hessian approximations.
- Parallelization and distributed computing.
- Application to machine learning.
- Understanding the convergence properties and establishing better stopping criteria.
condition number : ratio of its largest and smallest eigenvalues
eigenvalues 의 비율차이가 너무 클 때
→ 벡터에 매트릭스를 곱하는 것이 Transform(회전 + 늘리는 것)을 의미했었다. 이때 가하는 힘을 e1, e2이렇게 나누어 표현했는데 만약 e1이 엄청 크고 e2가 엄청 작다면, e1가 가까운 쪽으로 움직이면 변화율이 엄청 크고 반대는 엄청 작다.
→ 분명 같은 timestamp로 움직이는데 한쪽 축으로는 팍 움직이게 된다.
→ delta x
를 얼마나 설정하게 되느냐에 따라 수렴을 할 수 있을지 없을지 결정되는데 그래프의 변화율이 너무 커진다.
🌊 This can arise from various sources:
🌊 This can be mitigated by using:
한 마디로 그냥 명칭이다.
Positive-definite
and positive-semidefinite
은 convex optimization이라는 것에 기본이 된다
→ 포인트 p에서 헤시안 매트릭스가 양수이면 이 함수는 p에서 convex하다
→ p로 수렴한다는 것을 보장할 수 있다. itertative를 돌면 더 나은 해를 찾을 수 있는 것이 보장된다.
🌊 Definite matrix의 용도
- Definite matrices are important in optimization problems
→ curvature of the objective function를 제공하기 때문
→ 이 문제가 풀 수 있는지 없는지 판단할 때 이것이 positive인지 negative인지 판단하면 얼추 맞는다. 즉 많은 계산을 사전에 하지 않고도 문제가 풀리지 풀리지 않을 지 판단이 가능해진다.
The properties of positive-definite matrix M
include
1) all eigenvalues are positive
2) the matrix is invertible (역행렬가능)
3) the matrix is symmetric
positive definite matrice는 convex functions에 매칭이 되고
하나의 global minimum 값을 갖는다
⇒ optimization 문제가 하나의 해를 갖는 것을 보장한다
The properties of negative-definite matrix M
include
1) all eigenvalues are negative
2) the matrix is invertible
3) the matrix is symmetric.
그림에서 indefinite
(3번째) 경우
반드시 글로벌 미니멈이나 맥시멈으로 도달한다는 보장이 없다.
⇒ 문제를 optimization problem으로 풀 수 있을지도 없을지도 모를 때 definite matrix 성질을 이용해 미리 판단할 수 있다.
root finding 알고리즘이다.
→ 뉴턴 메소드랑 비슷한 느낌을 가진다.
two previous points 를 이용해서 현재 추정중인 것의 일차 미분을 추정한다,
secant : 커브에서 두개의 distinct 포인트를 연결한 하나의 선을 말한다.
→ 원에서 지름을 지나지 않는 선
🌊일차 미분을 구할 수 없을 때 사용한다.
→ 함수 자체가 불가하거나 computational cost 때문에
→ 점 두개 이용해서 x증가량 y증가량 이용해서 마치 미분처럼 구할 수 있다.
→ 이차로 넘어가면 이전 두개 점에서의 일차미분과 값들을 이용해 구할 수 있다.
continuous function f(x)
Lagrange multipliers 가 오브젝티브 함수에 적용
맥시멈 포인트를 찾고 있다면 등고선이어서 가운데로 갈 수록 값이 커진다.
→ g(x,y)로 constraint를 건다. 이 빨간선 위로는 넘어오면 안된다고 정하는 것이다.
🌊 method overview
⇒ multivariate 문제는 다루지 않는다. 너무 어렵기 때문^^
ill-conditioned problem
도 배우고 수렴하는지 수렴하지 않는지 사용하기 위해 Difinite Matirx
도 배우고 secant method
이전 두 점의 일차 미분을 이용해 이차미분을 구할 수 있다는 것을 위에서 다루었다. Quasi-Newton을 수학적으로 정리하기 위해 필요한 Frobenius norm
, Lagrange Multiplier
도 배웠다. 이 내용을 바탕으로 Quasi-Newton Method를 설명하고자 한다.
어떤 함수의 gradient = 0
이되는 점을 즉 일차 미분이 0
이 되는 점을 찾는 것이다.
optimum region 근처에서는 Quadratic적으로 approximartion이 가능하기 때문에 수렴이 가능하다. 그렇기에 그 점 근처에서 gradient와 Hessian을 사용해서 그 쪽으로 향하도록 한다.
→ 여기 분모에 들어가는 헤시안을 approximation 할 것이다.
→ 다시 구하는 것이 아닌 이전에 구한 을 사용해 헤시안을 업데이트 한다. 이를 통해 코스트를 줄일 것이다.
positive-definite matrix B를 이용한다.
이를 오브젝티브 함수의 그라디언트 정보를 이용해 업데이트 한다.
secant equation plays a crucial role in computing Hessian approximation based on the gradient information
B
로 표기⇒ 여기까지는 Hessian Matrix를 일차미분 gradient로 부터 계산해내는 방법을 이야기 했다.
- 이전 스텝의 Hessian을 사용해서 현재 Hessian을 업데이트 하는 방법론
- There are several algorithms for updating B
하지만 학부생 수준에서 다루기에는 어렵기 때문에 BFGS의 기본이 되는 Broyden Method Derivation를 다루도록 한다.
지금 하고자 하는 것은 업데이트 전과 후가 비슷하도록 만드는 것이다.
secant
성질을 만족해야한다 그래서 (subject to ~) 문장을 조건으로 건다.
⇒ 무언가 minimize 하는데 constraint가 걸려있다 => Lagrange
등장!
Here, Lagrange multiplier λ is used to form the Lagrangian:
🌊 핵심 2가지 아이디어
- Hessian 을 업데이트 할 때 이 둘은 거의 차이가 없다.
- 그 때 이 것은 secant 성질을 만족한다
해당 포스트는 강형엽 교수님의 게임공학[GE-23-1] 수업을 수강하고 정리한 내용입니다.