유사도 학습
유사도 학습(Similarity learning)은 인공지능에서 지도 학습의 한 분야이다. 회귀 및 분류와 밀접한 관련이 있지만, 두 객체가 얼마나 유사하거나 관련이 있는지를 측정하는 유사도 함수를 학습하는 것이 목표이다. 순위 매기기, 추천 시스템, 시각적 신원 추적, 얼굴 인증, 화자 인증 등에 응용된다.
학습 설정
유사도 및 거리 측정 학습에는 네 가지 일반적인 설정이 있다.
*** 회귀 유사도 학습*** 이 설정에서는 객체 쌍 (x_i^1, x_i^2) 이 유사도 측정값 y_i \in R 과 함께 주어진다. 목표는 모든 새로운 레이블된 삼중항 예제 (x_i^1, x_i^2, y_i)에 대해 f(x_i^1, x_i^2) \sim y_i 를 근사하는 함수를 학습하는 것이다. 이는 일반적으로 정규화된 손실 \min_W \sum_i loss(w;x_i^1, x_i^2,y_i) + reg(w)을 최소화하여 달성한다. *** 분류 유사도 학습*** 유사한 객체 쌍 (x_i, x_i^+) 과 유사하지 않은 객체 쌍 (x_i, x_i^-)이 주어진다. 동등한 공식화로, 모든 쌍 (x_i^1, x_i^2)에 두 객체가 유사한지 아닌지를 결정하는 이진 레이블 y_i \in {0,1}이 함께 주어진다. 목표는 마찬가지로 새로운 객체 쌍이 유사한지 아닌지를 판별할 수 있는 분류기를 학습하는 것이다. *** 순위 유사도 학습*** 미리 정의된 순서에 따라 상대적 유사도를 갖는 객체 삼중항 (x_i, x_i^+, x_i^-)이 주어진다: x_i는 x_i^-보다 x_i^+에 더 유사한 것으로 알려져 있다. 목표는 임의의 새로운 객체 삼중항 (x, x^+, x^-)에 대해 f(x, x^+) > f(x, x^-)를 만족하는 함수 f를 학습하는 것이다(대조 학습). 이 설정은 정확한 유사도 측정값을 제공하는 대신 유사도의 상대적 순서만 제공하면 되므로, 회귀보다 약한 형태의 지도를 가정한다. 이러한 이유로 순위 기반 유사도 학습은 실제 대규모 응용에 더 쉽게 적용할 수 있다.^10 지역 민감 해싱(LSH)[^11] 입력 항목을 해싱하여 유사한 항목이 높은 확률로 메모리의 동일한 "버킷"에 매핑되도록 한다(버킷의 수는 가능한 입력 항목의 전체 공간보다 훨씬 작다). 이미지 데이터베이스, 문서 컬렉션, 시계열 데이터베이스, 유전체 데이터베이스 등 대규모 고차원 데이터에서의 최근접 이웃 탐색에 자주 적용된다.^12
유사도를 학습하는 일반적인 접근 방식은 유사도 함수를 쌍선형 형식으로 모델링하는 것이다. 예를 들어, 순위 유사도 학습의 경우 유사도 함수 f_W(x, z) = x^T W z 를 매개변수화하는 행렬 W를 학습하는 것을 목표로 한다. 데이터가 풍부한 경우, 일반적인 접근 방식은 매개변수 공유를 사용하는 심층 네트워크 모델인 샴 네트워크를 학습하는 것이다.
메트릭 학습
유사도 학습은 거리 메트릭 학습과 밀접한 관련이 있다. 메트릭 학습은 객체 간의 거리 함수를 학습하는 과제이다. 메트릭 또는 거리 함수는 비음수성, 식별 불가능자의 동일성, 대칭성, 그리고 열가법성(또는 삼각 부등식)의 네 가지 공리를 만족해야 한다. 실제로 메트릭 학습 알고리즘은 식별 불가능자의 동일성 조건을 무시하고 의사 메트릭을 학습한다.
객체 x_i가 R^d의 벡터일 때, 대칭 양의 반정치 원뿔 S_+^d에 속하는 임의의 행렬 W는 D_W(x_1, x_2)^2 = (x_1-x_2)^{\top} W (x_1-x_2)의 형태를 통해 x 공간의 거리 의사 메트릭을 정의한다. W가 대칭 양의 정치 행렬일 때, D_W는 메트릭이다. 더 나아가, 임의의 대칭 양의 반정치 행렬 W \in S_+^d는 L \in R^{e \times d}이고 e \geq rank(W)일 때 W = L^{\top}L로 분해될 수 있으므로, 거리 함수 D_W는 D_W(x_1, x_2)^2 = (x_1-x_2)^{\top} L^{\top}L (x_1-x_2) = | L (x_1-x_2) |_2^2로 동등하게 다시 쓸 수 있다. 거리 D_W(x_1, x_2)^2=| x_1' - x_2' |_2^2는 변환된 특징 벡터 x_1'= Lx_1과 x_2'= Lx_2 사이의 유클리드 거리에 해당한다.
메트릭 학습을 위한 많은 공식화가 제안되었다.[^1][^2] 메트릭 학습의 잘 알려진 접근법으로는 트리플렛 손실에 기반한 상대적 비교를 통한 학습,^3 대마진 최근접 이웃,^4 그리고 정보 이론적 메트릭 학습(ITML)[^5] 등이 있다.
통계학에서는 데이터의 공분산 행렬이 때때로 마할라노비스 거리라 불리는 거리 메트릭을 정의하는 데 사용된다.
응용 분야
유사도 학습은 정보 검색에서의 순위 학습, 얼굴 인증 또는 얼굴 식별,[^6][^7] 그리고 추천 시스템에서 사용된다. 또한, 많은 기계 학습 접근법이 특정 메트릭에 의존한다. 여기에는 가까운 또는 유사한 객체를 그룹화하는 군집화와 같은 비지도 학습이 포함된다. 또한 새로운 객체의 레이블을 결정하기 위해 인근 객체의 레이블에 의존하는 K-최근접 이웃 알고리즘과 같은 지도 학습 접근법도 포함된다. 메트릭 학습은 이러한 많은 접근법의 전처리 단계로 제안되었다.[^8]
확장성
메트릭 및 유사도 학습은 입력 공간의 차원에 대해 이차적으로 확장되며, 이는 학습된 메트릭이 쌍선형 형태 f_W(x, z) = x^T W z 를 가질 때 쉽게 알 수 있다. 더 높은 차원으로의 확장은 HDSL^9과 COMET^13에서 수행한 것처럼 행렬 모델에 희소성 구조를 적용함으로써 달성할 수 있다.
소프트웨어
*metric-learn[^14]은 여러 지도 및 약지도 유사도와 메트릭 학습 알고리즘의 효율적인 구현을 제공하는 자유 소프트웨어 파이썬 라이브러리이다. metric-learn의 API는 scikit-learn과 호환된다.^15
- OpenMetricLearning[^16]은 고품질 임베딩을 생성하는 모델을 훈련하고 검증하기 위한 파이썬 프레임워크이다.
추가 정보
이 주제에 대한 추가 정보는 Bellet 등[^1]과 Kulis[^2]의 메트릭 및 유사도 학습에 관한 개관 논문을 참조하라.
같이 보기
*커널 방법 *잠재 의미 분석 *순위 학습
참고 문헌
[^1]: 특징 벡터 및 구조화된 데이터를 위한 메트릭 학습 서베이
[^2]: cite journal last = Kulis first = B. title=메트릭 학습: 서베이 journal=Foundations and Trends in Machine Learning volume = 5 issue = 4 pages = 287–364 year=2012 url=https://www.nowp
[^5]: cite journal last1 = Davis first1 = J. V. last2 = Kulis first2 = B. last3 = Jain first3 = P. last4 = Sra first4 = S. last5 = Dhillon first5 = I. S. title=정보 이론적 메
[^6]: cite book last1 = Guillaumin first1 = M. last2 = Verbeek first2 = J. last3 = Schmid first3 = C. chapter = 그게 당신인가요? 얼굴 식별을 위한 메트릭 학습 접근법 pages = 498–50
[^7]: cite book last1 = Mignon first1 = A. last2 = Jurie first2 = F. chapter = PCCA: 희소 쌍별 제약 조건으로부터의 거리 학습을 위한 새로운 접근법 pages = 2666–2672 title=2012 IEEE Conf
[^8]: cite journal last1 = Xing first1 = E. P. last2 = Ng first2 = A. Y. last3 = Jordan first3 = M. I. last4 = Russell first4 = S. title=거리 메트릭 학습, 클러스터링에의 응용
[^11]: Gionis, Aristides, Piotr Indyk, and Rajeev Motwani. "해싱을 통한 고차원 유사성 검색." VLDB. Vol. 99. No. 6. 1999.
[^14]: cite web url=https://github.com/scikit-learn-contrib/metric-learn title=Scikit-learn-contrib/Metric-learn website=[[GitHub]]
[^16]: cite web url=https://github.com/OML-Team/open-metric-learning title=OML-Team/Open-metric-learning website=[[GitHub]]
관련 인사이트

공장의 뇌는 어떻게 생겼는가 — 제조운영 AI 아키텍처 해부
지식관리, 업무자동화, 의사결정지원 — 따로 보면 다 있던 것들입니다. 제조 AI의 진짜 차이는 이 셋이 순환하면서 '우리 공장만의 지능'을 만든다는 데 있습니다.

그 30분을 18년 동안 매일 반복했습니다 — 품질팀장이 본 AI Agent
18년차 품질팀장이 매일 아침 30분씩 반복하던 데이터 분석을 AI Agent가 3분 만에 해냈습니다. 챗봇과는 완전히 다른 물건 — 직접 시스템에 접근해서 데이터를 꺼내고 분석하는 AI의 현장 도입기.

ERP 20년, 나는 왜 AI를 얹기로 했나
ERP 20년차 제조IT본부장의 고백: 3,200만 행의 데이터가 잠들어 있었다. ERP를 바꾸지 않고 AI를 얹자, 일주일 걸리던 불량 분석이 수 초로 줄었다.