최근 읽고있는 논문에서 Bregman divergence가 나와 의미를 알아보려 한다.
Bregman Divergence
직역하면, (1) F(p)-F(q) 과 (2)F(q)의 derivative(기울기)와 p-q 두 사이의 내적 의 차[ (1) - (2)]
러프하게 분홍색 양방향 화살표가 최종적으로 구하고자 하는 값
예제를 한가지 들면 F(x) = x^2이라고 정의하면
B_F식에 의해 p^2-q^2 - <p-q,2q> = |p-q|^2 이 나온다.
B_F는 다음과 같은 특성을 가지고 있다.
어떻게 응용할 수 있을까?
symmetric과 triangle inequality 일 필요 없다. 즉, 이 조건을 만족하지 못하는 거리척도이다. 그러나 Opitimization 계열의 알고리즘에서는 매우 핵심적인 역할을 하는 척도이다. 왜냐하면 convexity와 밀접한 연관이 있기 때문이다. 볼록 함수는 광범위 하게 적용가능하지만 충분히 흥미롭다. B_F는 볼록 함수와 해당 접선 사이의 간격을 측정하기 때문에 convex function에서 얻은 다양한 결과를 통해 일반적인 결과를 얻을 수 있기 때문에 머신러닝에서의 활용도가 꽤 높다
뿐만아니라 이 것을 통해 KL divergence의 일반화를 구할 수 있다.
'개발로그' 카테고리의 다른 글
Overall Accuracy와 Mean accuracy의 차이 (0) | 2022.05.04 |
---|---|
우분투 gpu 메모리 사용량 확인법 (0) | 2022.05.03 |
vscode matplotlib에서 이미지나 표가 안보일때 (0) | 2022.02.21 |
Docker 에서 bash: sudo: command not found 문제 해결 (0) | 2022.01.13 |
동일 위치 폴더에서 sys.path.append를 이용해 가져오기 (0) | 2022.01.12 |