metric learning

이번 리뷰는 네이버 세미나의 연장선상에 있습니다.

네이버 세미나에서 알게된 논문의 base에 있는 metric learning 기법과 기존에 우리가 했던 classification과 어떤 차이가 있고 왜 도입되었는지가 궁금했고

이번에는 그것에 대해 공부해 보았습니다.

Metric Learning

컴퓨터 비전(Computer Vison)에서 Metric Learning이란 것은 머신러닝의 일종으로 지금까지의 단순한 Classification을 하기 위한 알고리즘과는 다르다.

Metric Learning이라는 것은 단순히 표현을 학습하는 일반적인 딥러닝 과정에서 더 확장된 개념으로 이해할 수 있다. Metric Learning의 목적은 각 Sample을 설명할 수 있는 Feature를 추출하는 것이다. 그리고 이렇게 추출된 Feature들은 서로 다른 정보로 구성되어 있다. 그리고 추출된 Feature의 유사성을 검토하여 샘플을 분리하는 것이 목적이다. 이런 유사성 검토의 기본은 Euclidean Distance가 바탕이된다.

과거 두 샘플의 대한 유사성을 검증하는 방법으로 가장 기초적인 방법인 Euclidean Distance를 조사하는 것으로부터 시작되었다. 그러나 단순한 Euclidean Distance는 그 성질이 매우 다를 경우가 아니라면 둘 이상의 사이를 분류하는 것에 큰 어려움이 있었으며, SIFT라는 기법이 먼저 적용되어 사용되기 시작했다. 그리고 최근 하드웨어의 성능이 급격하게 성장됨에 따라 딥러닝을 적용한 특징 추출로서 더욱 높은 결과를 가져오기 시작했다.

CNN의 한계

이미지 학습은 어찌됐건 컴퓨터에 의한 학습이기 때문에 모든 데이터를 정수형 또는 플롯형 데이터로 변환하여 해당 데이터들이 표현하는 특징의 대한 Texture shape를 학습한다. 그 이유는 기본적으로 학습 방법이 Euclidean Distance에 기반하기 때문에 각 요소들 사이의 그 관계를 단순한 정수또는 플롯값 구조에 기반하여 학습하기 때문이다.

따라서 실제로 CNN 기반의 데이터 중에서 가장 어려운 분야가 서로 유사성을 가지는 데이터에서 서로 다른 특징을 가지는 데이터들간의 분류다. 결국엔 CNN은 모양에 따른 서로 다른 분류는 가능하지만, 각 모양내 서로 다른 패턴별로 이미지를 분류하는 것은 매우 어렵다.

Triplet Network

Metric Learning의 목적은 이처럼 서로 다른 특징으로 분류해야만 하지만, Texture 구조가 유사하여 같은 공간 내 있는 데이터를 떨어뜨리는 것에 있다.

그러나 기존 CNN 방식으로는 한계점이 존재했는데, 이를 해결하는 방법으로서 조금 무거운 방법이 제안되었으며, 이를 Triplet Network라고 한다.

Triplet Network의 목적은 기준 데이터로부터 근사한 데이터는 가깝게, 근사하지 않은 데이터는 멀리 떨어뜨려서 적절한 분리 공간에 배치하도록 하는 것이 목적이다.

이것이 가능한 이유는 딥러닝의 특징이 가중치를 업데이트 하는 것에 있는데, 표현 기반의 학습을 수행에서 FV/VLAD와 같은 서술된 특징으로부터 Metric을 정의할 수 있다.

[1] FaceNet: A Unified Embedding for Face Recognition and Clustering

[2] SIFT Meets CNN: A Decade Survey of Instance Retrieval

[3] Deep Metric Learning with Angular Loss

[4] DEEP METRIC LEARNING USING TRIPLET NETWORK

Author: rcvlab

RCV연구실 홈페이지 관리자 입니다.

1 thought on “metric learning

  1. Triplet Network는 Triplet Loss와 다른 건가요?

    기존 CNN의 한계점이 존재하니 이를 보완하고자 Triplet Network가 제안됐다고 하셨는데, 기존 CNN loss를 유클리디안 말고 Triplet Loss를 사용하면 된다는 것인지, 아니면 따로 Triplet Network라는 새로운 네트워크가 있는 것인지 여쭙고 싶습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다