마트료시카 표현 학습(MRL)이 어떻게 다중 세분화 임베딩을 가능하게 하는지 알아보세요. Ultralytics 검색 및 엣지 배포를 최적화하는 방법을 확인해 보세요.
마트료시카 표현 학습(MRL)은 인공지능(AI) 및 기계 학습(ML) 분야의 훈련 기법으로, 신경 망이 단일 출력 벡터 내에서 다중 세분화 임베딩을 학습하도록 유도합니다. 러시아의 마트료시카 인형에서 영감을 받은 MRL은 중요한 의미론적 정보가 앞부분에 집중되도록 임베딩을 구성합니다. 이는 고차원 벡터(예: 1024차원)를 기본적인 표현을 잃지 않으면서도 더 작은 중첩된 부분 집합(예: 512, 256 또는 64차원)으로 축소할 수 있음을 의미합니다. 이러한 유연성 덕분에 정보 검색 작업에 일반적으로 수반되는 계산 오버헤드를 획기적으로 줄일 수 있습니다.
전통적으로 임베딩 모델은 고정된 출력 크기에 대해 특정 손실 함수를 최적화하도록 훈련됩니다. 시스템에서 메모리 절약을 위해 더 작은 벡터가 필요한 경우, 완전히 새로운 모델을 훈련해야 합니다. MRL은 훈련 단계에서 중첩된 손실 함수를 적용함으로써 이 문제를 해결합니다. 이는 전체 표현과 그 중첩된 부분 집합을 함께 최적화합니다. OpenAI와 같은 기업들은 최신 임베딩 API에 MRL을 도입하여, 개발자가 정확한 코사인 유사도 점수를 유지하면서 벡터의 끝부분에서 차원을 동적으로 제거할 수 있도록 지원하고 있습니다.
MRL은 정확도와 저장 비용, 메모리 대역폭 간의 균형을 맞출 때 뚜렷한 이점을 제공합니다.
MRL을 제대로 활용하려면, 이를 기존의 데이터 압축 기술과 구분하는 것이 도움이 됩니다.
MRL 임베딩을 잘라내는 작업은 매우 간단하며 복잡한 의미론적 인덱싱 로직이 필요하지 않습니다. 가장 중요한 특징들은 초기 차원에 높은 가중치가 부여되어 있으므로, 배열을 단순히 잘라내기만 하면 됩니다. 다음 예제는 기본적인 PyTorch tensor 사용하여 시뮬레이션된 YOLO26 멀티모달 출력을 잘라내는 방법을 보여줍니다.
import torch
# Simulate a full 1024-dimensional MRL embedding returned by a model
full_embedding = torch.rand(1, 1024)
# To deploy on memory-constrained hardware, simply slice the first 256 dimensions
# Because the model was trained with MRL, this subset remains highly accurate
truncated_embedding = full_embedding[:, :256]
print(f"Original size: {full_embedding.shape[1]}, Compressed size: {truncated_embedding.shape[1]}")
미래의 머신러닝 여정을 시작하세요