목표 이웃과 침입자
각 훈련점에 대해 같은 레이블의 목표 이웃을 정한다. 학습은 이 이웃까지의 거리를 줄이는 동시에 다른 레이블의 점이 그 근처에 들어오면 벌점을 준다. 같은 범주의 모든 점을 무조건 한 점으로 모으기보다 지정한 지역 이웃 관계를 중심으로 목적을 구성한다.
힌지 벌점의 계산
제곱 거리 dM(i,j)를 사용하면 대표적인 침입자 벌점은 max(0,1+dM(i,j)−dM(i,l))다. 목표 이웃 j까지가 1이고 다른 범주의 l까지가 1.5라면 벌점은 0.5다. 침입자까지의 거리가 3이면 같은 목표 거리에서 벌점은 0이다.
양의 준정부호 거리
거리 행렬 M을 양의 준정부호로 제한해 (x−y)ᵀM(x−y)가 음수가 되지 않도록 한다. 예를 들어 M=diag(4,1)이고 두 점의 차이가 (1,2)이면 제곱거리는 4+4=8이다. 원래 좌표의 첫 방향에 더 큰 가중치를 준 계산이다.
볼록성의 조건
목표 이웃을 고정하면 M에 대한 거리 항은 선형이고 힌지 항은 볼록이므로 양의 준정부호 제약 아래 볼록 최적화로 다룰 수 있다. 저차원 분해 M=LᵀL를 직접 학습하거나 이웃 집합까지 바꾸는 절차는 같은 볼록성 주장을 자동으로 이어받지 않는다. 학습된 거리의 성능은 별도 자료로 확인한다.
관련 문서
이웃 성분 분석 / 마할라노비스 거리 / 볼록 최적화 / 힌지 손실 / 양의 준정부호 행렬 / 최근접 이웃 탐색