Stanford CS229 Machine Learning Spring 2026 Lecture 13: LLMs 및 다음 단어 예측 손실

표현 학습과 임베딩

표현 학습은 원시 입력 $x$—이미지, 텍스트, 오디오, 또는 비디오와 같은—를 $m$차원 유클리드 공간 내의 벡터 $v_{ heta}(x)$로 변환하는 매핑(매개변수 $ heta$로 parameterized)을 생성하는 것을 목표로 합니다. 이러한 벡터는 일반적으로 임베딩이라고 불리며, 유사한 입력이 유사한 임베딩(공간에서 서로 가까운 점)으로 매핑되고, dissimilar한 입력이 먼 임베딩으로 매핑되도록 설계됩니다.

임베딩은 유사도 검색을 가능하게 하며, 여기서 시스템은 벡터 공간 내의 쿼리 임베딩의 최근접 이웃을 찾아 유사한 항목을 식별할 수 있습니다. 임베딩은 이전에 선형 분류(선형 탐사)의 입력으로 사용되었지만, 현대 애플리케이션은 엔드-투-엔드 모델이나 직접적인 유사도 검색을 선호합니다.

임베딩 튜닝: 지도 학습 vs. 비지도 학습

지도 사전 학습

지도 사전 학습에서, 신경망은 1,000개의 라벨을 가진 ImageNet과 같은 대규모 데이터셋에서 이산 클래스를 예측하도록 훈련됩니다. 표현은 마지막 이전 레이어(최종 분류 헤드 바로 앞의 레이어)에서 추출되며, 다운스트림 유사도 작업을 위해 분류 헤드가 버려집니다.

  • 제한: 이 접근법은 비용이 많이 들고 대규모 라벨 데이터셋이 필요합니다. 라벨 세트가 충분히 다양하지 않은 경우(예: 오직 바이너리 라벨만 있는 경우), 학습된 표현은 다른 작업에 유용하기에 충분한 복잡한 패턴을 포착하지 못할 수 있습니다.

대비 학습 (비지도)

대비 학습은 라벨 없이 모델이 동일한 입력의 다른 버전을 유사하게 인식하고 다른 입력을 dissimilar하게 인식하도록 유도하여 표현을 학습합니다.

  1. 증강: 단일 이미지 $x$는 랜덤 크롭(가장 중요한 기법), 플립, 블러링, 또는 가우시안 노이즈 추가와 같은 기법을 사용하여 두 가지 다른 버전 $\hat{x}$와 $\tilde{x}$로 변환됩니다.
  2. 목표: 모델은 동일한 이미지의 증강에 대한 임베딩 간 거리($f_{\theta}(\hat{x})$와 $f_{\theta}(\tilde{x})$)를 최소화하고, 다른 이미지의 증간 간 거리($x$와 $z$)를 최대화하도록 훈련됩니다.

거짓 음성 문제 해결:

두 개의 서로 다른 이미지(예: 두 마리의 다른 고양이)가 음성 쌍으로 취급되어 서로 멀어질 때 잠재적인 문제가 발생할 수 있습니다. 그러나 대규모 데이터셋에서는 무작위 쌍의 대부분이 실제로 dissimilar합니다(예: 고양이와 의자). 따라서 무작위 이미지를 서로 멀어뜨리는 이점이 유사하지만 동일한 것이 아닌 이미지를 서로 멀어뜨리는 '부수적 손해'보다 더 큽니다.

SimCLR 목적 함수

대비 학습을 효율적으로 구현하기 위해 SimCLR과 같은 배치 기반 접근 방식이 사용됩니다. 이 과정은 $B$개의 이미지로 구성된 배치를 샘플링하고, 각 이미지에 대해 두 가지 증강을 만든 후, 정규화된 임베딩의 내적(또는 코사인 유사도)을 기반으로 유사도 행렬을 구성하는 것을 포함합니다.

수학적 공식화

주어진 증강 $\hat{x}_i$에 대해, 손실 함수는 배 내의 다른 $2B-1$개의 임베딩 중 해당 쌍 $\tilde{x}_i$를 식별하는 다중 클래스 분류 문제로 취급합니다.

$$\mathcal{L}_i = -\log \frac{\exp(\text{sim}(\hat{x}_i, \tilde{x}i) / \tau)}{\sum{j=1}^{2B} \exp(\text{sim}(\hat{x}_i, x_j) / \tau)}$$

  • 분자: 양성 쌍(같은 이미지의 증강)의 유사도가 크게 되도록 장려합니다.
  • 분모: 다른 모든 쌍(음성 쌍)의 유사도가 작게 되도록 장려합니다.

실제 최적화

  • 어려운 음성 채굴: 랜덤하게 샘플링된 음성 쌍은 종종 구별하기 너무 쉽습니다. "어려운 음성"—외관은 유사하지만 동일한 것이 아닌 예시(예: 축구를 하는 아이의 사진 vs. FIFA 월드컵에 관한 텍스트)—는 손실 함수를 더 요구하게 만들고 결과 표현을 더 robust하게 만드는 데 사용됩니다.
  • 데이터 소스 샘플링: 동일한 데이터 소스(예: 동일한 코드베이스 또는 프로그래밍 언어)에서 배치 $B$를 샘플링하면 자연스럽게 더 어려운 음성이 생성되어 손실이 너무 빨리 너무 작아지는 것을 방지합니다.

의미적 검색과 RAG

의미적 검색 구현

의미적 검색은 사전 계산된 임베딩을 활용하여 쿼리 $q$에 가장 관련된 객체를 찾습니다:

  1. 인덱싱: 모든 문서 $D_1, \dots, D_n$의 임베딩이 계산되어 벡터 데이터베이스에 저장됩니다.
  2. 쿼리: 쿼리 $q$는 동일한 모델 $f_{\theta}$를 사용하여 임베딩됩니다.
  3. 검색: 시스템은 $f_{\theta}(q)$와 $f_{\theta}(D_i)$ 사이의 내적을 최대화하는 문서 $D_i$를 찾습니다.

검색 증강 생성(RAG)

RAG는 비용이 많이 드는 파인튜닝 없이 대형 언어 모델(LLMs)에 proprietary 또는 최신 정보를 제공하는 데 사용됩니다.

  • 프로세스: 쿼리가 수신되면, 시스템은 의미적 검색을 사용하여 개인 코퍼스에서 관련된 문서의 작은 하위 집합을 검색합니다.これらの文書はその後、프롬프트(컨텍스트)의 일부로 LLM에 제공되어, 쿼리와 검색된 텍스트를 모두 기반으로 답변을 생성합니다.
  • 파인튜닝 대비 장점:
    • 모듈성: 검색 시스템은 LLM과 분리되어 있습니다.
    • 데이터 거버넌스: 검색 단계에서 접근 제어를 적용할 수 있습니다(예: 특정 사용자가 민감한 메모를 검색하지 못하도록 방지).
    • 업데이트 용이성: 코퍼스에서 문서를 삭제하면 즉시 모델의 잠재적 답변에서 제거되며, 파인튜닝된 모델에서 정보를 "언러닝"하는 것은 미해결 연구 문제입니다.

대체 검색 방법

의미적 검색이 널리 사용되지만, 일부 최첨단 모델(예: Anthropic의 모델)은 키워드 검색을 위해 복잡한 정규 표현식을 생성하기 위해 LLMs를 활용합니다. 이는 함수 이름과 파일 트리가 일치를 위한 엄격한 패턴을 제공하는 코드와 같은 구조화된 데이터에서 특히 효과적입니다.

Sources