[유튜브 강의 정리] 안드레 카파시 - Deep Dive into LLMs like ChatGPT

Introduction

Pre-Training

Step 1: Download and preprocess the internet

Step 2: Tokenization

Step 3: Neural network training

Step 4: Inference

Base model

Post-Training: Supervised Finetuning

Conversations

Hallucinations

Knowledge of Self

Models need tokens to think

Things the model cannot do well

Post-Training: Reinforcement Learning

Reinforcement learning

DeepSeek-R1

AlphaGo

Reinforcement learning from human feedback (RLHF)

Preview of things to come

Keeping track of LLMs

Where to find LLMs

Hallucinations

1. 환각(Hallucination)이 발생하는 이유

  • LLM은 훈련 데이터의 스타일을 모방하는 방식으로 학습됨.

  • 예를 들어, "누가 ~~인가?"라는 질문에 대해 항상 정답을 포함한 답변이 제공됨.

  • 이 때문에 모델이 모르는 질문을 받았을 때도 "I don’t know"라고 답하지 않고,
    통계적으로 가장 그럴듯한 문장을 생성하려고 함.

  • 예시: "Orson Kovats는 누구야?" → "미국의 작가입니다" (사실이 아님. Orson Kovats는 가상의 이름임.)


2. 환각 해결법

(1) "모른다"는 답을 학습시키기 (Meta 논문 참고)

  1. 질문-답(QA) 데이터 생성

    • 훈련 데이터에서 특정 문서를 선택해 사실 기반 질문과 정답 세트 생성.

    • 예: "이 사람이 어느 팀에서 뛰었나?" → "Buffalo Sabres"

  2. 모델이 아는지 확인

    • 같은 질문을 3번 이상 물어보고, 모델이 일관되게 맞히는지 평가.

    • 일관되게 정답 → 모델이 알고 있음

    • 틀리거나 답변이 바뀜 → 모델이 모르는 것

  3. "모른다"는 답변 학습

    • 모델이 틀린 질문들을 모아서 "I don’t know"라고 답하도록 학습 데이터 추가.

    • 이 과정에서 특정 뉴런이 불확실성(uncertainty)을 담당하게 형성됨.

      → 이후 뉴런 값이 높으면, 모델이 "모른다"고 답하게 됨.


(2) 검색(Search) 기능 추가

  • 모델이 모르는 정보를 직접 검색할 수 있도록 웹 검색 기능을 활용.

  • 방법:

    1. 모델이 검색이 필요한 경우, 특정 토큰 [SEARCH_START]을 생성.

      • 예: [SEARCH_START] Orson Kovats 경력 [SEARCH_END]

    2. 검색 엔진(Bing, Google 등)이 검색을 수행 후 결과를 컨텍스트 창에 삽입.

    3. 모델이 검색 결과를 활용해 최종 답변 생성.

  • 학습 과정:

    • 모델이 "언제 검색해야 하는지" "어떻게 검색해야 하는지" 학습할 수 있도록 데이터 추가.

    • 몇 천 개(few thousand) 정도의 데이터만 있어도 모델이 잘 수행함.