KR20230049025A - 차원 축소 모델 및 그 훈련 방법 - Google Patents

차원 축소 모델 및 그 훈련 방법 Download PDF

Info

Publication number
KR20230049025A
KR20230049025A KR1020220121824A KR20220121824A KR20230049025A KR 20230049025 A KR20230049025 A KR 20230049025A KR 1020220121824 A KR1020220121824 A KR 1020220121824A KR 20220121824 A KR20220121824 A KR 20220121824A KR 20230049025 A KR20230049025 A KR 20230049025A
Authority
KR
South Korea
Prior art keywords
training
vectors
vector
dimensional
dimensionality reduction
Prior art date
Application number
KR1020220121824A
Other languages
English (en)
Inventor
칼란티디스 요안니스
랄러스 다이앤
알마잔 존
라상스 카를로스
Original Assignee
네이버 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 네이버 주식회사 filed Critical 네이버 주식회사
Publication of KR20230049025A publication Critical patent/KR20230049025A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

차원 축소(dimensionality reduction) 모델을 훈련시키기 위한 방법들 및 시스템들이 제공된다. 더 높은 차원 공간에서 근접하게 위치된 훈련 벡터들의 쌍들이 생성된다. 저차원 벡터 쌍들은 차원 축소 모델을 사용하여 제1 및 제2 훈련 벡터들을 인코딩함으로써 생성되고, 증강 차원 벡터 쌍들은 더 많은 차원들을 갖는 증강 차원 표현 공간에 투영함으로써 생성된다. 유사성 보존 손실 및 중복 감소 손실이 계산되고 차원 축소 모델의 파라미터들을 최적화하는 데 사용된다.

Description

차원 축소 모델 및 그 훈련 방법{DIMENSIONALITY REDUCTION MODEL AND METHOD FOR TRAINING SAME}
우선권 주장
본 출원은 2021년 10월 5일자로 출원된 미국 가특허 출원 제63/252,380호에 대한 우선권의 이익을 주장하며, 그 출원의 전체 내용이 본 명세서에 참고로 포함된다.
기술분야
본 개시내용은 일반적으로 기계 학습에 관한 것으로, 보다 구체적으로는 입력의 차원을 축소하는 신경망 모델들을 훈련시키기 위한 방법들 및 시스템들에 관한 것이다.
많은 기계 학습 애플리케이션들이 많은 차원들을 갖는 특징 벡터들을 처리한다. 그러나, 고차원 벡터들을 조작하는 데는 몇 가지 단점들이 있다. 따라서, 그러한 벡터들의 저차원 버전들로 작업하는 것이 종종 유용하거나 필요하다. 이러한 경우들에서, 차원 축소(dimensionality reduction) 접근법이 적용될 수 있다.
차원 축소는 하나 이상의 작업들을 수행하도록 구성된 기계 학습 시스템의 중요한 구성요소 또는 심지어 유일한 구성 요소일 수 있다. 예를 들어, 차원 축소는 뒤따르는 사용들 및 애플리케이션들에 필요한 계산 비용 또는 훈련 시간을 감소시킬 수 있다. 일부 경우들에서, 차원 축소된 데이터로 작업하는 것은 훈련 또는 작업 성능을 향상시킬 수 있다. 차원 축소는 그 자체가 압축 작업들과 같은 최종 목표가 될 수 있다. 또한, 의미 있는 차원들을 선택/추출함으로써 알고리즘의 해석을 용이하게 할 수 있다. 추가적으로, 특징 세트를 작은 수(예컨대, 단지 2 또는 3개) 출력 차원들로 축소하는 것은 샘플들의 집합의 매우 직관적인 시각화를 가능하게 한다.
차원 축소를 적용하는 것은 본질적으로 손실을 발생시킨다. 원래 공간의 어떤 속성들이 대상 공간에서 보존되어야 하는지를 정의하는 것이 중요하다. 주성분 분석(PCA) 알고리즘 또는 t-SNE 시각화 도구에 의해 제공되는 것들과 같은, 차원 축소를 위한 인기 있는 접근 방식들은 초기 매니폴드의 전역 또는 지역 구조를 보존하고자 한다.
그러나, 이러한 방법들에는 몇 가지 단점들이 있다. 예를 들어, PCA는 선형 투영으로 제한된다. PCA는 또한 더 큰 분산들을 갖는 차원들이 더 중요하다는 가정에 의존하는데, 이러한 가정은 종종 적용되지 않으며, 지역 구조를 희생시키면서 전역 구조에 중점을 둔다. t-SNE는 지역 구조를 더 잘 인코딩하지만, 밀도들과 거리들을 제대로 보존하지 못한다.
무엇보다도 차원 축소 모델을 훈련시키기 위해 프로세서 및 메모리에 의해 수행되는 방법들 및 시스템들이 본 명세서에 제공된다. 프로세서를 사용하여 구현되고 예시적인 방법들을 사용하여 훈련된 차원 축소 모델들이 또한 제공된다. 차원 축소 모델은
Figure pat00001
-차원 표현 공간에서 입력 벡터를 수신하고,
Figure pat00002
-차원 표현 공간에서 출력 벡터를 생성하며, 여기서,
Figure pat00003
Figure pat00004
보다 더 크다. 차원 축소 모델은 하나 이상의 학습 가능한 파라미터들로 정의된다.
Figure pat00005
-차원 공간에서 훈련 벡터들의
Figure pat00006
포지티브 쌍(positive pair)들(즉, 일부 측정된 의미에서 유사하거나, 일부 측정된 의미에서 다른 샘플들보다 더 유사한 샘플들)의 배치(batch)가 생성된다. 각각의 포지티브 쌍은 제1 훈련 벡터 및 제2 훈련 벡터를 포함한다. 생성하는 것은, 각각의 포지티브 쌍에 대해:
Figure pat00007
-차원 표현 공간에서 훈련 벡터들의 세트로부터 제1 훈련 벡터를 선택하는 것; 및 제1 훈련 벡터에 근접한
Figure pat00008
-차원 공간에서 제2 훈련 벡터를 식별하는 것을 포함한다.
각각 제1 및 제2 저차원 벡터들을 제공하기 위해 차원 축소 모델을 사용하여
Figure pat00009
포지티브 쌍들의 배치의 각각의 제1 및 제2 훈련 벡터들을
Figure pat00010
-차원 표현 공간으로 인코딩함으로써 저차원 벡터 쌍들의 배치가 생성된다. 각각 제1 및 제2 증강 차원 벡터들을 제공하기 위해 차원(
Figure pat00011
)을 갖는 증강 차원 표현 공간에
Figure pat00012
저차원 벡터 쌍들의 배치의 각각의 제1 및 제2 저차원 벡터들을 투영함으로써
Figure pat00013
증강 차원 벡터 쌍들의 배치가 생성되며,
Figure pat00014
Figure pat00015
보다 더 크다.
제1 및 제2 증강 차원 벡터들 사이의 유사성(similarity) 보존 손실 및 중복 감소 손실이
Figure pat00016
증강 차원 벡터 쌍들의 배치에 대해 계산되며, 차원 축소 모델의 파라미터들은 계산된 유사성 보존 손실 및 계산된 중복 감소 손실에 기초하여 총 손실을 최소화하도록 최적화된다.
보완적인 양태에 따르면, 본 개시내용은 이전에 기술된 실시예들 및 양태들에 따른 방법들을 실행하기 위한 코드 명령어들; 및 전술한 양태들에 따른 방법을 실행하기 위한 코드 명령어들을 포함하는 컴퓨터 프로그램 제품이 저장된 컴퓨터 판독 가능 매체를 포함하는 컴퓨터 프로그램 제품을 제공한다. 본 개시내용은 이전에 기술된 실시예들 및 양태들에 따른 방법을 실행하기 위한 코드 명령어들을 사용하여 구성된 프로세서를 추가로 제공한다.
본 발명의 다른 특징들 및 이점들은 하기의 도면들과 관련하여 취한 하기의 명세서로부터 명백해질 것이다.
첨부된 도면들은 실시예들의 원리들을 설명할 목적으로 본 명세서에 통합된다. 도면은 본 발명을 예시되고 기술된 실시예들로만 제한하거나 그들이 어떻게 만들어지고 사용될 수 있는지로 제한하는 것으로 해석되어서는 안 된다. 추가의 특징들 및 이점들은, 첨부 도면들에 예시된 바와 같이, 아래 실시예들의 설명 및 더욱 구체적인 부분에서 명백해질 것이다.
도 1은 차원 축소 함수를 훈련시키기 위한 예시적인 시스템을 도시한다.
도 2는 차원 축소 함수를 훈련시키기 위한 예시적인 방법을 도시한다.
도 3은 훈련된 차원 축소 모델을 사용하여 작업을 수행하기 위한 시스템을 도시한다.
도 4는 예시적인 방법들을 수행하기 위한 예시적인 네트워크 아키텍처를 도시한다.
도 5는 훈련 방법을 수행하기 위한 예시적인 의사 코드를 도시한다.
도 6은 선형 차원 축소에 대한 작업들, 모델들 및 결과들의 요약을 도시한다.
Figure pat00017
는 레이블들이 없는 데이터세트의 사용을 나타낸다. Revaud et al., 2019 및 Caron et al., 2021로부터 GeM-AP 및 DINO 모델들이 각각 제공된다.
Figure pat00018
일때의 예시적인 방법들(TLDR) 및 PCA에 대한
Figure pat00019
의 상이한 값들이 TLDR 성능 옆에 괄호로 표시된다.
Figure pat00020
은 ViT-S/16에 대한 입력 공간(
Figure pat00021
)을 나타낸다.
Figure pat00022
은 BERT에 대한 입력 공간(
Figure pat00023
)을 나타낸다.
도 7 및 도 8은 각각 출력 차원(
Figure pat00024
)이 변경됨에 따라 ROxford5K 및 RParis6K, 평균화 Medium 및 Hard 프로토콜들에 대한 평균 정밀도(mean average precision, mAP) 결과들을 도시한 것으로, 예시적인 방법인 TLDR은 선형(TLDR), 1개의 은닉 계층이 있는 인수분해된 선형(TLDR1) 및 1개의 은닉 계층이 있는 MLP(TLDR*1)와 같은 상이한 인코더들로 수행되었으며, 투영기는 동일하게 유지된다(2개의 은닉 계층들이 있는 MLP). 또한, TLDR에 기초한 2개의 기준선들, 즉 평균 제곱 오차(MSE) 재구성 및 대조 손실로 훈련된 것 하나와 가우시안 노이즈를 사용하여 쌍들을 합성하는 TLDR(TLDRG)의 변형, 및 2개의 추가의 기준선들, 즉 화이트닝이 있는 PCA 및 투영 전의 원래 2048-차원 특징들(GeM-AP)을 비교했다.
도 9 및 도 10은 DINO ViT-S/16 백본들을 사용하여 ROxford에 대한 자기 지도 랜드마크 검색 성능을 도시한 것으로, 도 9는 ImageNet에 대해 사전 훈련된 DINO로부터의 표현들을 사용하여 출력 차원들(
Figure pat00025
)의 함수로서 ROxford에 대한 mAP를 도시하고, 차원 축소는 ImageNet(점선) 또는 GLD-2(실선)에 대해 학습되고, 도 10은 GLD-v2에 대해 사전 훈련된 DINO 모델의 표현들에 대해 GLD-v2에 대한 차원 축소를 학습할 때의 예시적인(TLDR) 방법들 및 PCA 방법들에 대한 성능을 도시한다. 레이블은 어느 단계에서도 사용되지 않았다.
도 11 및 도 12는 ImageNet에 대한, 그리고 벡터 양자화 후의 검색 결과들을 도시한다. 도 11은 Caron et al., 2021의 프로토콜을 따르고, ImageNet에서 훈련된 DINO ResNet-50 및 ViT 표현들을 사용하여 ImageNet에서
Figure pat00026
검색을 위한 출력 차원들(
Figure pat00027
)의 함수로서 Top-1 정확도를 도시한다. 도 12는 출력 벡터 크기(바이트)의 함수로서 축소된 특징들(
Figure pat00028
)의 PQ 양자화 후 ROxford에서의 mAP 성능을 도시한다.
도 13 및 도 14는 다양한 출력 차원들(
Figure pat00029
)에 대한 ArguAna에 대한 예시적인 인수(argument) 검색 결과들을 도시한 것으로, 도 13에서는 인수분해된 계층들의 양이 변경되고(
Figure pat00030
는 고정), 도 14에서는 인수분해된 계층들의 양이 2로 고정되고 k는 변경된다(
Figure pat00031
). 인수분해된 선형은 512개의 은닉된 차원들로 고정되었다.
도 15 및 도 16은 실험들에서 선형 인코더와
Figure pat00032
을 사용하여 특정 파라미터들을 변경하는 효과들을 도시한다. 변경된 파라미터들은 보조 차원(
Figure pat00033
)의 영향 및 투영기의 은닉 계층들의 수를 보여주는 투영기 계층들(도 15), 및 이웃들의 수(
Figure pat00034
)(도 16)를 포함한다. 점선(실선)들은 RParis6K-Mean(ROxford5K-Mean)에 대한 것이다.
도면들에서, 참조 번호들은 유사하고/하거나 동일한 요소들을 식별하기 위해 재사용될 수 있다.
입력 공간(초기 표현 공간), 예컨대, 입력 벡터 공간이 주어지면, 입력 공간에 정의된 근접성 또는 지역 이웃과 같은 입력 공간의 속성들을 보존하면서, 입력 공간으로부터의 벡터들을 저차원 벡터들로 변환하는 차원 축소 함수와 같은 임베딩 함수를 비지도 방식으로 학습하는 것이 유용하다. 이러한 이웃 보존 속성은 차원과 연관된 문제들을 피하거나 후속 작업들의 메모리 및 계산 비용을 감소시키기 위해 이에 제한되지는 않으나 시각화(출력 공간이 2D 또는 3D인 경우) 또는 압축과 같은 차원 축소의 많은 애플리케이션들에 중요하다. 차원 축소가 유용한 다른 예시적인 작업들에는 인덱싱 및 검색이 포함된다.
차원 축소 방법들은 선형 접근 방식과 비선형 접근 방식으로 분류될 수 있다. 특징 선택을 수행함으로써 차원 축소를 얻을 수 있다. 특징 선택 접근 방식들은 비지도 또는 지도 방식 목표에 기초하여 차원들의 작은 서브세트를 선택한다. 이러한 접근 방식들은 해석에 유용하지만, 일반적으로 다른 작업들에는 새로운 표현 공간을 직접 학습하는 방법들에 비해 성능이 떨어진다. 후자의 방법들은 데이터의 변환을 학습한다.
현재 관련 기술 분야에서 가장 일반적인 특징 투영 접근 방식은 선형 투영 함수인 주성분 분석(PCA)이지만, 커널 PCA 또는 그래프 기반 PCA와 같은 PCA의 많은 비선형 확장들이 존재한다. 오토인코더(autoencoder)들도 이 작업에 사용되었다. 비선형 차원 축소 방법들(t-SNE 및 UMAP)은 시각화를 위해 특별히 설계되었으며, 일반적으로 2D 또는 3D로 투영하는 데 적용된다. 이러한 방법들은 작은 출력 차원들(
Figure pat00035
= 2 또는 3)에 대해 성공적이었지만, 출력 차원들의 수가 적은 수의 차원들보다 클 경우에는 스케일링하기가 어렵다. 심지어 수백 개의 출력 차원들(예컨대,
Figure pat00036
= 128; 256)에 대한 매니폴드 학습의 최신 GPU 기반 스케일링 가능한 구현들을 실행하는 것이 불가능할 수도 있다.
본 명세서에 제공된 예시적인 방법들 및 시스템들은 설계에 의해 데이터 샘플들의 지역 이웃을 보존할 수 있는 차원 축소 모델을 훈련(즉, 고차원 표현 벡터를 입력으로 취하고 저차원 공간에서 벡터를 출력하는 프로세서 기반 파라미터 함수의 파라미터들을 학습)한다. 예시적인 차원 축소 모델은 예컨대, 인코더에 의해 제공되거나 또는 그에 통합되는 차원 축소 함수에 구현될 수 있다. 이러한 방법들은 선형 및 비선형 투영들에 적용될 수 있고, 고도로 스케일링 가능하고, 샘플 외(out-of-sample) 일반화를 제공할 수 있으며, 부류들 간에 높은 선형 분리성을 가진 출력 공간들을 제공할 수 있다. 사전 지식 및/또는 사람이 제공한 지도 신호들이 활용될 수 있지만, 특징 공간에 대한 사전 지식의 필요성을 피하면서 원래 표현 공간으로부터의 레이블이 없는(unlabeled) 벡터들을 사용하여 훈련이 수행될 수 있다.
자기 지도 학습(self-supervised learning)(자기 지도 표현 학습이라고도 지칭함)은 인공적으로 생성된 왜곡에 대한 불변성(invariance)을 인코딩하는 모델들을 학습함으로써 효과적이고 전달 가능한 표현 함수들을 생성하는 것으로 나타났다. 그러한 방법들의 성공은 선택된 왜곡들의 세트에 따라 달라진다. 이미지들의 경우에, 사전 확률(prior)들을 이용하여 색상 지터링(jittering), 크로핑(cropping), 회전, 대비 및 밝기 변경들과 같은 픽셀 왜곡을 수작업으로 처리한다. 이러한 이미지 왜곡에 불변하는 표현들을 학습하면서 서로 상이한 이미지들 사이의 표현들을 또한 대조(식별)하는 것이 성공적인 것으로 입증되었다. 그러나 일부 시나리오들에서는 적절한 왜곡들의 세트를 수동으로 정의하는 것이 어렵거나 심지어 불가능할 수도 있다.
본 명세서의 예시적인 방법들 및 시스템들은 신뢰할 수 있는(심지어 잠재적으로 블랙박스(black box)) 표현들과 같은, 그러나 이에 제한되지 않는 일반 입력 공간들에 대한 차원 축소 방법을 제공할 수 있다. 예시적인 훈련 방법들은 데이터가 이웃을 보존하는 것이 바람직한 신뢰할 수 있는 매니폴드(훈련 세트의 지역 기하학적 구조)에 있다는 사전 지식만으로 수행될 수 있다. 그러나 예시적인 훈련 방법들은 원하는 경우 추가 사전 지식을 사용할 수도 있다.
예시적인 훈련 방법들은 왜곡에 변하지 않는 표현들을 생성할 수 있는 차원 축소 모델을 학습하기 위해 훈련 세트로부터의 최근접 이웃들과 같은 근접하게 위치된 입력 벡터들의 쌍들과 중복 감소 손실의 조합을 사용한다. 이러한 방법들은 입력 공간의 지역 이웃들이 보존되는 저차원 공간들을 비지도 방식으로 효과적으로 학습할 수 있다. 예시적인 방법들은 예컨대, 확률적 경사 하강법을 사용하는 간단한 학습 프로세스와 함께, 상당한 성능 손실 없이 고도로 근사될 수 있는 간단한 선택적으로 오프라인의 최근접 이웃 계산을 사용할 수 있지만, 반드시 사용할 필요는 없다. 또한, 이와 같은 방법들은, 당업계에 알려진 일부 매니폴드 학습 방법들과 달리, 대조, 고유 분해(eigen-decomposition) 또는 번거로운 최적화 해결자(solvers)들을 위한 네거티브 샘플들(즉, 측정된 의미에서 다른 샘플들과 상이하거나, 측정된 의미에서 그와 덜 유사한 샘플들)을 마이닝(mining)할 필요가 없다.
차원 축소는 많은 기계 학습 시스템들의 핵심 기술이기 때문에 본 명세서에서 예시적인 차원 축소 방법들의 이점을 얻을 수 있는 작업들은 많다. 예시적인 작업들에는 텍스트 검색, 이미지 검색, 교차 모드 검색, 인공 지능(ai)-기반 서치들, "스마트 렌즈" 서치들, 지역화(localization) 작업들(예컨대, 로봇 공학 플랫폼들용), 데이터 시각화, 질문 답변 등과 같은 검색 작업들이 있다.
이제 도면으로 돌아가서, 도 1은 차원 축소 모델을 훈련시키기 위한 예시적인 시스템(100)을 도시한다. 시스템(100)의 차원 축소 모델(102)은 인코더에 구현되거나 그의 구성요소이고, 이는 더 높은 차원 표현 공간인 입력 공간, 예를 들어
Figure pat00037
-차원 공간에서 입력 벡터에 의해 표현될 수 있는 것과 같은 데이터를 수신하고, 저차원 표현 공간, 예컨대,
Figure pat00038
-차원 공간인 출력 공간에서 출력 벡터를 생성하도록 구성되며, 여기서
Figure pat00039
Figure pat00040
보다 더 크다. 예를 들어, 입력 벡터들은 하나 이상의 데이터 포인트들(104a, 104b, 104c, 104d)에 의해 제공될 수 있으며, 이들 각각은
Figure pat00041
차원들의 세트에 의해 정의될 수 있다.
데이터 포인트들(104a 내지 104d)은 다양한 처리 작업들에 사용되는 입력들을 나타낼 수 있다. 예를 들어, 각각의 데이터 포인트(104a 내지 104d)는 토큰(예컨대, 단어, 구, 문장, 단락, 기호 등), 문서, 이미지, 이미지 패치(이미지의 임의의 부분), 비디오, 파형, 3D 모델, 3D 포인트 클라우드, 테이블 형식 데이터 임베딩들 등을 표현할 수 있다.
데이터 포인트들은 다양한 소스들로부터 제공될 수 있다. 차원 축소 모델(102)을 훈련시키기 위해, 데이터 포인트들(104a 내지 104d)은 임의의 적절한 소스로부터 제공될 수 있다. 작업을 수행하기 위한 종단간(end-to-end) 시스템을 훈련시키기 위해 - 시스템은 차원 축소 모델(102)을 포함함 -, 작업을 수행하도록 시스템을 훈련시키기 위해 훈련 데이터세트로부터 데이터 포인트들이 소싱될 수 있다. 런타임(추론) 동안 작업을 수행하기 위해, 컴퓨팅 디바이스로부터 시스템에 대한 입력으로서 데이터 포인트가 생성될 수 있다.
차원 축소 모델(102)은 하나 이상의 훈련 가능한 파라미터들에 의해 정의되는 신경망에서 구현될 수 있다. 예시적인 차원 축소 모델들은 선형 인코더들, 비선형 인코더들, 인수분해된 선형 인코더들, 다층 퍼셉트론(multi-layer perceptron, MLP)들 또는 이들 중 임의의 조합에서 구현되거나 이들을 포함할 수 있다. 예시적인 차원 축소 모델들의 특징들이 본 명세서에 제공된다.
도 2는 차원 축소 모델(102)을 훈련시키기 위한 예시적인 방법(200)을 도시한다. 방법(200)에서, 훈련 벡터들의
Figure pat00042
개의 포지티브 쌍들의 배치가
Figure pat00043
-차원 공간(고차원 표현)에서 생성된다.
예를 들어, 202에서, 고차원(
Figure pat00044
-차원) 벡터들(
Figure pat00045
)의 훈련 세트가 제공될 수 있으며, 예컨대 시스템(100)에 입력될 수 있다. 예를 들어, 고차원 벡터들의 훈련 세트는, 예컨대, 입력(예컨대, 원시) 데이터를 처리하는 표현 학습 모델을 사용하여 온라인 인코딩 프로세스의 일부로 또는 오프라인으로 생성될 수 있는 특징 세트들의 핵심 표현들일 수 있다. 시스템(100)의 차원 축소 모델, 표현 학습 모델, 및/또는 다른 모델들은, 예컨대, 사전 훈련된 모델의 모델 파라미터들을 초기 파라미터들로 설정함으로써(예컨대, 미세 조정을 위함) 또는 초기 모델 파라미터들을 (예컨대, 무작위로 또는 기타 방식으로) 선택함으로써 초기화될 수 있지만, 이에 제한되지 않는다. (다양한 훈련 단계들에서) 사전 훈련된 모델과 훈련될 모델의 조합들이 제공될 수 있으며, 모델들은 조합되어 또는 순서대로 훈련될 수 있다. 예시적인 모델 파라미터들은 가중치들 및 편향들을 포함한다. 훈련에 부가하여, 당업자에 의해 이해될 바와 같이 검증 및 테스트 데이터세트들이 또한 검증 및 테스트에 사용될 수 있다. 모델 아키텍처들은 훈련, 검증 또는 테스트의 결과로 업데이트될 수 있다. 훈련 하이퍼 파라미터(hyperparameter)들은 본 개시내용을 참조하여 당업자에 의해 이해되는 바와 같이 선택되고 초기화될 수 있다.
Figure pat00046
개의 포지티브 쌍들의 각각에 대해, 204에서,
Figure pat00047
-차원 공간의 제1 훈련 벡터(
Figure pat00048
)가 고차원 벡터들의 훈련 세트(즉,
Figure pat00049
)로부터 선택될 수 있다. 예를 들어, 미니 배치 크기(
Figure pat00050
)의 경우(다만 일반적인 배치 크기는 훨씬 더 클 수 있음), 훈련 세트로부터의 데이터 포인트들(104a 및 104b)는
Figure pat00051
-차원 입력 벡터들(106a 및 106b)에 의해 표현될 수 있으며, 이들 벡터들(106a 및 106b)은 각각 2개의 포지티브 쌍들(108a 및 108b)의 각각에 대한 제1 훈련 벡터들을 제공할 수 있다. 예를 들어, 이러한 선택은 훈련 세트로부터 배치의 각각의 벡터를 무작위로 샘플링하는 것에 기초할 수 있다.
인코딩할 때 입력 벡터들의 변화들(예컨대, 의도적이든 비의도적이든 간에 왜곡, 변경, 증강, 변환 등)에 대한 불변성을 위해 차원 축소 모델(102)을 훈련시키기 위해, 206에서, 제1 훈련 벡터에 근접한
Figure pat00052
-차원 공간에서 제2 훈련 벡터가 식별(예컨대, 생성 또는 선택됨)된다. 차원 축소를 위한 일부 알려진 훈련 방법들에서, 왜곡은 수작업을 통해 제공될 수 있으며, 이는 특징들에 대한 사전 지식을 필요로 한다. 본 명세서의 예시적인 방법들에서, 제1 훈련 벡터에 근접한 제2 훈련 벡터는 제1 훈련 벡터의 왜곡된 또는 의사 왜곡된 버전을 제공한다. "근접"은, 하나 이상의 메트릭들에 의해 결정되는 바와 같이, 훈련 세트의 다른 훈련 벡터들, 즉 이웃보다 제1 훈련 벡터에 더 가까운 제2 훈련 벡터를 지칭한다. 제2 훈련 벡터는 특징들에 대한 사전 지식 없이 생성하거나 선택하는 것에 의해 식별될 수 있다. 대신, 본 명세서의 예시적인 방법들에 따르면, 데이터 포인트와 그의 최근접 이웃들을 비교하는 것은 학습을 위한 "왜곡"으로서 사용될 수 있고, 지역 매니폴드 기하학적 구조의 근사치를 제공할 수 있다. 그러나, 사전 지식은 근접 훈련 벡터를 생성하기 위해 본 명세서에 기술된 다른 예시적인 기술들과 조합하여 사용될 수 있다는 것이 고려된다.
일부 예시적인 방법들에서, 근접 훈련 벡터는 예컨대 제1 훈련 벡터를 수정하는 것에 의해 합성 이웃으로서 생성될 수 있다. 예시적인 수정에는 노이즈, 예컨대, 가우시안 노이즈를 추가하는 것이 있다. 합성 이웃들을 사용하여 차원 축소 모델(102)을 훈련시키는 것은 비지도 훈련을 제공할 수 있다.
다른 예시적인 방법들에서, 근접 훈련 벡터는 훈련 세트의 다른 입력 벡터들을 사용하여 생성되거나 선택된다. 예를 들어, 제1 훈련 벡터에 근접한 훈련 벡터는 훈련 세트의 나머지 입력 벡터들(제1 훈련 벡터 이외의 입력 벡터들)로부터 선택될 수 있다.
일부 예시적인 방법들에서, 제1 훈련 벡터에 대한
Figure pat00053
최근접 이웃들의 세트는 선택된 훈련 벡터의 이웃을 제공하기 위해 메트릭에 대해 결정되며, 여기서
Figure pat00054
는 선택 가능한 파라미터이다. 예를 들어, 이 메트릭은 훈련 벡터들 사이의 유클리드 거리, 훈련 벡터들 사이의 비-유클리드 거리, 적응형 쌍(예컨대, 반경으로 정의됨) 등일 수 있다. 이 메트릭 및 선택된 최근접 이웃들은 제1 훈련 벡터들의 이웃을 정의한다.
Figure pat00055
최근접 이웃들의 세트(예컨대,
Figure pat00056
)는 모든
Figure pat00057
에 대해 계산될 수 있다(예시적인 방법들에서, 모든 입력 벡터(
Figure pat00058
)는 결국 특정 에포크 내의 배치(
Figure pat00059
)의 일부가 된다). 이 계산은 오프라인으로 또는 훈련 시간 동안 수행할 수 있다.
Figure pat00060
최근접 이웃들로부터 그래프(
Figure pat00061
)가 작성될 수 있다.
이어서, 제2 훈련 벡터가 이 이웃으로부터(즉,
Figure pat00062
최근접 이웃들의 결정된 세트로부터) 선택된다. 예를 들어, 제2 훈련 벡터는 포지티브 쌍(
Figure pat00063
)을 제공하기 위해,
Figure pat00064
최근접 이웃들의 결정된 세트로부터 입력 벡터(
Figure pat00065
)를 예컨대, 무작위로 샘플링함으로써 제공될 수 있다.
예를 들어, 도 1에서 데이터 포인트들(104a 및 104b)은 2개의 포지티브 쌍들(108a 및 108b)의 각각에 대한 제1 입력 벡터들을 제공하는
Figure pat00066
-차원 입력 벡터들(106a 및 106b)에 의해 표현된다. 이웃 데이터 포인트(104c)는 데이터 포인트(104a)에 근접하고, 포지티브 쌍(108a)의 제2 입력 벡터(106c)에 의해 표현된다. 유사하게, 이웃 데이터 포인트(104d)는 데이터 포인트(104b)에 근접하고, 포지티브 쌍(108b)의 제2 입력 벡터(106d)에 의해 표현된다. 따라서, 도 1에서, 2개의 포지티브 쌍들(
Figure pat00067
)(108a(즉, 데이터 포인트들(104a 및 104c)에 각각 대응하는 입력 벡터들(106a 및 106c)) 및 108b(즉, 데이터 포인트들(104b 및 104d)에 각각 대응하는 입력 벡터들(106b 및 106d))이 제공된다.
이어서, 포지티브 쌍들(108a 및 108b)은 각각의 포지티브 쌍에서 제1 및 제2 입력 벡터들 사이의 유사성(변화들에 대한 불변성)의 보존을 위해, 그리고 또한 동일한 제1 및 제2 입력 벡터들 사이의 차원 중복 감소를 위해 차원 축소 모델(102)을 훈련시키는 데 사용된다. 일반적으로, 이러한 훈련은 투영기(예컨대, 투영기 함수) 이후에 적용되는 차원들에 걸쳐 배치 평균 교차 상관 행렬을 역상관시키려는 손실을 최소화하여 차원 축소 함수의 파라미터들을 학습(예컨대, 업데이트)한다.
예를 들어, 208에서, 차원 축소 모델(인코더)(102)(훈련 가능한 파라미터들(
Figure pat00068
)에 의해 정의됨)은
Figure pat00069
-차원 표현 공간(여기서,
Figure pat00070
)에 대한 포지티브 쌍들(108a 및 108b)의 각각에서, 제1 훈련 벡터들(106a 및 106b) 및 제2 훈련 벡터들(106c 및 106d)을 인코딩함으로써
Figure pat00071
(본 명세서에서는 2개) 저차원 벡터 쌍들의 배치를 생성하는 데 사용된다. 예시의 명확성을 위해, 102a는 제1 훈련 벡터들(106a 및 106b)의 인코더(102)에 의한 인코딩을 나타내고, 102b는 제2 훈련 벡터들(106c 및 106d)의 (예컨대, 병렬 처리가 사용될 수 있는 것이 가능하지만, 동일한) 인코더(102)에 의한 인코딩을 나타낸다. 차원 축소(인코딩) 함수는 선형 함수, 비선형 활성화 함수, 인수분해된 선형 함수, 다층 퍼셉트론(multilayer perceptron, MLP), 또는 임의의 조합을 포함하거나 이들에서 구현될 수 있다.
선형 함수의 예에서, 벡터(
Figure pat00072
)(
Figure pat00073
-차원)는 선형 계층(
Figure pat00074
)에 입력된다. 결과는 생성된 출력 벡터(
Figure pat00075
)(
Figure pat00076
-차원)이다.
Figure pat00077
계층들을 갖는 예시적인 인수분해된 선형 인코더에서, 벡터(
Figure pat00078
)(
Figure pat00079
-차원)가 제공된다.
Figure pat00080
계층들의 각각에 대해, 선형 계층(예컨대,
Figure pat00081
, 여기서
Figure pat00082
)은 입력 벡터(
Figure pat00083
)를 처리하고, 결과는 배치 정규화 계층에 의해 배치 정규화된다. 선형 및 배치 정규화 계층들은 출력 벡터(
Figure pat00084
)(
Figure pat00085
-차원)를 제공하기 위해 각각
Figure pat00086
회 반복된다.
Figure pat00087
계층들을 갖는 예시적인 MLP 인코더에서, 벡터(
Figure pat00088
)(
Figure pat00089
-차원)가 제공된다.
Figure pat00090
계층들의 각각에 대해, 선형 계층(예컨대,
Figure pat00091
, 여기서
Figure pat00092
)은 입력 벡터(
Figure pat00093
)를 처리하고, 결과는 배치 정규화 계층 및 활성화 함수(예컨대, ReLU)에 의해 배치 정규화된다. 선형 배치 정규화 계층들과 활성화 함수는 출력 벡터(
Figure pat00094
)(
Figure pat00095
-차원)를 제공하기 위해 각각
Figure pat00096
회 반복된다.
차원 축소 모델(102)의 출력은
Figure pat00097
(예시를 위해, 2개의) 저차원 벡터 쌍들(110a 및 110b)의 배치이다. 저차원 벡터 쌍들(110a 및 110b)은
Figure pat00098
-차원 공간에서 제1(112a 및 112b)(102a에서 인코더(102)에 의해 인코딩되는 것으로 도시됨) 및 제2(112c 및 112d)(102b에서 인코더(102)에 의해 인코딩되는 것으로 도시됨) 저차원 벡터들을 각각 포함한다.
예컨대, 차원 중복 감소를 위한 추가 용량을 제공하는 것에 의해 예시적인 훈련 방법들을 향상시키기 위해, 210에서, 투영기(120)는
Figure pat00099
저차원 벡터 쌍들(110a, 110b)의 배치의 각각의 제1(112a, 112b) 및 제2(112c, 112d) 저차원 벡터들을 차원(
Figure pat00100
)을 갖는 증강 차원 표현 공간으로 투영함으로써 증강 차원 벡터 쌍들(122a, 122b)을 생성한다. 여기서,
Figure pat00101
Figure pat00102
Figure pat00103
)보다 더 크다(예컨대, 훨씬 큼). 예시의 명확성을 위해, 120a는 저차원 벡터들(112a 및 112b)의 투영기(120)에 의한 생성을 나타내고, 120b는 저차원 벡터들(112c 및 112d)의 (예컨대, 다만 병렬 처리가 사용될 수 있는 것이 가능하지만, 동일한) 투영기(120)에 의한 생성을 나타낸다. 증강 차원 벡터 쌍들(122a 및 122b)은 각각 제1 증강 차원 벡터들(124a 및 124b)(120a에서 투영기(120)에 의해 생성되는 것으로 도시됨) 및 제2 증강 벡터 쌍들(124c 및 124d)(120b에서 투영기(120)에 의해 생성되는 것으로 도시됨)을 포함한다.
투영기(120)는 예컨대, 시스템(100)을 위한 투영기 헤드로서 차원 축소 훈련 중에 제공될 수 있고, 훈련 후에 제거될 수 있다. 예시적인 투영기(120)는 선형 투영기, 비선형 투영기, 다층 퍼셉트론(MLP) 또는 임의의 조합을 포함하거나 이들에서 구현될 수 있다. 예를 들어, 투영기(120)는 훈련 가능한 파라미터들(
Figure pat00104
Figure pat00105
)에 의해 정의될 수 있다. 본 명세서에서 예시적인 투영기들의 추가의 특징들이 제공된다.
유사성 보존 손실 및 중복 감소 손실은, 212에서,
Figure pat00106
증강 차원 벡터 쌍들(122a, 122b)의 배치에 대해 제1 증강 차원 벡터들(124a, 124b)과 제2 증강 차원 벡터들(124c, 124d) 사이에서 계산된다. 계산된 유사성 보존 손실 및 중복 감소 손실은 선택적으로 가중치 또는 오프셋 파라미터와 조합되어 총 손실을 제공한다. 214에서, 제공된 총 손실은 차원 축소 모델(102)의 파라미터들(
Figure pat00107
), 및 선택적으로 예컨대, 확률적 경사 하강법을 사용하여 투영기(120)의 파라미터들을 업데이트하는 데 사용된다.
유사성 보존 손실은 차원 축소 동안 변화들(예컨대, 왜곡, 증강, 변형, 변경 등)에 대한 불변성을 유지하는 것을 목표로 한다. 예를 들어, 차원(
Figure pat00108
)과 같은 공통 차원들에 대한
Figure pat00109
증강 차원 벡터 쌍들(122a 및 122b)의 배치에 대해 제1(124a 및 124b) 및 제2(124c 및 124d) 증강 차원 벡터들 사이의 상호 상관을 계산함으로써 계산될 수 있다.
중복 감소 손실은 차원 중복을 줄이는 것을 목표로 한다. 예를 들어,
Figure pat00110
증강 차원 벡터 쌍들(122a, 122b)의 배치에 대해 제1 증강 차원 벡터들(124a, 124b)과 제2 증강 차원 벡터들(124c, 124d)의 차원들 사이의 중복성을 계산함으로써 계산될 수 있다. 이 계산은 공통 차원들 이외의 차원들에 대한
Figure pat00111
증강 차원 벡터 쌍들(122a 및 122b)의 배치에 대해 제1(124a 및 124b) 및 제2(124c 및 124d)의 증강 차원 벡터들 사이의 상호 상관을 계산함으로써 수행될 수 있다.
예를 들어, 도 1은
Figure pat00112
증강 차원 벡터 쌍들(122a 및 122b)의 배치에 대해 평균화된 제1(124a 및 124b) 및 제2(124c 및 124d) 증강 차원 벡터들 사이에서 계산된 크기(
Figure pat00113
)의 상호상관 행렬(130)을 도시한다. 교차 상관 행렬(130)은 유사성 보존 손실을 계산하기 위해 배치(
Figure pat00114
) 전체에 걸쳐 공통 차원들(
Figure pat00115
)에서의 최적 합이 1(항등)과 같도록 정규화되는 한편, 배치(
Figure pat00116
) 전체에 걸쳐 공통 차원들(
Figure pat00117
) 이외의 차원들에서의 최적 합은 항등 행렬(132)에 도시된 바와 같이 중복 감소 손실을 계산하기 위해 영(0)과 동일하다. 이어서 총 손실은 선택 가능한 파라미터에 의해 결정될 수 있는 임의의 오프셋 또는 가중치와 함께, 조합된 유사성 보존 손실 및 중복 감소 손실에 기초할 수 있다.
예를 들어, 훈련 동안 학습된 업데이트된 파라미터들(
Figure pat00118
)을 포함하는 업데이트된 차원 축소 모델(102)은 216에서, 임의의 적합한 저장소, 예컨대, 비휘발성 저장 매체들에 저장될 수 있다. 이어서 훈련된 차원 축소 모델(102)은 단독으로 또는 다른 인코딩 특징들과 함께 새로운 특징 세트를 차원적으로 감소시키는 데 사용될 수 있다. 투영기(120)의 업데이트된 파라미터들은 또한 선택적으로 저장될 수 있다.
예를 들어, 훈련된 차원 축소 모델은 작업을 수행하기 위한 프로세서 기반 시스템 또는 아키텍처의 일부일 수 있거나 그렇지 않으면 그에 통합될 수 있다. 예를 들어, 도 3에 도시된 바와 같이, 예컨대, 인코더(300)와 같은 차원 축소 모델은 작업을 수행하기 위한 종단간 시스템(302)의 일부로서 작업 수행 모델(304)과 조합된다. 대안적으로, 훈련된 인코더(300)는 그 자체로 완전한 작업으로서 인코딩 기능을 제공할 수 있다. 인코더(300)가 더 큰 종단간 시스템(302)의 일부인 경우, 훈련된 차원 축소 모델은 종단간 시스템을 훈련시키기 위해 사용되거나 (예컨대, 인코더의 다운스트림의 하나 이상의 작업들의 성능을) 추론하는 동안 사용될 수 있다. 예를 들어, 입력, 예컨대, 인코더(300)에 대한 입력 데이터(306)는
Figure pat00119
-차원 공간에서의 입력 벡터일 수 있다. 입력 벡터는 인코더에 도입되기 전에 생성되고 전처리될 수 있다. 예를 들어, 원하는 경우 입력 벡터는 정규화될 수 있다.
훈련된 차원 축소 모델은 저차원(
Figure pat00120
-차원) 공간에서 인코딩된 벡터 출력을 생성할 수 있고, 작업 수행 모델(304)에 의한 다운스트림 처리를 위해, 또는 곧바로 최종 결과로서, 인코딩된 출력 벡터(308)를 출력할 수 있다. 인코딩된 출력 벡터(308) 및/또는 작업 수행 모델(304)의 다른 구성요소들에 의해 다운스트림에서 생성된 출력(310)(예컨대, 분류, 레이블, 액션 명령, 결정, 검색된 문서(텍스트, 이미지 등), 출력 문서, 질문에 대한 답변, 번역, 추천, 출력 신호, 색인 등)은 또한 저장, 인쇄, 디스플레이 등이 될 수 있다.
(예컨대, 테스트 또는 런타임 동안) 훈련된 차원 축소 모델에 의해 수행되는 인코딩 방법과 훈련 동안 사용된 인코딩 방법이 동일할 필요는 없다. 예를 들어, 인코더가 인수분해된 선형 인코더인 경우, 훈련 동안 차원 축소 모델(102)은 비선형 인코딩 방법들, 또는 비선형 및 선형 인코딩 방법들의 조합을 사용할 수 있는 반면, 훈련된 차원 축소 모델은 선형 인코딩 방법들을 사용할 수 있음이 고려된다(예를 들어, 테스트 중에, 훈련 동안 비선형인 배치 정규화 계층은 수학적으로 선형 계층들에 흡수되어 결과 인코더를 선형으로 만들 수 있음). 다른 예시적인 방법들에서, 인코더는 훈련 동안 그리고 훈련 후에 둘 다 선형이거나, 또는 훈련 동안 그리고 훈련 후에 둘 다 비선형일 수 있다. 또한, 투영기(120)는 차원 축소 모델(102)의 훈련 동안 사용될 수 있지만, 차원 축소 모델이 훈련되면 인코더(300)에서 생략될 수 있다.
네트워크 아키텍처
본 명세서에 개시된 시스템들, 방법들 및 실시예들은 도 4 또는 그 임의의 부분에 예시된 바와 같은 아키텍처(400) 내에서 구현될 수 있다. 예시적인 아키텍처(400)는 데이터 교환을 위해 인터넷과 같은 무선 및/또는 유선일 수 있는 네트워크(406)를 통해 통신하는 서버(402) 및 하나 이상의 클라이언트 디바이스들(404a, 404b, 404c, 404d)을 포함한다. 서버(402) 및 클라이언트 디바이스들(404a 내지 404d)은 각각 프로세서, 예컨대, 프로세서(408) 및 메모리, 예컨대, 메모리(410)(예를 들어, 서버(402)에 도시됨), 예컨대, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 하드 디스크들, 솔리드 스테이트 디스크들, 또는 기타 비휘발성 저장 매체들을 포함할 수 있지만 이에 제한되지 않는다. 메모리(410)는 또한 프로세서(808)와 통신하는 외부 저장소에 의해 전체적으로 또는 부분적으로 제공될 수 있다.
예를 들어, 도 1의 차원 축소 훈련 시스템(100)은 프로세서(408)와 같은 프로세서 또는 서버(402) 및/또는 클라이언트 디바이스들(404a 내지 404d)의 다른 프로세서와 같은 프로세서에 의해 구현될 수 있다. 프로세서(408)는 단일 프로세서 또는 직렬로 또는 병렬로 동작하는 다중 프로세서들을 포함할 수 있음이 이해될 것이다. 예시적인 방법들에 사용된 메모리는 예를 들어 서버(402), 클라이언트 디바이스들(404a 내지 404d), 연결된 원격 저장소(412)(서버(402)와 관련하여 표시되지만 마찬가지로 클라이언트 디바이스들에 연결될 수 있음), 또는 임의의 조합 내의 메모리(410) 및/또는 적절한 저장소에 구현될 수 있다. 메모리는 메모리 유형들 및/또는 위치들의 조합들을 포함하여 하나 이상의 메모리들을 포함할 수 있다. 메모리는 데이터 검색 및 처리에 적합한 형식으로 저장될 수 있다.
서버(402)는 전용 서버들, 클라우드 기반 서버들, 또는 조합(예컨대, 공유)을 포함할 수 있지만 이에 제한되지 않는다. 데이터 스트림들은 서버(402) 및/또는 클라이언트 디바이스들(404a 내지 404d)로부터 통신, 그에 의해 수신 및/또는 생성될 수 있다.
클라이언트 디바이스들(404a 내지 404d)은 임의의 프로세서 기반 디바이스, 단말 등일 수 있고/있거나 프로세서 기반 디바이스 등에 의해 실행 가능한 클라이언트 애플리케이션에서 구현될 수 있다. 클라이언트 디바이스들은 서버(402) 내부 및/또는 서버 외부(지역 또는 원격, 또는 임의의 조합)에 배치되고 서버와 통신할 수 있다. 예시적인 클라이언트 디바이스들(404a 내지 404d)은 컴퓨터들(404a), 모바일 통신 디바이스들(예컨대, 스마트폰들, 태블릿 컴퓨터들 등)(404b), 로봇들 또는 다른 에이전트들(404c), 자율 차량들(404d), 웨어러블 디바이스들(미도시), 가상 현실, 증강 현실 또는 혼합 현실 디바이스들(미도시), 또는 다른 프로세서 기반 디바이스들을 포함하지만 이에 제한되지 않는다. 클라이언트 디바이스들(404a 내지 404d)은 서버(402)에 데이터를 전송하고/하거나 그로부터 데이터를 수신하도록 구성될 수 있지만 반드시 그럴 필요는 없고, 서버에서 디스플레이하기 위해 제공되는 특정 방법들의 결과들을 디스플레이 또는 인쇄하기 위한 디스플레이들, 프린터들 등과 같은 하나 이상의 출력 디바이스들을 포함할 수 있지만 이에 제한되지 않는다. 클라이언트 디바이스들은 클라이언트 디바이스들의 조합들을 포함할 수 있다.
예시적인 훈련 방법에서, 서버(402) 또는 클라이언트 디바이스들(404a 내지 404d)은 임의의 적합한 소스로부터, 예컨대, 메모리(410)(비제한적인 예들로서, 내부 저장소, 내부 데이터베이스 등)로부터, 지역적으로 또는 네트워크(406)를 통해 연결된 외부(예컨대, 원격) 저장소(412) 등으로부터 입력 데이터를 수신할 수 있다. 신규 및/또는 기존 데이터 스트림들에 대한 데이터는 하나 이상의 입력 및/또는 출력 디바이스들, 센서들, 통신 포트들 등을 사용하여 서버(402) 및/또는 클라이언트 디바이스들(404a 내지 404d)에 의해 생성되거나 수신될 수 있다.
예시적인 훈련 방법들은 서버(예컨대, 메모리(410)), 클라이언트 디바이스들(404a 내지 404d), 외부 저장소(412), 또는 조합에 동일하게 저장될 수 있는, 신경망 모델 및 파라미터들에 의해 표현되는 훈련된 차원 축소 모델을 포함하거나, 그를 통합하거나, 그에 의해 전체적으로 제공되는 업데이트된 모델을 생성할 수 있다. 본 명세서에 제공된 일부 예시적인 실시예들에서, 훈련 및/또는 추론은 임의의 조합으로 오프라인 또는 온라인(예컨대, 런타임 시)으로 수행될 수 있다. 훈련은 (예컨대, 예시적인 시스템들의 상이한 모델들에 대해) 단일 훈련이거나, 연속적이거나, 조합일 수 있다. 훈련 및/또는 추론의 결과들은 출력(예컨대, 디스플레이, 전송, 디스플레이를 위해 제공, 인쇄 등)될 수 있고/있거나 요청 시 검색 및 제공을 위해 저장될 수 있다.
훈련된 신경망 모델들의 예는 하나 이상의 작업들을 수행하기 위해 서버(402) 및/또는 클라이언트 디바이스들(404a 내지 404d)의 프로세서들 및 메모리에 의해 (예컨대, 추론 또는 런타임 동안) 동작될 수 있다. 비제한적인 예시적인 작업들은 예컨대, 컴퓨터 비전, 자율 이동 및 자연어 처리와 같은, 그러나 이에 제한되지 않는 다양한 애플리케이션들에 대한 데이터 압축 작업들, 분류 작업들, 검색 작업들, 질문 답변 작업들 등을 포함한다. 추론 또는 런타임 동안, 예를 들어, 새로운 데이터 입력(예컨대, 텍스트, 음성, 이미지, 감각 또는 기타 데이터를 나타냄)이 (예컨대, 현장에서, 통제된 환경에서, 실험실 등에서) 훈련된 모델에 제공될 수 있고, 훈련된 모델은 데이터 입력을 처리할 수 있다. 처리 결과들은 추가의 다운스트림 의사 결정 또는 작업들에 사용될 수 있고/있거나, 디스플레이, 전송, 디스플레이를 위해 제공, 인쇄 등이 될 수 있고/있거나, 요청 시 검색 및 제공을 위해 저장될 수 있다.
예시적인 실시예들
실험들에 사용된 예시적인 차원 축소 모델 훈련 방법들의 특징들이 이제 추가 설명을 위해 기술된다. 이러한 예시적인 방법들은 비교적 간단하고 스케일링 가능하며 일반적인 차원 축소를 제공한다. 방법들은 데이터 포인트와 유클리드 최근접 이웃들을 비교하여 차원 축소 함수가 불변해야 하는 입력 왜곡을 정의하고 지역 매니폴드 기하학적 구조를 근사화한다. 사용된 중복 감소 손실의 예는 Zbontar, J., Jing, L., Misra, I., LeCun, Y., & Deny, S. (2021, July)., “Barlow twins: Self-supervised learning via redundancy reduction”(International Conference on Machine Learning (pp. 12310-12320). PMLRJ)에 개시된 손실 계산에 기초하여 수행될 수 있으며, 그 전체가 본 명세서에 참조로 포함된다. 이 중복 손실은 출력 차원들을 역상관시키면서 훈련 세트로부터 인접 쌍들에 대한 유사한 표현들을 출력하는 인코더를 학습하는 데 사용된다.
도 1에 도시된 예시적인 시스템(100)을 사용하여, 예를 들어, 일반 입력 공간의 특징 벡터들의 세트가 주어지면, 예시적인 차원 축소 모델 훈련 방법은 최근접 이웃들을 사용하여 그 근접성을 보존하는 것이 바람직한 특징 쌍들의 세트를 정의한다. 이어서, 인코더(102)에 구현된 차원 축소 함수는 입력 공간의 이웃들이 유사한 표현들을 갖도록 권장함으로써 훈련된다. 투영기는 고차원(
Figure pat00121
) 표현들을 생성하는 보조 투영기이며, 예컨대, J. Zbontar et al. 에 개시된 방법을 사용하여 계산된 유사성 보존 및 계산된 중복 감소 손실은 배치(
Figure pat00122
)에 대해 평균화된
Figure pat00123
상호 상관 행렬에 대해 계산된다. 이 손실은 출력 차원들의 중복을 최소화하면서 이웃하는 관계들을 보존한다.
최근접 이웃 계산은 오프라인으로 수행될 수 있고, 학습 프로세스는 비교적 간단한 확률적 경사 하강법(SGD) 학습 프로세스일 수 있다. 이러한 예시적인 훈련 방법들은 고도로 스케일링 가능하고, 차원 축소를 위해 선형 및 비선형 인코더들을 학습하는 한편 샘플 외 일반화를 쉽게 처리할 수 있다.
훈련 레이블이 존재하지 않고 차원 축소가 중요한 예시적인 애플리케이션들인 이미지 및 문서 검색 애플리케이션들에 대한 예시적인 차원 축소 훈련 방법들을 사용하여 실험들이 수행되었다. 소형 인코더가 제1 단계 검색 시스템들에 통합되어 실험들에 사용된다. 예를 들어, PCA 방법을 본 명세서의 실시예들에 따라 훈련된 예시적인 인코딩 방법으로 대체함으로써 인코딩 및 검색 복잡성의 임의의 변경 없이 상당한 이득이 달성될 수 있음이 입증되었다. 예시적인 방법들은 또한 아키텍처, 배치 크기 및 사용된 이웃들의 수의 변화들뿐만 아니라 광범위한 하이퍼 파라미터들에 대해 강인한 것으로 나타났다.
문제 설정
고차원 특징들의 세트(레이블이 있거나 레이블이 없을 수 있음)로 시작하여, 더 큰 입력 공간의 지역 기하학적 구조를 보존하는 저차원 공간을 학습하는 것이 목표이다. 입력 공간의 지역 기하학적 구조의 신뢰성 외에 다른 사전 지식이 없다고 가정하면, 최근접 이웃들은 기하학적 구조(예컨대, 근접성)를 보존하는 것이 바람직한 특징 쌍들의 세트를 정의하는 데 사용된다. 차원 축소 함수(예컨대, 인코더)의 파라미터들은 입력 공간의 이웃들이 유사한 표현들을 갖도록 권장하는 손실을 사용하여 학습되는 한편, 이들 벡터들의 성분들 사이의 중복을 또한 최소화한다. 매우 높은 차원 공간에서 표현을 생성하기 위해 투영기가 인코더에 추가되고, 예컨대, J. Zbontar et al에 개시된 방법에 기초하여 유사성 보존 손실 및 중복 감소 손실을 최소화하도록 손실이 계산된다. 이어서, 작업 훈련을 위해 투영기가 폐기될 수 있다.
사전 지식이 없는 경우에, 지역 왜곡을 정의하는 것은 입력 매니폴드에 대한 가정을 통해 달성된다. 예를 들어, 지역 선형 매니폴드를 가정하면, 온 매니폴드 왜곡의 지역 측정으로 유클리드 거리를 사용할 수 있으며, 훈련 세트에 대해 최근접 이웃들을 사용하면 입력 공간의 지역 이웃들에 대한 좋은 근사값을 제공한다. 따라서, 일부 예시적인 방법들에서, 이웃하는 훈련 벡터들의 쌍들이 구성되고, 이러한 벡터에서 다른 벡터로의 왜곡에 대한 불변성은 근접성을 보존하는 학습에 대한 프록시(proxy)로서 학습된다.
각각의 포인트의 지역 이웃은 각각의 훈련 샘플에 대해 동일한 수의 최근접 이웃들을 선택하기 위해 하이퍼 파라미터(
Figure pat00124
)를 사용하여 정의된다. 이는 실험들에서 광범위한 범위의
Figure pat00125
에 걸쳐 충분하고 강인한 것으로 나타났다. 가중 변형들 또는 반경 기반 변형들이 사용될 수 있지만, 이는 복잡성을 증가시킬 수 있다.
다른 실험 방법들은 단순화된 변형을 사용하여 이웃들을 정의했으며, 여기서 쌍들은 입력 벡터에 가우시안 노이즈를 추가함으로써 구성되었다. 실험들에 따르면, 이러한 잡음을 추가하면 입력 매니폴드에서 왜곡이 발생할 수 있지만, 이러한 방법들은 여전히 의미 있는 임베딩을 학습할 수 있다.
표기법: 목표는 벡터(
Figure pat00126
)를 입력으로 취하고 대응하는 축소 벡터(
Figure pat00127
)(이때,
Figure pat00128
)를 출력하는 인코더(
Figure pat00129
)를 학습하는 것이다. 이 예에서, 인코더는 학습 가능한 파라미터들(
Figure pat00130
)이 있는 신경망으로 정의된다.
Figure pat00131
Figure pat00132
-차원 입력 공간인
Figure pat00133
의 데이터 포인트들(예컨대, 고차원 벡터들)의 (훈련) 세트라고 한다.
Figure pat00134
Figure pat00135
로부터의 벡터라고 한다.
Figure pat00136
Figure pat00137
Figure pat00138
최근접 이웃들로 이루어지며,
Figure pat00139
는 하이퍼 파라미터일 수 있다. 훈련 세트로부터의 벡터(
Figure pat00140
)에 대해:
Figure pat00141
, 여기서
Figure pat00142
는 유클리드 거리를 나타낸다. 이 정의는 비-유클리드 거리들 및 적응형 이웃들(예컨대, 반경에 의해 정의됨)로 쉽게 확장될 수 있다.
Figure pat00143
유클리드 이웃들의 쌍들을 사용하여, 이웃 쌍들 또는 포지티브 쌍들은 쌍들(
Figure pat00144
)로 정의되며, 여기서
Figure pat00145
이다.
위에서 언급한 바와 같이, 고차원적인 출력 공간보다 정보를 제공하는 출력 공간이 더 유용하기 때문에 차원 축소를 위한 출력 차원의 중복성을 최소화하는 것이 매우 바람직하다. 예시적인 방법들에서, 파라미터들은 J. Zbontar et al. 에 개시된 손실 함수를 최소화하여 학습되었다.
훈련을 위해 투영기(
Figure pat00146
)(파라미터들(
Figure pat00147
)로 정의됨)가 인코더(
Figure pat00148
)에 추가되어, 제3 고차원 표현 공간에서 손실을 계산하게 할 수 있지만, 이 공간은 후속 작업들에 사용되지 않는다. 이 확장된 공간은 훨씬 더 클 수 있다.
Figure pat00149
(또는
Figure pat00150
)를 투영기의 출력 벡터라고 하고, 여기서
Figure pat00151
이다. 한 쌍의 이웃들(
Figure pat00152
)과 투영기 후의 대응하는 벡터들(
Figure pat00153
)이 주어지면, 손실 함수(
Figure pat00154
)는 다음의 수학식 1과 같이 주어진다:
Figure pat00155
여기서
Figure pat00156
,
여기서
Figure pat00157
는 배치의 포지티브 쌍들을 인덱싱하고,
Figure pat00158
Figure pat00159
Figure pat00160
(즉,
Figure pat00161
)의 2차원들이고,
Figure pat00162
는 하이퍼 파라미터이다.
Figure pat00163
는 현재 배치로부터의 모든 포지티브 쌍들(
Figure pat00164
)에 대해 계산되고 평균화된
Figure pat00165
상호 상관 행렬이다.
손실은 2개의 항들로 이루어진다. 첫째항은 대각선 요소들이 1이 되도록 권장한다. 이는 적용된 왜곡에 대해 학습된 표현들을 불변하게 하며, 즉, 훈련 벡터의 이웃에서 입력 매니폴드를 따라 이동하는 데이터 포인트들이 출력 공간에서 유사한 표현들을 공유하도록 권장된다. 둘째항은 비대각선 요소들이 0이 되도록 하여, 출력 차원들 사이의 중복성을 감소시키며, 이는 차원 축소에 매우 바람직하다. 손실은 인코더의 파라미터들(
Figure pat00166
)과 투영기(
Figure pat00167
)의 파라미터들(
Figure pat00168
)을 학습하는 데 사용될 수 있다.
인코더(
Figure pat00169
)에 대해 다음과 같은 다양한 아키텍처들이 고려되었다.
선형: 직선적(straight-forward) 인코더(
Figure pat00170
)는
Figure pat00171
가중치 행렬(
Figure pat00172
)과 바이어스 항(
Figure pat00173
)으로 파라미터화된 선형 함수; 즉,
Figure pat00174
이다. 계산의 이점들을 넘어서, 의미 있는 충분한 입력 공간이 주어지면 선형 인코더가 입력의 이웃들을 충분히 보존할 수 있는
Figure pat00175
인 중간 크기의 출력 공간들을 제공한다.
인수분해된 선형: 추론 동안 배치 정규화(BN)가 (인접한 선형 계층의 가중치들에 임베딩될 수 있는 특징들에 적용된 선형 스케일링으로 감소함에 따라) 선형이라는 사실을 활용하여,
Figure pat00176
는 다층 선형 모델로 공식화되며, 여기서
Figure pat00177
는 각각 선형 계층 및 뒤이어 BN 계층으로 이루어진
Figure pat00178
계층들의 시퀀스이다. 이 예시적인 모델은 훈련 동안 도움이 될 수 있는 비선형 역학을 도입한다. 새로운 특징들의 효율적인 인코딩을 위해 훈련 후
Figure pat00179
계층들의 시퀀스가 단일 계층으로 교체될 수 있다.
다층 퍼셉트론(MLP):
Figure pat00180
는 또한 배치 정규화 및 reLU(정류 선형 단위)들을 비선형성으로 갖는 다층 퍼셉트론일 수도 있으므로,
Figure pat00181
는 각각
Figure pat00182
은닉 단위들을 갖는
Figure pat00183
선형-BN-reLU 삼중항들의 시퀀스이며,
Figure pat00184
로부터 d 차원들로의 선형 투영이 뒤따른다.
예시적인 투영기는 도 1에서 투영기(120)의 위치와 같은, 전송 가능한 표현들(인코더 출력)과 손실 함수 사이에 삽입된 MLP로 구현될 수 있다. 예시적인 방법들은 큰 출력 차원들(예컨대,
Figure pat00185
)에서 동작하며, 실험들에 따르면 더 높은 차원들에서 역상관관계 손실을 계산하는 것이 유익하다. 따라서, 예시적인 방법들에서, 전송 가능한 표현은 도 1에 도시된 비대칭 모래시계 훈련 시스템(100)의 병목 구간(bottleneck)이 될 수 있다. 식 (1)에서 계산된 손실은 투영기 이후에 적용되고, 따라서 출력 표현들 성분(투영기 이전)을 간접적으로만 역상관시킬 수 있지만, 역상관에 더 많은 차원들을 제공하면 더 많은 정보를 제공하는 병목 현상 표현으로 이어지며, 이는 네트워크가 역상관된 출력들이 더 많은 인코더를 학습할 수 있게 한다.
예시적인 방법을 수행하기 위한 예시적인 의사 코드가 도 5에 도시된다. 하이퍼 파라미터들의 예에는 배치 크기 및 이웃들의 수가 포함된다.
Figure pat00186
Figure pat00187
차원 벡터들의 훈련 세트에서 각각의 벡터의 k 최근접 이웃들이 계산되고 배치들이 무작위로 샘플링된다. 인코더와 디코더가 초기화되고 크기(
Figure pat00188
)의 행렬이 계산된다. 훈련 동안, 손실은 위에서 전술된 바와 같이 계산되고, 인코더 및 디코더의 파라미터들이 업데이트된다. 훈련 후에, 투영기는 폐기되고 모델은 반환될 수 있다.
실험들
시각적 및 텍스트 특징들 둘 모두에 대해 예시적인 방법들을 검증하기 위해 실험들이 수행되었다. 전형적으로 이러한 특징들은 사전 훈련 단계 동안 학습되지만, 입력 표현들이 있는 그대로(계산 능력이나 미세 조정을 위한 데이터 없이) 제공되었다고 가정했다. 결과적으로 예시적인 방법들은 핵심 표현 학습 프로세스 후에만, 그리고 표현의 특성과 독립적으로 동작하였다.
도 6에 요약된 다양한 모달리티(modality)들에 대해 입력 표현 공간들과 작업들이 선택되었다. ROxford 및 RParis 데이터세트들에 대한 랜드마크 이미지 검색, ImageNet에 대한 객체 부류 검색, ArguAna 데이터세트에 대한 인수 검색을 포함하는 작업들이 탐색되었다(Wachsmuth et al., “Retrieval of the best counterargument without prior topic knowledge”(Proceedings of the Annual Meeting of the Association for Computational Linguistics, pp. 241-251, 2018)). 모든 실험들은 차원 축소에 유용한 신뢰할 수 있는 특징 벡터들로 시작되었다. 모든 구조화된 데이터(이미지들, 문서들)는 먼저 적절한 표현으로 인코딩된다고 가정했다. 실험들에 있어서, 유클리드 거리가 입력 표현 공간(들)에서 적어도 지역적으로 의미가 있다고 가정했다.
예시적인 훈련 방법들은 ROxford 및 RParis 데이터세트들의 예시적인 랜드마크 이미지 검색 작업들과 ImageNet의
Figure pat00189
검색 작업들에 대해 평가되었다. 실험들은 GeM-AP(Revaud et al., “Learning with average precision: Training image retrieval with a listwise loss”(International Conference on Computer Vision, 2019))와 같은 특수화된 검색 지향 표현들, 및 DINO와 같은 자기 지도 학습을 통해 학습된 보다 일반적인 표현들로부터 시작되었다. 실험들을 위해 DINO 및 GeM-AP 모델들을 특징 추출기들로 사용하여 시각적 작업들을 위한 이미지들을 인코딩했다. 전역 이미지 특징들을 GeM-AP 또는 DINO에 대해 공개적으로 사용 가능한 모델들에서 사용되었다. 텍스트 영역의 경우, 인수 검색 작업에 중점을 두었다. 768-차원 특징들은, 최근 벤치마크로부터의 데이터세트 정의들에 따르는 문서 검색을 위해 훈련된 ANCE(Xiong et al., “Approximate nearest neighbor negative contrastive learning for dense text retrieval”(International Conference on Learning Representations, 2021))라는 기성품 Bert-Siamese 모델에서 사용하였다. 학습 실험 방법들(TLDR)이나 비교 방법들에는 지도가 사용되지 않았다. 훈련된 차원 축소 인코더가 주어지고, 모든 다운스트림 작업 데이터가 각각의 테스트 데이터세트에 대해 인코딩되었으며, 이들을 모든 검색 작업들에 대해 비모수(non-parametric) 분류기들(
Figure pat00190
)을 사용하여 "제로샷" 방식으로 평가하였다. ROxford/RParis에서 랜드마크 이미지 검색을 위해 특정 쿼리들이 정의된 Radenovic et al., “Revisiting Oxford and Paris: Large-scale image retrieval benchmarking”(IEEE Conference on Computer Vision and Pattern Recognition, pp. 5706-5715, 2018)에 제공된 바와 같이 일반 프로토콜들이 사용되었다. 모든 쿼리에 대해, 동일한 랜드마크를 나타내는 다른 모든 이미지들에 걸쳐 평균 정밀도 메트릭을 측정하였다. 예컨대 Russakovsky et al., “Imagenet large scale visual recognition challenge, International Journal of Computer Vision, 115(3):211-252, 2015”에서 제공된 바와 같은 ImageNet의 경우, Caron et al., “Emerging properties in self-supervised vision transformers”(International Conference on Computer Vision, 2021)이 수행된 프로세스가 사용되었다: 갤러리는 1000개 부류들에 걸친 전체 검증 세트로 이루어졌으며, 이 검증(val) 세트로부터의 각각의 이미지가 차례로 쿼리로 사용되었다.
Figure pat00191
가 다시 쿼리에 대한 관련성에 따라 순위가 매겨진 이미지들의 목록을 계산하는 데 사용되었으며, 레이블들은 상위 20개 이미지들에서 집계되어 가장 눈에 띄는 부류에 예측된 쿼리 레이블을 할당한다. 결과들이 도 6에 도시된다. 시각적(각각 텍스트) 도메인들(
Figure pat00192
)(각각
Figure pat00193
)은 실제로 가장 일반적으로 사용되는 설정으로 선택되었다.
예시적인 학습 방법들은 표현들을 명시적으로 정규화하지 않았지만, 두 작업들에 대해 검색하기 전에 특징들을 L2-정규화했다. PCA 사용에 대해 보고된 결과들은 화이트닝된 PCA를 사용하고, 여러 화이트닝력 값들을 테스트했으며 가장 잘 수행된 값을 유지했다. 예시적인 방법들은 작업들과 인코더들이 상당히 상이하다는 사실에도 불구하고, Zbontar 등이 제안한 학습률, 가중치 감소, 스케일링 및
Figure pat00194
에 대해 동일한 하이퍼 파라미터들을 성공적으로 사용했다. PCA는 scikit-learn의 PCA 구현을 사용하여 즉시 사용 가능한 도구를 사용하여 최대 수백만 개의 데이터 포인트들과 수백 개의 차원들에서 실행되었다. 큰 행렬들(
Figure pat00195
)의 경우, 구현예는 PCA를 큰 행렬들로 스케일링하는 표준 방법인 전체 SVD의 근사치인, Halko et al., 2011에 공개된 무작위 SVD 접근 방식을 사용했다.
예시적인 방법들은 분산을 적절하게 측정하기 위해 SGD 또는 이웃 쌍 샘플링에서와 같은 일부 확률성을 가질 수 있으므로, 실험 방법들의 각각의 변형을 5회 실행하고 출력 결과들을 평균화했다. 오차 바들은 이들 5회 실행에 대한 표준 편차를 도시한다.
랜드마크 이미지 검색: 이 작업에 대한 대규모 실험들의 경우, 화이트닝이 있는 PCA를 사용하여 전역 정규화 이미지 표현들에 차원 축소를 적용하는 것이 통례이다. 예시적인 방법들을 GeM-AP에서 시작하여 PCA를 예시적인 훈련 방법으로 간단히 대체했다. Generalized-Mean 풀링을 사용하고 AP 손실(GeM-AP)을 사용하여 랜드마크 검색을 위해 특별히 훈련된 사전 훈련된 ResNet-50으로부터 2048-차원 특징들을 얻었다. 차원 축소 함수를 학습하기 위해, 150만 개의 랜드마크 이미지들로 이루어진 데이터세트를 사용했다. 예시적인 방법들은 그 차원들이 32 내지 512인 다양한 출력 공간들을 학습했다. 마지막으로, 이들 공간들을 두 가지 표준 이미지 검색 벤치마크들 즉, 재방문된(revisited) Oxford 및 Paris 데이터세트들(ROxford5K 및 RParis6K)에 대해 평가하였다. 각각의 데이터세트에는 난이도가 증가하는 두 가지 테스트 세트들인 "Medium"과 "Hard" 세트들이 따른다. 이러한 데이터세트들의 프로토콜에 따라, 실험들은 학습된 차원 축소 함수를 적용하여 갤러리 이미지들, 및 2048-dim 특징들이 미리 추출된 쿼리 이미지들의 세트 둘 모두를 인코딩했다. 이어서, 각각의 테스트 세트에 대해 ROxford5K 및 RParis6K에서 랜드마크 이미지 검색을 평가하고, 이러한 데이터세트들에 대한 표준 메트릭인 mAP(평균 정밀도)를 보고했다.
결과들에서, TLDR은 선형 투영기를 사용했고, TLDR1은 인수분해된 선형 투영기를 사용했으며, TLDR1 *은 1개의 은닉 계층이 있는 MLP 인코더를 사용했다. 대안으로, 최근접 이웃들을 계산하지 않고 가우시안 노이즈를 사용하여 합성이웃들을 생성하는 TLDRG도 사용되었다. 모든 실험 방법들은 2개의 은닉 계층들과 이러한 계층들의 각각에 대한 8192 차원들이 있는 MLP를 투영기로 사용했다.
결과들을 표 1에 보고된 여러 비지도 및 자기 지도(이웃 지도) 방법들과 비교하였다. 비지도 방법들의 경우, 목표가 재구성에 기초하는 반면, 이웃 지도 방법들은 학습을 안내하는 의사 레이블들로 최근접 이웃들을 사용한다. 노이즈 제거(denoising)는 추가된 가우시안 노이즈를 무시하도록 학습된다.
이들 데이터세트들에 대한 표준 관행인, 화이트닝이 있는 PCA로 차원을 축소하는 방법들에 대해 첫 비교를 하였다. 이어서, 학습 PCA는 재구성 손실이 있는 선형 인코더 및 투영기를 학습하는 것으로 다시 작성할 수 있다. 비교를 위해, 예시적인 방법들에 대한 결과들을 J. Zbontar 등에 공개된 손실을 사용하는 대신, 평균 제곱 오차 재구성 손실(MSE로 지칭됨)로 훈련된 것으로 보고하였다. 이 경우 입력의 차원과 일치시키기 위해 투영기의 출력을 2048 차원들로 축소했다.
방법 (자기-)지도 인코더 투영기 손실 비고
PCA 비지도 선형 선형 재구성 MSE + 직교성
DrLim 이웃-지도 MLP 없음 대조 투영기 없음(매우 낮은 성능)
DrLim:대조 이웃-지도 선형 MLP 대조 투영기가 있는 DrLim
MSE 비지도 선형 MLP 재구성 MSE MSE 손실이 있는 TLDR
TLDRG 잡음 제거 선형 MLP Barlow Twins (J. Zbontar 등) 잡음을 왜곡으로 갖는 TLDR
TLDR 이웃-지도 선형 MLP Barlow Twins
TLDR1. 2 이웃-지도 인수분해선형 MLP Barlow Twins
TLDR* 1,2 이웃-지도 MLP MLP Barlow Twins
또 다른 실험적 접근 방식인 대조 접근 방식은 투영기 출력의 상단에서 대비 손실을 사용했다. 이는 R. Hadsell et al., “Dimensionality reduction by learning an invariant mapping”(Proc. CVPR, volume 2, 2006)에 개시된 방법들과 일부 특징들을 공유했지만, 예시적인 방법들에서는 손실만 변경하고 표준 대조 방법들로 대체하였다.
비교를 위해, J. Revaud et al., “Learning with average precision: Training image retrieval with a listwise loss”(Proc. ICCV, 2019)”로부터의 초기 특징들에 대한 검색 결과들을, 즉 차원 축소 없이 또한 얻었다. 모든 실험 방법들은 최근접 이웃들의 수를 3으로 고정했지만, 예시적인 방법들은 광범위한 이웃들의 수에 대해 잘 수행할 수 있다.
결과
도 7 및 도 8은 출력 차원(
Figure pat00196
)이 변경됨에 따라 ROxford5K 및 RParis6K, 평균화 Medium 및 Hard 프로토콜들에 대한 mAP(평균 정밀도) 결과들을 도시한다. 예시적인 방법들의 두 선형 버전들 모두 상당한 차이로 PCA를 능가하는 것으로 관찰되었다. 예를 들어, TLDR은 PCA 기준선보다 128차원들에 대해 거의 4 mAP 포인트들만큼 ROxford5K 검색을 개선했다. MLP 기반 방법은 매우 작은 차원들(최대 128)에 대해 매우 경쟁력이 있었지만 더 큰 차원들에 대해서는 저하되었다. 또한, 예시적인 방법들은 그의 차원의 1/16만 사용하면서 입력 표현(GeM-AP)의 성능을 유지할 수 있었다. Zbontar et al. 에 따라 계산된 손실 대신 다른 손실(MSE 및 대조(Contrastive))을 사용하면, 실제 이웃들을 합성 이웃들로 대체하는 것과 같이 결과들이 저하되었다.
DINO 표현들: 위의 실험들은 지도를 사용하여 사전 훈련된 표현들에서 시작하여 랜드마크 검색 작업에 맞게 조정하고, 이어서 그들의 상단에서 비지도 방식으로 차원 축소를 학습했다. 추가 실험들에서 완전 비지도 경우를 평가하고 자기 지도 방식으로 학습된 표현들을 사용하여 예시적인 방법들의 성능을 평가했다.
도 9 및 도 10은 ViT-S/16 백본으로부터 DINO 특징들의 상단에서 차원 축소를 학습할 때 ROxford에 대한 결과들을 도시한다. 모든 경우들은 위에 제공된 평가 프로토콜을 따랐다.
도 9에서, 결과들은 ImageNet에서 훈련된 공개적으로 사용 가능한 ViT DINO 모델에서 시작하는 것으로 도시되며, GeM-AP 경우와 유사하게, ViT는 특징 추출기로 처리되고, 선형 인코더는 GLD-2 또는 ImageNet 데이터세트들을 사용하여 상단에서 학습되었다. 특징들과 차원 축소 둘 모두 임의의 지도 없이 학습되었다.
예시적인 방법들은 최고 성능의 경쟁 방법인 화이트닝이 있는 PCA에 비해 강력한 이득을 나타내고, 그 이득은 출력 차원들(
Figure pat00197
)의 다수의 값들과 모든 설정들에 걸쳐서 일관된다. 예를 들어, 다운스트림 랜드마크 도메인으로부터 레이블이 없는 데이터에 액세스한다고 가정하면, ViT 모델을 미세 조정할 필요 없이 상단에서 선형 인코더를 학습하기만 하면 DINO보다 큰 (+5. 4) mAP 이득을 달성할 수 있다. 또한 예시적인 훈련 방법들은 16차원들만 사용하면서 ROxford에 대한 DINO ViT 성능에 일치될 수 있었다.
도 10은 GLD-v2에서 비지도 방식으로 훈련된 공개적으로 사용 가능한 DINO 모델을 도시한다. Caron et al., 2021은 이 모델로부터의 전역 이미지 특징들을 사용하여 ROxford 및 RParis에 대한 표현들을 평가했으며, 그들은 평균 설정(medium/hard 분할들의 경우 0. 52/0. 24)에 대해 ROxford에서 37. 9% mAP를 보고했다. 예시적인 훈련 방법들은 그 결과를 개선할 수 있고, 자기 지도 학습을 사용할 때 ROxford에서 향상된 성능을 달성할 수 있는 것으로 나타난다:
Figure pat00198
의 경우 0. 43mAP(medium/hard 분할들의 경우 0. 57/0. 28), 이는 GLD-v2에서 학습한 원래 DINO 특징들을 사용하는 것보다 +4. 6% mAP 더 높다.
객체 검색
추가 실험들에서는
Figure pat00199
를 사용한 ImageNet 검색에 대한 예시적인 훈련 방법들의 성능을 평가했다. Caron et al., 2021 및 Wu et al., “Unsupervised feature learning via non-parametric instance discrimination”(IEEE Conference on Computer Vision and Pattern Recognition, 2018)의 프로토콜을 따르고, DINO 코드베이스에 제공된 대응하는 평가 스크립트들을 실행했다. 훈련 세트를 데이터베이스로 사용하여 ImageNet val 세트의 모든 이미지들로 쿼리들을 수행했다. DINO와 유사하게, 20-NN을 사용하여 결과들을 제공하였다.
DINO ResNet-50 및 ViT-S/16 모델들에 대한 Top-1 정확도는 도 11에 예시되어 있으며, 도 12는 출력 벡터 크기의 함수로 축소된 특징들의 PQ 양자화 후 성능을 도시한다. 예시적인 방법들은 이 경우에도 PCA보다 일관되게 더 나은 성능을 보이는 것으로 나타났으며, ResNet-50 예시적인 방법들의 경우 d=32/64/128에 비해 PCT보다 +9. 4/5. 1/2. 7% 이득을 제공했다. ViT의 경우, 성능은 더 높았고 이득은 더 작았지만, 여전히 일관성이 있었다. 일반적으로, 예시적인 TLDR 인코더들은 양측 백본들에 대해 그리고
Figure pat00200
에 대한 모든 출력 차원에 대해 ImageNet k-NN에서 DINO의 검색 성능을 개선시킨 반면, PCA는 DINO의 성능을 개선시키지 않았다. 또한 TLDR은 256-차원들만으로 원래의 2048-차원 특징들을 능가할 수 있게 되어, ResNet-50의 경우 성능 손실 없이 10배 압축을 달성하거나, ViT-S/16 DINO의 경우 256-차원 특징들로 ImageNet에 대해 약 75% Top-1 정확도에 도달하는 것으로 나타났다.
제1 단계 문서 검색
문서 검색의 경우, 프로세스는 일반적으로 두 단계들로 분류된다: 제1 단계에서는 후보자들의 작은 세트를 선택하는 반면, 제2 단계에서는 이들의 순위를 다시 매긴다. 더 작은 세트에서 작업하기 때문에, 이 제2 단계는 비용이 많이 드는 전략을 사용할 수 있지만, 제1 단계는 스케일링이 필요하다. 이를 수행하는 일반적인 방법은 종종 지도 방식으로 제1 검색 단계에서 사용되는 표현들의 차원을 축소하는 것이다. 예시적인 방법들을 사용한 실험들은 지도 접근 방식이 불가능한 문서 검색 시나리오들, 예컨대, 그러한 훈련 데이터가 이용 가능하지 않은 때에 비지도 차원 축소의 사용을 조사했다.
Xiong et al., “Approximate nearest neighbor negative contrastive learning for dense text retrieval”(International Conference on Learning Representations, 2021)에 개시된 바와 같이 QA(Question Answering), ANCE에 대해 훈련된 모델로부터 768-차원 특징들이 추출되었다. 실험들에는 차원 축소 함수를 학습하기 위해 380k 문서들로 이루어진 대화식 인수 데이터세트(conversational argument dataset)인 Webis-Touch
Figure pat00201
-2020을 사용했다. 테스트 시나리오는 반대 인수 검색 데이터세트(counter-argument retrieval dataset)인 ArguAna였다.
N. Thakur et al., “BEIR: a heterogeneous benchmark for zero-shot evaluation of information retrieval models, arXiv preprint arXiv:2104. 08663, 2021”에 제공된 바와 같이 데이터세트들의 편집이 사용되었으며, 그에 개시된 표준 평가 절차를 따랐다(1단계 검색의 경우 recall@100). 조기 중지를 수행하기 위해, Webis-Touch
Figure pat00202
-2020로부터의 쿼리들이 사용되었으며, 두 데이터세트들에는 지도 학습을 위한 훈련 쌍들/개발 쿼리들은 포함되지 않고 말뭉치와 테스트 쿼리들만 포함되었다. 테스트 결과들에 대해, 5가지 상이한 초기화들이 사용되었으며 평균과 표준 편차가 보고되었다.
다양한 버전들의 예시적인 TLDR 방법들이 평가되고 비교되었다. TLDR은 선형 인코더를 사용하는 반면, TLDR1 및 TLDR2는 각각 하나의 은닉 계층과 2개의 은닉 계층들이 있는 인수분해된 선형 인코더를 사용했다. 최고 성능의 경쟁 대상인 PCA와 비교했다. 768-차원 초기 특징들로 검색 결과들을 얻었다.
도 13 및 도 14는 다양한 출력 차원들(
Figure pat00203
)에 대한 ArguAna의 검색 결과들을 도시한다. 선형 버전의 TLDR이
Figure pat00204
의 거의 모든 값들에 대해 PCA보다 성능이 우수한 것으로 관찰되었다. 선형 인수분해된 것들은 모든 시나리오들에서 PCA의 성능을 능가했다. PCA에 비해 TLDR이 가져온 이득은
Figure pat00205
이 감소할수록 증가했다. 초기 ANCE 표현과 동일한 결과들이 또한 그의 차원들의 4%만 사용하여 달성되었다. 반면 PCA는 유사한 성능을 달성하기 위해 두 배 더 많은 차원들이 필요했다. 훈련 세트의 동일한 랜드마크로부터 도래한 이웃들만 쌍들로 유지하도록 레이블들을 사용하여 다른 예시적인 방법들을 수정하였다. 결과들은 PCA와 동등한 ICAW의 성능을 훨씬 능가했다.
예시적인 TLDR 방법들은 최근접 이웃들의 근사 계산에 대해 강인했으며, 이는 양자화 예산(최근접 이웃 검색 동안 각각의 이미지에 사용된 바이트 양)을 변경하면서 제품 양자화를 사용하여 입증되었다. 강력한 양자화(예컨대, 기본 크기의 1/64)의 경우에도 예시적인 TLDR 방법들은 근사를 사용하지 않는 것과 동일한 결과들을 달성했다. 더 큰 훈련 세트들은 PCA와 같은 방법들과 비교해도 예시적인 방법들의 성능을 더욱 향상시킬 수 있다.
도 15 및 도 16은 특정 하이퍼 파라미터들을 변경할 때의 예시적인 성능에 미치는 영향을 예시한다. 도 15는 투영기의 아키텍처를 변경할 때의 실험들의 결과들을 도시한다. 은닉 계층들을 가지면 일반적으로 결과들이 향상되었다. 또한, 손실을 계산하기 위해 높은 보조 차원(d')을 가지면 성능에 크게 영향을 미쳤다.
도 16은 이웃들(
Figure pat00206
)의 수를 변경하는 것으로 인한 결과들을 도시한다. 성능은 광범위한 이웃들(
Figure pat00207
)의 수뿐만 아니라 여러 배치 크기들에 걸쳐 예시적인 방법들의 놀라울 정도로 일관된 성능이었다.
실험들이 동일한 작업(예컨대, 인수 검색 작업 하의 제1 단계 문서 검색)을 위해 설계된 데이터세트들에 대해 차원 축소 및 평가를 수행했지만, 차원 축소 및 평가를 중복 쿼리 검색과 같은 다른 작업들로 확장하는 것도 가능하다. 이러한 예시적인 방법들에서, 차원 축소는 동일한 작업에 대해서 가능할 뿐만 아니라 전이될 수도 있다. 이는 예를 들어 데이터세트들의 쿼리들 및 문서들이 다른 도메인들에 속하거나 비대칭 검색이 있는 경우에도 적용될 수 있다. 반대 인수 검색 데이터세트들, 인수 검색 데이터세트들 및 상이한 포럼들로부터의 중복 질문 검색 데이터세트들을 포함한 다양한 데이터세트들의 조합들이 훈련 및 테스트를 위한 실험들에 사용되었다. 예시적인 방법들은 저차원들의 PCA에 대해 더 잘 수행되었다. 또한, 최상의 인코딩 방법(선형 또는 인수분해된 선형)은 원본 데이터세트의 쿼리들 및 문서들의 길이에 따라 달랐다(길이가 동일한 것들이 더 많으면 인수분해된 선형이 더 좋고, 길이가 동일한 것들이 더 적으면 선형이 더 좋음).
주 표현 인코더와 함께 종단간 또는 독립적으로 차원 축소를 학습하는 것도 가능하다. 예를 들어, 인코더를 변경하거나 미세 조정하는 것이 바람직하지 않거나 시간이 많이 소요되는 경우, 또는 복잡성이 차원에 연결되어 있는 향후의 동작들(예컨대, 양자화, 인덱싱)을 위한 계산을 감소시키기 위해 차원 축소를 독립적으로 학습하는 것이 바람직할 수 있다. 차원을 감소시키면 메모리를 크게 절약하고 쿼리 시간을 단축할 수 있게 한다. 차원 축소에 대한 독립적인 학습은 또한 출력 공간이 2차원 내지 3차원일 수 있는 경우(예컨대, 원시 픽셀 데이터로부터 직접 학습)와 같은 시각화 작업들에도 유용한다. 반면에 주요 표현과 함께 축소를 학습하는 것은, 특정 도메인들의 경우, 입력 공간에 대한 사전 지식이 활용될 수 있는 경우에 유용할 수 있다(예컨대, 이미지들에 대한 데이터 증강들 또는 텍스트의 마스킹된 언어 모델링).
일부 예시적인 방법들은 예컨대,
Figure pat00208
가 32 내지 256 차원들인 경우, 대부분의 매니폴드 학습 방법들이 스케일링될 수 없는 범위인 중간 크기 출력들로의 차원 축소에 유용할 수 있다. 이것은 비제한적인 예로서 검색에 유용할 수 있다. 예시적인 방법들은 다운스트림 작업으로부터 임의의 레이블이 있는 데이터를 필요로 하지 않고, 그리고 대규모 인코더들을 미세 조정하지 않고, 예컨대, 대규모 사전 훈련된 모델들로부터의 사전 훈련된 표현들을 새로운 도메인 또는 새로운 작업으로 적용하는 계산적으로 효율적인 방식들을 추가로 제공할 수 있다.
예시적인 방법들은 이웃 임베딩 학습을 효과적이고 구현이 쉬운 자기 지도 학습 손실과 결합할 수 있다. 예시적인 방법들은 스케일링 가능하다. 비제한적인 예로서, 확률적 경사 하강법을 통해 학습함으로써, 예시적인 방법들은 그래픽 처리 장치들(GPU들) 및 기타 기계들을 포함하지만 이에 제한되지 않는 프로세서들 전반에 걸쳐 쉽게 병렬화할 수 있으며, 대규모 데이터세트들의 경우에도 근사적으로 최근접 이웃 방법들이 사용되어 하위 선형 복잡성의 입력 쌍들을 생성할 수 있다. 예시적인 방법들은 학습률, 가중치 감소, 스케일링, 오프셋/가중치, 배치 크기, 최근접 이웃들의 수 등과 같은 많은 하이퍼 파라미터들에 대해 강인하다. 예시적인 손실 목표들은 강인하고 최적화하기 쉬우면서도 적지 않은 해결책들을 제공할 수 있다. 예시적인 훈련 방법들은 표현들을 압축할 뿐만 아니라 그러한 표현들을 통합하거나 그에 의존하는 기존 모델들의 성능을 향상시키는 효과적인 방법들을 제공할 수도 있다. 추가적으로, 다른 방법들과 달리, 예시적인 방법들은 학습된 차원 축소 함수를 통해 훈련 세트의 임의의 벡터를 전달하면 입력 특징들이 감소한다는 점에서 샘플 외 일반화를 제공할 수 있다. 또한, 예시적인 방법들을 사용한 인코딩은 단순한 선형 연산에 해당할 수 있으므로, 이러한 인코딩은 예를 들어 다양한 작업들 및 환경들에서 PCA와 같은 인코딩 방법들에 대한 직접적 대체로서 사용될 수 있다.
일반
본 발명의 실시예들은 무엇보다도, 차원 축소 모델을 훈련시키기 위해 프로세서 및 메모리에 의해 수행되는 방법을 제공하며, 차원 축소 모델은
Figure pat00209
-차원 표현 공간에서 입력 벡터를 수신하고,
Figure pat00210
-차원 표현 공간에서 출력 벡터를 생성하고,
Figure pat00211
Figure pat00212
보다 더 크고, 차원 축소 모델은 하나 이상의 훈련 가능한 파라미터들에 의해 정의되며, 방법은,
Figure pat00213
-차원 공간에서
Figure pat00214
포지티브 쌍들의 훈련 벡터들의 배치를 생성하는 단계 - 각각의 포지티브 쌍은 제1 훈련 벡터 및 제2 훈련 벡터를 포함하고, 상기 생성하는 단계는 각각의 포지티브 쌍에 대해,
Figure pat00215
-차원 표현 공간에서 훈련 벡터들의 세트로부터 제1 훈련 벡터를 선택하는 단계, 및 제1 훈련 벡터에 근접한
Figure pat00216
-차원 공간에서 제2 훈련 벡터를 (예컨대, 생성 또는 선택함으로써) 식별하는 단계를 포함함 -, 각각 제1 및 제2 저차원 벡터들을 제공하기 위해 차원 축소 모델을 사용하여
Figure pat00217
포지티브 쌍들의 배치의 각각의 제1 및 제2 훈련 벡터들을
Figure pat00218
-차원 표현 공간으로 인코딩함으로써
Figure pat00219
저차원 벡터 쌍들의 배치를 생성하는 단계, 각각 제1 및 제2 증강 차원 벡터들을 제공하기 위해 차원(
Figure pat00220
)을 갖는 증강 차원 표현 공간에
Figure pat00221
저차원 벡터 쌍들의 배치의 각각의 제1 및 제2 저차원 벡터들을 투영함으로써
Figure pat00222
증강 차원 벡터 쌍들의 배치를 생성하는 단계 -
Figure pat00223
Figure pat00224
보다 더 큼 -,
Figure pat00225
증강 차원 벡터 쌍들의 배치에 대해 제1 및 제2 증강 차원 벡터들 사이의 유사성 보존 손실 및 중복 감소 손실을 계산하는 단계, 및 계산된 유사성 보존 손실 및 계산된 중복 감소 손실에 기초하여 총 손실을 최소화하도록 차원 축소 모델의 파라미터들을 최적화하는 단계를 포함한다. 본 단락의 위의 특징들 중 임의의 특징에 더하여,
Figure pat00226
포지티브 쌍들의 배치의 각각에서 제2 훈련 벡터를 식별하는 단계는 제1 훈련 벡터에 잡음을 추가함으로써 합성 훈련 벡터를 생성하는 단계를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여,
Figure pat00227
포지티브 쌍들의 배치의 각각에서 제2 훈련 벡터를 생성하거나 선택하는 단계는 훈련 벡터들의 세트로부터 제1 훈련 벡터에 근접한 훈련 벡터를 선택하는 단계를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여,
Figure pat00228
포지티브 쌍들의 배치의 각각에서 제2 훈련 벡터를 식별하는 단계는, 선택된 훈련 벡터의 이웃을 제공하기 위해 메트릭에 대해 제1 훈련 벡터에 대한
Figure pat00229
최근접 이웃들의 세트를 결정하는 단계, 및 결정된
Figure pat00230
최근접 이웃들의 세트로부터 제2 훈련 벡터를 선택하는 단계를 포함할 수 있으며,
Figure pat00231
는 선택 가능한 파라미터이다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 제2 훈련 벡터를 선택하는 단계는 결정된
Figure pat00232
최근접 이웃들의 세트를 샘플링하는 단계를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 메트릭은 훈련 벡터들 사이의 유클리드 거리를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 메트릭은 훈련 벡터들 사이의 비-유클리드 거리를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 메트릭은 훈련 벡터들의 각각의 주위의 반경을 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 유사성 보존 손실을 계산하는 단계는 공통 차원들에 대한
Figure pat00233
증강 차원 벡터 쌍들의 배치에 대해 제1 및 제2 증강 차원 벡터들 사이의 상호 상관을 계산하는 단계를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 중복 감소 손실을 계산하는 단계는
Figure pat00234
증강 차원 벡터 쌍들의 배치에 대해 제1 및 제2 증강 차원 벡터들의 차원들 사이의 상관관계를 계산하는 단계를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 중복 감소 손실을 계산하는 단계는 공통 차원들 이외의 차원들에 대한
Figure pat00235
증강 차원 벡터 쌍들의 배치에 대해 제1 및 제2 증강 벡터들 사이의 상호 상관을 계산하는 단계를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 유사성 보존 손실을 계산하는 단계 및 상기 중복 감소 손실을 계산하는 단계는
Figure pat00236
증강 차원 벡터 쌍들의 배치에 대해 제1 및 제2 증강 벡터들 사이의
Figure pat00237
상호-상관 행렬을 계산하는 단계를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 총 손실은 오프셋 파라미터에 의해 가중된, 유사성 보존 손실 및 중복 감소 손실을 계산하는 것에 기초한다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 차원 축소 함수는 파라미터화된 신경망에서 구현된다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 차원 축소 함수는 선형 함수를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 차원 축소 함수는 비선형 함수를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 차원 축소 함수는 인수분해된 선형 함수를 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 차원 축소 함수는 선형 및 비선형 함수들을 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 차원 축소 함수는 파라미터화된 신경망에서 구현될 수 있고, 차원 축소 함수는 은닉 유닛들 및 선형 투영 유닛을 갖는 다층 퍼셉트론을 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 파라미터화된 신경망은 배치 정규화를 더 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 투영하는 단계는 다층 퍼셉트론을 사용할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 투영하는 단계는 선형 투영기를 사용할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 투영하는 단계는 비선형 투영기를 사용할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 파라미터들을 최적화하는 단계는 확률적 경사 하강법을 사용할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 방법은 비지도 방식일 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 방법은 자기 지도 또는 이웃 지도 방식일 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 훈련 벡터들의 세트의 각각의 훈련 벡터는 토큰, 문장, 단락, 문서, 이미지, 이미지의 패치 또는 임의의 영역, 비디오, 파형, 3D 모델, 3D 포인트 클라우드 또는 테이블 형식 데이터의 임베딩들 중 하나 이상을 나타낼 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여,
Figure pat00238
-차원 공간의 훈련 벡터들의 세트의 각각의 훈련 벡터는 특징 세트의 핵심 표현을 포함할 수 있다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 핵심 표현은 오프라인으로 생성된다. 본 단락의 위의 특징들 중 임의의 특징에 더하여, 방법은 최적화된 파라미터들을 저장하는 단계를 더 포함할 수 있다.
본 발명의 추가의 실시예들은 무엇보다도 프로세서 및 메모리를 사용하여 입력 벡터를 인코딩하기 위한 방법을 제공하며, 방법은,
Figure pat00239
-차원 표현 공간에서 입력 벡터를 수신하고
Figure pat00240
-차원 표현 공간에서 출력 벡터를 생성하도록 훈련된 차원 축소 모델에 입력 벡터를 입력하는 단계 -
Figure pat00241
Figure pat00242
보다 더 크고, 차원 축소 모델은 하나 이상의 훈련 가능한 파라미터들에 의해 정의됨 -; 차원 축소 모델은,
Figure pat00243
-차원 공간에서
Figure pat00244
포지티브 쌍들의 훈련 벡터들의 배치를 생성하는 단계 - 각각의 포지티브 쌍은 제1 훈련 벡터 및 제2 훈련 벡터를 포함하고, 상기 생성하는 단계는 각각의 포지티브 쌍에 대해,
Figure pat00245
-차원 표현 공간에서 훈련 벡터들의 세트로부터 제1 훈련 벡터를 선택하는 단계, 및 제1 훈련 벡터에 근접한
Figure pat00246
-차원 공간에서 제2 훈련 벡터를 (예컨대, 생성 또는 선택함으로써) 식별하는 단계를 포함함 -, 각각 제1 및 제2 저차원 벡터들을 제공하기 위해 차원 축소 모델을 사용하여
Figure pat00247
포지티브 쌍들의 배치의 각각의 제1 및 제2 훈련 벡터들을
Figure pat00248
-차원 표현 공간으로 인코딩함으로써
Figure pat00249
저차원 벡터 쌍들의 배치를 생성하는 단계, 각각 제1 및 제2 증강 차원 벡터들을 제공하기 위해 차원(
Figure pat00250
)을 갖는 증강 차원 표현 공간에
Figure pat00251
저차원 벡터 쌍들의 배치의 각각의 제1 및 제2 저차원 벡터들을 투영함으로써
Figure pat00252
증강 차원 벡터 쌍들의 배치를 생성하는 단계 -
Figure pat00253
Figure pat00254
보다 더 큼 -,
Figure pat00255
증강 차원 벡터 쌍들의 배치에 대해 제1 및 제2 증강 차원 벡터들 사이의 유사성 보존 손실 및 중복 감소 손실을 계산하는 단계, 및 계산된 유사성 보존 손실 및 계산된 중복 감소 손실에 기초하여 총 손실을 최소화하도록 차원 축소 모델의 파라미터들을 최적화하는 단계를 포함하는 방법에 의해 훈련됨 -;
Figure pat00256
-차원 공간에서 인코딩된 출력 벡터를 생성하기 위해 훈련된 차원 축소 모델을 사용하여 입력 벡터를 인코딩하는 단계; 및 인코딩된 출력 벡터를 출력하는 단계를 포함한다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 차원 축소 모델은 신경망을 포함한다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 방법은
Figure pat00257
-차원 공간에서 입력의 핵심 표현을 생성하는 단계를 더 포함할 수 있다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 방법은 입력의 핵심 표현을 정규화하는 단계를 더 포함할 수 있다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 입력은 토큰, 문서, 문장, 단락, 이미지, 비디오, 파형, 3D 모델, 3D 포인트 클라우드, 또는 테이블 형식 데이터의 임베딩들 중 하나 이상을 나타낼 수 있다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 방법은 작업을 수행하기 위해 차원 축소 모델의 다운스트림의 인코딩된 출력 벡터를 처리하는 단계를 포함할 수 있다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 작업은 데이터 검색 작업을 포함할 수 있다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 데이터 검색 작업은 고차원 벡터 공간에 대한 것일 수 있다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 데이터 검색 작업은 유클리드 메트릭들을 사용할 수 있다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 데이터 검색 작업들은 비-유클리드 메트릭들을 사용할 수 있다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 작업은 이미지 검색 작업 또는 문서 검색 작업을 포함할 수 있다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여,
Figure pat00258
증강 차원 벡터 쌍들의 배치를 생성하는 단계는 투영기를 사용할 수 있고, 훈련된 이후의 훈련된 차원 축소 모델은 투영기를 생략할 수 있다(포함하지 않을 수 있다). 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 훈련 동안의 차원 축소 모델은 선형 인코더 및 비선형 인코더를 사용할 수 있고, 훈련된 이후의 훈련된 차원 축소 모델은 비선형 인코더를 생략할 수 있다(사용하지 않을 수 있다).
본 발명의 추가 실시예들은 무엇보다도 신경망 모델을 훈련시키기 위한 방법을 제공하며, 신경망 모델은 인코더 및 인코더의 다운스트림의 작업 수행 모델을 포함하고, 방법은, 입력 벡터들 및 연관 레이블들의 훈련 세트를 제공하는 단계, 입력 벡터들을 인코더에 입력하는 단계 - 인코더는
Figure pat00259
-차원 표현 공간에서 입력 벡터를 수신하고,
Figure pat00260
-차원 표현 공간에서 출력 벡터를 생성하는 차원 축소 모델을 포함하고,
Figure pat00261
Figure pat00262
보다 더 크고, 차원 축소 모델은 하나 이상의 훈련 가능한 파라미터들에 의해 정의되고, 차원 축소 모델은,
Figure pat00263
-차원 공간에서
Figure pat00264
포지티브 쌍들의 훈련 벡터들의 배치를 생성하는 단계 - 각각의 포지티브 쌍은 제1 훈련 벡터 및 제2 훈련 벡터를 포함하고, 상기 생성하는 단계는 각각의 포지티브 쌍에 대해,
Figure pat00265
-차원 표현 공간에서 훈련 벡터들의 세트로부터 제1 훈련 벡터를 선택하는 단계, 및 제1 훈련 벡터에 근접한(그리고 제1 훈련 벡터와 레이블을 공유할 수 있는) 제2 훈련 벡터를
Figure pat00266
-차원 공간에서 식별하는 단계를 포함함 -, 각각 제1 및 제2 저차원 벡터들을 제공하기 위해 차원 축소 모델을 사용하여
Figure pat00267
포지티브 쌍들의 배치의 각각의 제1 및 제2 훈련 벡터들을 d-차원 표현 공간으로 인코딩함으로써
Figure pat00268
저차원 벡터 쌍들의 배치를 생성하는 단계, 각각 제1 및 제2 증강 차원 벡터들을 제공하기 위해 차원(
Figure pat00269
)을 갖는 증강 차원 표현 공간에
Figure pat00270
저차원 벡터 쌍들의 배치의 각각의 제1 및 제2 저차원 벡터들을 투영함으로써
Figure pat00271
증강 차원 벡터 쌍들의 배치를 생성하는 단계 -
Figure pat00272
Figure pat00273
보다 더 큼 -,
Figure pat00274
증강 차원 벡터 쌍들의 배치에 대해 제1 및 제2 증강 차원 벡터들 사이의 유사성 보존 손실 및 중복 감소 손실을 계산하는 단계, 및 계산된 유사성 보존 손실 및 계산된 중복 감소 손실에 기초하여 총 손실을 최소화하도록 차원 축소 모델의 파라미터들을 최적화하는 단계를 포함하는 방법에 의해 훈련됨 -, 인코딩된 출력 벡터들을 생성하기 위해 훈련된 차원 축소 모델을 사용하여 입력 벡터들을 인코딩하는 단계, 및 인코딩된 출력 벡터들과 입력 레이블들을 사용하여 작업 수행 모델을 훈련시키는 단계를 포함한다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 차원 축소 모델은 신경망을 포함할 수 있다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 방법은
Figure pat00275
-차원 공간에서 입력 벡터들의 훈련 세트의 각각에 대한 입력의 핵심 표현을 생성하는 단계를 더 포함할 수 있다. 이전 단락의 위의 특징들 중 임의의 특징에 더하여, 방법은 입력의 핵심 표현을 정규화하는 단계를 더 포함할 수 있다. 이전 단락의 임의의 위 특징들에 추가하여, 훈련 세트의 훈련 벡터들은 토큰, 문서, 이미지, 이미지 패치 또는 이미지의 임의의 영역, 비디오, 파형, 3D 모델, 3D 포인트 클라우드, 또는 테이블 형식 데이터 임베딩들 중 하나 이상을 나타낼 수 있다.
전술한 설명은 본질적으로 단지 예시적인 것이며, 본 개시내용, 그의 애플리케이션, 또는 사용들을 제한하려는 것이 아니다. 본 개시내용의 광범위한 교시들은 다양한 형태들에서 구현될 수 있다. 따라서, 본 개시내용은 특정 예들을 포함하지만, 본 개시내용의 진정한 범위는 그들에 제한되지 않아야 하는데, 이는 도면들, 명세서 및 하기 청구범위의 연구에 따라 다른 변형들이 명백해질 것이기 때문이다. 방법 내의 하나 이상의 단계들은 본 개시내용의 원리들을 변경하지 않고 상이한 순서로(또는 동시에) 실행될 수 있음을 이해해야 한다. 또한, 각각의 실시예들은 소정의 특징들을 갖는 것으로 전술되었지만, 본 개시내용의 임의의 실시예와 관련하여 기술된 이들 특징들 중 임의의 하나 이상은 임의의 다른 실시예들의 특징들로 구현되고/되거나 결합될 수 있는데, 그 조합은 명시적으로 기술되지는 않는다 다시 말해서, 기술된 실시예들은 상호 배타적이지 않으며, 하나 이상의 실시예들의 서로의 순열은 본 개시내용의 범위 내에 있다.
모듈은 하나 이상의 인터페이스 회로들을 포함할 수 있다. 일부 예들에서, 인터페이스 회로들은 근거리 통신망(LAN), 인터넷, 광역 통신망(WAN) 또는 이들의 조합에 연결된 유선 또는 무선 인터페이스들을 포함할 수 있다. 본 개시내용의 임의의 주어진 모듈의 기능은 인터페이스 회로들을 통해 연결된 다수의 모듈들에 분산될 수 있다. 예를 들어, 다수의 모듈들이 로드 밸런싱(load balancing)을 허용할 수 있다. 다른 예에서, 서버(또한 원격 또는 클라우드라고도 알려짐) 모듈은 클라이언트 모듈 대신 일부 기능을 달성할 수 있다. 각각의 모듈은 코드를 사용하여 구현될 수 있다. 위에 사용된 용어 ‘코드’는 소프트웨어, 펌웨어 및/또는 마이크로 코드를 포함할 수 있으며, 프로그램들, 루틴들, 기능들, 클래스들, 데이터 구조들 및/또는 객체들을 지칭할 수 있다.
용어 ‘메모리 회로’는 용어. 컴퓨터 판독가능 매체의 서브세트이다. 본 명세서에서 사용되는 용어 ‘컴퓨터 판독가능 매체’는 (예를 들어, 반송파 상에서) 매체를 통해 전파되는 일시적인 전기 또는 전자기 신호들을 포함하지 않으며; 따라서 용어 ‘컴퓨터 판독가능 매체’는 유형의(tangible) 비일시적인 것으로 간주될 수 있다. 비일시적, 유형의 컴퓨터 판독가능 매체의 비제한적 예들은 비휘발성 메모리 회로들(예를 들어, 플래시 메모리 회로, 소거 가능 프로그래밍가능 판독 전용 메모리 회로, 또는 마스크 판독 전용 메모리 회로), 휘발성 메모리 회로들(예를 들어, 정적 랜덤 액세스 메모리 회로, 동적 랜덤 액세스 메모리 회로), 자기 저장 매체(예를 들어, 아날로그 또는 디지털 자기 테이프 또는 하드 디스크 드라이브), 및 광학 저장 매체(예를 들어, CD, DVD 또는 블루레이 디스크)를 포함한다.
본 출원에 설명된 시스템들 및 방법들은 컴퓨터 프로그램들로 구현된 하나 이상의 특정 기능들을 실행하도록 범용 컴퓨터를 구성함으로써 생성된 특수 목적 컴퓨터에 의해 부분적으로 또는 완전히 구현될 수 있다. 전술한 기능 블록들, 흐름도 구성요소들 및 기타 요소들은 숙련된 기술자 또는 프로그래머의 일상적인 작업에 의해 컴퓨터 프로그램들로 변환될 수 있는 소프트웨어 사양들로서 역할을 한다.
컴퓨터 프로그램들은 적어도 하나의 비일시적, 유형의 컴퓨터 판독가능 매체에 저장된 프로세서 실행가능 명령어들을 포함한다. 컴퓨터 프로그램들은 또한 저장된 데이터를 포함하거나 그에 의존할 수 있다. 컴퓨터 프로그램은 특수 목적 컴퓨터의 하드웨어와 상호작용하는 기본 입/출력 시스템(BIOS), 특수 목적 컴퓨터의 특정 디바이스들과 상호작용하는 디바이스 드라이버들, 하나 이상의 운영 체제들, 사용자 애플리케이션들, 배경 서비스들, 배경 애플리케이션들 등을 포함할 수 있다.
다수의 위에 개시된 실시예들의 변형예들 및 다른 특징들 및 기능들, 또는 그의 대안들이 바람직하게는 많은 다른 상이한 시스템들 또는 응용들로 조합될 수 있음이 이해될 것이다. 또한, 다양한 현재 예기치 않거나 뜻밖의 대안들, 수정들, 변형들, 또는 그 내의 개선들이 당업자에 의해 후속적으로 이루어질 수 있고, 이들은 또한 상기 설명 및 하기 특허 청구범위에 의해 포함되도록 의도된다.

Claims (40)

  1. 차원 축소(dimensionality reduction) 모델을 훈련시키기 위해 프로세서 및 메모리에 의해 수행되는 방법으로서, 상기 차원 축소 모델은
    Figure pat00276
    -차원 표현 공간에서 입력 벡터를 수신하고,
    Figure pat00277
    -차원 표현 공간에서 출력 벡터를 생성하고,
    Figure pat00278
    Figure pat00279
    보다 더 크고, 상기 차원 축소 모델은 하나 이상의 파라미터들에 의해 정의되며, 상기 방법은,
    상기
    Figure pat00280
    -차원 공간에서
    Figure pat00281
    포지티브 쌍들의 훈련 벡터들의 배치를 생성하는 단계 - 각각의 포지티브 쌍은 제1 훈련 벡터 및 제2 훈련 벡터를 포함하고, 상기 생성하는 단계는 각각의 포지티브 쌍에 대해,
    상기
    Figure pat00282
    -차원 표현 공간에서 훈련 벡터들의 세트로부터 상기 제1 훈련 벡터를 선택하는 단계, 및
    상기 제1 훈련 벡터에 근접한 상기
    Figure pat00283
    -차원 공간에서 제2 훈련 벡터를 식별하는 단계를 포함함 -;
    각각 제1 및 제2 저차원 벡터들을 제공하기 위해 상기 차원 축소 모델을 사용하여 상기
    Figure pat00284
    포지티브 쌍들의 배치의 각각의 상기 제1 및 제2 훈련 벡터들을 상기
    Figure pat00285
    -차원 표현 공간으로 인코딩함으로써
    Figure pat00286
    저차원 벡터 쌍들의 배치를 생성하는 단계;
    각각 제1 및 제2 증강 차원 벡터들을 제공하기 위해 차원(
    Figure pat00287
    )을 갖는 증강 차원 표현 공간에 상기
    Figure pat00288
    저차원 벡터 쌍들의 배치의 각각의 상기 제1 및 제2 저차원 벡터들을 투영함으로써
    Figure pat00289
    증강 차원 벡터 쌍들의 배치를 생성하는 단계 -
    Figure pat00290
    Figure pat00291
    보다 더 큼 -;
    상기
    Figure pat00292
    증강 차원 벡터 쌍들의 배치에 대해 상기 제1 및 제2 증강 차원 벡터들 사이의 유사성 보존 손실 및 중복 감소 손실을 계산하는 단계; 및
    상기 계산된 유사성 보존 손실 및 상기 계산된 중복 감소 손실에 기초하여 총 손실을 최소화하도록 상기 차원 축소 모델의 상기 파라미터들을 최적화하는 단계를 포함하는, 방법.
  2. 제1항에 있어서,
    상기
    Figure pat00293
    포지티브 쌍들의 배치의 각각에서 상기 제2 훈련 벡터를 식별하는 단계는,
    상기 제1 훈련 벡터에 잡음을 추가함으로써 합성 훈련 벡터를 생성하는 단계를 포함하는, 방법.
  3. 제1항에 있어서,
    상기
    Figure pat00294
    포지티브 쌍들의 배치의 각각에서 상기 제2 훈련 벡터를 식별하는 단계는,
    상기 훈련 벡터들의 세트로부터 상기 제1 훈련 벡터에 근접한 훈련 벡터를 선택하는 단계를 포함하는, 방법.
  4. 제3항에 있어서,
    상기
    Figure pat00295
    포지티브 쌍들의 배치의 각각에서 상기 제2 훈련 벡터를 식별하는 단계는,
    상기 선택된 훈련 벡터의 이웃을 제공하기 위해 메트릭과 관련하여 상기 제1 훈련 벡터에 대한
    Figure pat00296
    최근접 이웃들의 세트를 결정하는 단계; 및
    상기 결정된
    Figure pat00297
    최근접 이웃들의 세트로부터 상기 제2 훈련 벡터를 선택하는 단계를 포함하며,
    상기
    Figure pat00298
    는 선택 가능한 파라미터인, 방법.
  5. 제4항에 있어서,
    상기 제2 훈련 벡터를 선택하는 단계는,
    상기 결정된
    Figure pat00299
    최근접 이웃들의 세트를 샘플링하는 단계를 포함하는, 방법.
  6. 제4항에 있어서,
    상기 메트릭은 훈련 벡터들 사이의 유클리드 거리를 포함하는, 방법.
  7. 제4항에 있어서,
    상기 메트릭은 훈련 벡터들 사이의 비-유클리드 거리를 포함하는, 방법.
  8. 제4항에 있어서,
    상기 메트릭은 상기 훈련 벡터들의 각각의 주위의 반경을 포함하는, 방법.
  9. 제1항에 있어서,
    상기 유사성 보존 손실을 계산하는 단계는,
    공통 차원들에 대한 상기
    Figure pat00300
    증강 차원 벡터 쌍들의 배치에 대해 상기 제1 및 제2 증강 차원 벡터들 사이의 상호 상관을 계산하는 단계를 포함하는, 방법.
  10. 제9항에 있어서,
    상기 중복 감소 손실을 계산하는 단계는,
    상기
    Figure pat00301
    증강 차원 벡터 쌍들의 배치에 대해 상기 제1 및 제2 증강 차원 벡터들의 차원들 사이의 상관관계를 계산하는 단계를 포함하는, 방법.
  11. 제9항에 있어서,
    상기 중복 감소 손실을 계산하는 단계는,
    상기 공통 차원들 이외의 차원들에 대한 상기
    Figure pat00302
    증강 차원 벡터 쌍들의 배치에 대해 상기 제1 및 제2 증강 벡터들 사이의 상호 상관을 계산하는 단계를 포함하는, 방법.
  12. 제11항에 있어서,
    상기 유사성 보존 손실을 계산하는 단계 및 상기 중복 감소 손실을 계산하는 단계는,
    상기
    Figure pat00303
    증강 차원 벡터 쌍들의 배치에 대해 상기 제1 및 제2 증강 벡터들 사이의
    Figure pat00304
    상호-상관 행렬을 계산하는 단계를 포함하는, 방법.
  13. 제1항에 있어서,
    상기 총 손실은 오프셋 파라미터에 의해 가중된 유사성 보존 손실 및 중복 감소 손실을 계산하는 것에 기초하는, 방법.
  14. 제1항에 있어서,
    상기 차원 축소 모델은 파라미터화된 신경망에서 구현되는, 방법.
  15. 제1항에 있어서,
    상기 차원 축소 모델은 선형 함수를 포함하는, 방법.
  16. 제1항에 있어서,
    상기 차원 축소 모델은 비선형 함수를 포함하는, 방법.
  17. 제1항에 있어서,
    상기 차원 축소 모델은 인수분해된 선형 함수를 포함하는, 방법.
  18. 제1항에 있어서,
    상기 차원 축소 모델은 선형 및 비선형 함수들을 포함하는, 방법.
  19. 제1항에 있어서,
    상기 차원 축소 모델은 파라미터화된 신경망에서 구현되고,
    상기 차원 축소 모델은 은닉 유닛들 및 선형 투영 유닛을 갖는 다층 퍼셉트론(multilayer perceptron)을 포함하는, 방법.
  20. 제19항에 있어서,
    상기 파라미터화된 신경망은 배치 정규화를 더 포함하는, 방법.
  21. 제1항에 있어서,
    상기 투영하는 단계는, 다층 퍼셉트론, 선형 투영기, 또는 비선형 투영기 중 하나 이상을 사용하는, 방법.
  22. 제1항에 있어서,
    상기 파라미터들을 최적화하는 단계는, 확률적 경사 하강법을 사용하는, 방법.
  23. 제1항에 있어서,
    상기 방법은 비지도 방식인, 방법.
  24. 제1항에 있어서,
    상기 방법은 자기 지도 방식인, 방법.
  25. 제1항에 있어서,
    상기 훈련 벡터들의 세트의 각각의 훈련 벡터는 토큰, 문서, 문장, 단락, 문서, 이미지, 이미지의 패치 또는 임의의 영역, 비디오, 파형, 3D 모델, 3D 포인트 클라우드 또는 테이블 형식 데이터의 임베딩들 중 하나 이상을 나타내는, 방법.
  26. 1항에 있어서,
    상기
    Figure pat00305
    -차원 공간의 상기 훈련 벡터들의 세트의 각각의 훈련 벡터는 특징 세트의 핵심 표현을 포함하는, 방법.
  27. 제26항에 있어서,
    상기 핵심 표현은 오프라인으로 생성되는, 방법.
  28. 제1항에 있어서,
    상기 방법은 상기 최적화된 파라미터들을 저장하는 단계를 더 포함하는, 방법.
  29. 프로세서 및 메모리를 사용하여 입력 벡터를 인코딩하기 위한 방법으로서,
    Figure pat00306
    -차원 표현 공간에서 상기 입력 벡터를 수신하고
    Figure pat00307
    -차원 표현 공간에서 출력 벡터를 생성하도록 훈련된 차원 축소 모델에 상기 입력 벡터를 입력하는 단계 -
    Figure pat00308
    Figure pat00309
    보다 더 크고, 상기 차원 축소 모델은 하나 이상의 훈련 가능한 파라미터들에 의해 정의됨 -;
    상기
    Figure pat00310
    -차원 공간에서 인코딩된 출력 벡터를 생성하기 위해 상기 훈련된 차원 축소 모델을 사용하여 상기 입력 벡터를 인코딩하는 단계; 및
    상기 인코딩된 출력 벡터를 출력하는 단계를 포함하며,
    상기 차원 축소 모델은,
    상기
    Figure pat00311
    -차원 공간에서
    Figure pat00312
    포지티브 쌍들의 훈련 벡터들의 배치를 생성하는 단계 - 각각의 포지티브 쌍은 제1 훈련 벡터 및 제2 훈련 벡터를 포함하고, 상기 생성하는 단계는 각각의 포지티브 쌍에 대해,
    상기
    Figure pat00313
    -차원 표현 공간에서 훈련 벡터들의 세트로부터 상기 제1 훈련 벡터를 선택하는 단계; 및
    상기 제1 훈련 벡터에 근접한 상기
    Figure pat00314
    -차원 공간에서 제2 훈련 벡터를 식별하는 단계를 포함함 -;
    각각 제1 및 제2 저차원 벡터들을 제공하기 위해 상기 차원 축소 모델을 사용하여 상기
    Figure pat00315
    포지티브 쌍들의 배치의 각각의 상기 제1 및 제2 훈련 벡터들을 상기
    Figure pat00316
    -차원 표현 공간으로 인코딩함으로써
    Figure pat00317
    저차원 벡터 쌍들의 배치를 생성하는 단계;
    각각 제1 및 제2 증강 차원 벡터들을 제공하기 위해 차원(
    Figure pat00318
    )을 갖는 증강 차원 표현 공간에 상기
    Figure pat00319
    저차원 벡터 쌍들의 배치의 각각의 상기 제1 및 제2 저차원 벡터들을 투영함으로써
    Figure pat00320
    증강 차원 벡터 쌍들의 배치를 생성하는 단계 -
    Figure pat00321
    Figure pat00322
    보다 더 큼 -;
    상기
    Figure pat00323
    증강 차원 벡터 쌍들의 배치에 대해 상기 제1 및 제2 증강 차원 벡터들 사이의 유사성 보존 손실 및 중복 감소 손실을 계산하는 단계; 및
    상기 계산된 유사성 보존 손실 및 상기 계산된 중복 감소 손실에 기초하여 총 손실을 최소화하도록 상기 차원 축소 모델의 상기 파라미터들을 최적화하는 단계를 포함하는 방법에 의해 훈련되는, 방법.
  30. 제29항에 있어서,
    상기 차원 축소 모델은 파라미터화된 신경망을 포함하는, 방법.
  31. 제29항에 있어서,
    상기 방법은,
    상기
    Figure pat00324
    -차원 공간에서 입력의 핵심 표현을 생성하는 단계; 및
    상기 입력의 상기 핵심 표현을 정규화하는 단계를 더 포함하는, 방법.
  32. 제29항에 있어서,
    상기 입력은 토큰, 문서, 문장, 단락, 이미지, 비디오, 파형, 3D 모델, 3D 포인트 클라우드, 또는 테이블 형식 데이터의 임베딩들 중 하나 이상을 나타내는, 방법.
  33. 제29항에 있어서,
    상기 방법은,
    작업을 수행하기 위해 상기 차원 축소 모델의 다운스트림의 상기 인코딩된 출력 벡터를 처리하는 단계를 더 포함하는, 방법.
  34. 제33항에 있어서,
    상기 작업은 데이터 검색 작업을 포함하고, 상기 데이터 검색 작업은 고차원 벡터 공간에 대한 것이고,
    상기 데이터 검색 작업은 유클리드 메트릭들 및/또는 비-유클리드 메트릭들을 사용하는, 방법.
  35. 제29항에 있어서,
    상기
    Figure pat00325
    증강 차원 벡터 쌍들의 배치를 생성하는 단계는 투영기를 사용하고,
    훈련된 이후의 상기 훈련된 차원 축소 모델은 상기 투영기를 포함하지 않는, 방법.
  36. 제29항에 있어서,
    훈련 중인 상기 차원 축소 모델은 선형 인코더 및 비선형 인코더를 사용하고,
    훈련된 이후의 상기 훈련된 차원 축소 모델은 비선형 인코더를 사용하지 않는, 방법.
  37. 신경망 모델을 훈련시키기 위해 프로세서 및 메모리에 의해 수행되는 방법으로서, 상기 신경망 모델은 인코더 및 상기 인코더의 다운스트림의 작업 수행 모델을 포함하며, 상기 방법은,
    입력 벡터들 및 연관된 레이블들의 훈련 세트를 제공하는 단계;
    상기 입력 벡터들을 상기 인코더에 입력하는 단계 - 상기 인코더는
    Figure pat00326
    -차원 표현 공간에서 입력 벡터를 수신하고,
    Figure pat00327
    -차원 표현 공간에서 출력 벡터를 생성하는 차원 축소 모델을 포함하고,
    Figure pat00328
    Figure pat00329
    보다 더 크고, 상기 차원 축소 모델은 하나 이상의 훈련 가능한 파라미터들에 의해 정의되고, 상기 차원 축소 모델은,
    상기
    Figure pat00330
    -차원 공간에서
    Figure pat00331
    포지티브 쌍들의 훈련 벡터들의 배치를 생성하는 단계 - 각각의 포지티브 쌍은 제1 훈련 벡터 및 제2 훈련 벡터를 포함하고, 상기 생성하는 단계는 각각의 포지티브 쌍에 대해,
    상기
    Figure pat00332
    -차원 표현 공간에서 훈련 벡터들의 세트로부터 상기 제1 훈련 벡터를 선택하는 단계, 및
    상기 제1 훈련 벡터에 근접하고 상기 제1 훈련 벡터와 레이블을 공유하는 제2 훈련 벡터를
    Figure pat00333
    -차원 공간에서 식별하는 단계를 포함함 -;
    각각 제1 및 제2 저차원 벡터들을 제공하기 위해 상기 차원 축소 모델을 사용하여 상기
    Figure pat00334
    포지티브 쌍들의 배치의 각각의 상기 제1 및 제2 훈련 벡터들을 상기
    Figure pat00335
    -차원 표현 공간으로 인코딩함으로써
    Figure pat00336
    저차원 벡터 쌍들의 배치를 생성하는 단계;
    각각 제1 및 제2 증강 차원 벡터들을 제공하기 위해 차원(
    Figure pat00337
    )을 갖는 증강 차원 표현 공간에 상기
    Figure pat00338
    저차원 벡터 쌍들의 배치의 각각의 상기 제1 및 제2 저차원 벡터들을 투영함으로써
    Figure pat00339
    증강 차원 벡터 쌍들의 배치를 생성하는 단계 -
    Figure pat00340
    Figure pat00341
    보다 더 큼 -;
    상기
    Figure pat00342
    증강 차원 벡터 쌍들의 배치에 대해 상기 제1 및 제2 증강 차원 벡터들 사이의 유사성 보존 손실 및 중복 감소 손실을 계산하는 단계; 및
    상기 계산된 유사성 보존 손실 및 상기 계산된 중복 감소 손실에 기초하여 총 손실을 최소화하도록 상기 차원 축소 모델의 상기 파라미터들을 최적화하는 단계를 포함하는 방법에 의해 훈련됨 -;
    인코딩된 출력 벡터들을 생성하기 위해 상기 훈련된 차원 축소 모델을 사용하여 상기 입력 벡터들을 인코딩하는 단계; 및
    상기 인코딩된 출력 벡터들과 상기 레이블들을 사용하여 상기 작업 수행 모델을 훈련시키는 단계를 포함하는, 방법.
  38. 제37항에 있어서,
    상기 방법은,
    상기
    Figure pat00343
    -차원 공간에서 상기 입력 벡터들의 훈련 세트의 각각에 대한 입력의 핵심 표현을 생성하는 단계를 더 포함하는, 방법.
  39. 제38항에 있어서,
    상기 방법은,
    상기 입력의 상기 핵심 표현을 정규화하는 단계를 더 포함하는, 방법.
  40. 제37항에 있어서,
    상기 훈련 세트의 상기 훈련 벡터들은 토큰, 문서, 이미지, 이미지의 일부, 비디오, 파형, 3D 모델, 3D 포인트 클라우드, 또는 테이블 형식 데이터의 임베딩들 중 하나 이상을 나타내는, 방법.
KR1020220121824A 2021-10-05 2022-09-26 차원 축소 모델 및 그 훈련 방법 KR20230049025A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202163252380P 2021-10-05 2021-10-05
US63/252,380 2021-10-05
US17/929,502 US20230106141A1 (en) 2021-10-05 2022-09-02 Dimensionality reduction model and method for training same
US17/929,502 2022-09-02

Publications (1)

Publication Number Publication Date
KR20230049025A true KR20230049025A (ko) 2023-04-12

Family

ID=85774639

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220121824A KR20230049025A (ko) 2021-10-05 2022-09-26 차원 축소 모델 및 그 훈련 방법

Country Status (2)

Country Link
US (1) US20230106141A1 (ko)
KR (1) KR20230049025A (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230252769A1 (en) * 2022-02-07 2023-08-10 NavInfo Europe B.V. Self-supervised mutual learning for boosting generalization in compact neural networks
CN117312325B (zh) * 2023-11-28 2024-03-29 中国科学技术大学 基于知识蒸馏的量化索引构建方法、装置及设备

Also Published As

Publication number Publication date
US20230106141A1 (en) 2023-04-06

Similar Documents

Publication Publication Date Title
US11132512B2 (en) Multi-perspective, multi-task neural network model for matching text to program code
Satorras et al. Few-shot learning with graph neural networks
Garcia et al. Few-shot learning with graph neural networks
Song et al. Machine learning models that remember too much
KR20230049025A (ko) 차원 축소 모델 및 그 훈련 방법
CN112368697A (zh) 经由对偶分解评估损失函数或损失函数的梯度的系统和方法
US11288567B2 (en) Method for training deep neural network (DNN) using auxiliary regression targets
CN109299479A (zh) 通过门控机制将翻译记忆融入神经机器翻译的方法
JP2024521118A (ja) 画像認識システムにおける転移学習
WO2019045802A1 (en) LEARNING DISTANCE MEASUREMENT USING PROXY MEMBERS
JP2022161564A (ja) テキスト画像の文字を認識する機械学習モデルを訓練するシステム
Timofte et al. Iterative nearest neighbors
CN115017911A (zh) 针对视觉和语言的跨模态处理
da Silva et al. Fast deep stacked networks based on extreme learning machine applied to regression problems
CN117648950A (zh) 神经网络模型的训练方法、装置、电子设备及存储介质
Belharbi et al. Deep neural networks regularization for structured output prediction
Conte et al. Interactive online learning for graph matching using active strategies
Shen et al. StructBoost: Boosting methods for predicting structured output variables
Burkhardt et al. Rule extraction from binary neural networks with convolutional rules for model validation
US20210365719A1 (en) System and method for few-shot learning
Yang et al. ResMem: Learn what you can and memorize the rest
Sharma et al. Transfer learning and its application in computer vision: A review
Kryzhanovsky et al. Vector neural net identifying many strongly distorted and correlated patterns
US12013884B2 (en) Knowledge graph question answering with neural machine translation
Jeon et al. Pet: Parameter-efficient knowledge distillation on transformer