logo

LLM의 작동 원리

뉴런 neuron

  • 동물의 신경계를 구성하는 신경 세포
  • 흥분하면 전기 신호가 발생
  • 신경 전달 물질을 사용하여 세포 간 통신

인공신경망 artificial neural network

  • 생물학적 신경망에서 영감을 받은 머신러닝 모델
  • 인공 뉴런은 입력값을 가중합하고, 그 결과에 활성화 함수를 적용하여 출력
  • 인공 뉴런은 로지스틱 회귀분석과 (거의) 같음
  • 다층 신경망: 뉴런들로 이뤄진 층(layer)을 만들고, 이것을 여러 층으로 쌓은 것
  • → 딥러닝으로 발전
  • 보편 근사 정리: 어떤 함수든지 인공 신경망으로 근사(approximation)할 수 있음

근사

  • 구체적인 수식은 달라도 서로 다른 함수를 비슷하게 만들 수 있음(아래 가운데)
  • 함수가 너무 단순하면 데이터에 잘 맞지 않음(과소적합, 왼쪽)
  • 함수가 너무 복잡하면 기존 데이터는 잘 맞지만, 새로운 데이터는 잘 맞지 않음(과대적합, 오른쪽)

모형과 파라미터

  • 모형(model): 데이터의 패턴을 나타내는 수식이나 프로그램
  • 예시: 2차 함수
  • 파라미터(parameter): 모형의 구체적 형태를 결정하는 수치
  • 파라미터가 많을 수록 더 복잡한 패턴을 나타낼 수 있음

인공신경망의 학습: 경사하강법

  • 동일한 구조의 모형이라도 파라미터에 따라 다양한 예측을 하게 됨
  • 인공신경망은 매우 복잡한 함수이므로, 최적 파라미터를 한 번에 찾는 공식은 없음
  • 모형의 예측과 실제값을 비교하여 두 가지의 차이(손실)를 계산
  • 손실이 줄어드는 방향(경사)으로 파라미터를 점진적으로 조정하여 줄여 나감(하강)

토큰화 Tokenization

  • 토큰(Token): 언어 모형이 입력/출력을 처리하는 단위
  • GPT는 단어보다 작은 단위의 준단어(subword)를 토큰으로 사용
  • GPT가 글자 수 세기를 잘 못하는 이유

임베딩 Embedding

  • 토큰을 벡터로 표현한 것
  • 벡터 = 공간 상의 좌표
  • 의미가 비슷한 토큰은 공간에서 가까운 벡터로 배치되는 경향
  • 언어 모형이 "학습"한다는 것은 특정한 문장을 그대로 외우는 것이 아님(흔한 오해)
  • 문장을 토큰화하고, 토큰들로 이뤄진 임베딩들이 이루는 수학적 패턴을 매우 복잡한 함수로 근사하는 것

LLM vs. 검색

  • 검색이 하는 일: 특정 자료를 찾아낸다
  • LLM이 하는 일: 언어 자료에서 패턴을 학습
  • LLM으로 패턴을 이용해서 새로운 자료를 생성할 수 있음
  • 실제와 LLM이 학습한 패턴에 따라 생성한 결과가 일치하지 않을 수도 있음("환각")

언어 모형이 환각을 겪는 이유: 평가

  • 환각: 언어 모델에 의해 생성되는 그럴듯하지만 거짓인 진술
  • 환각이 지속되는 부분적인 이유는 현재 평가 방법이 잘못된 인센티브를 설정하기 때문
  • 대부분의 평가는 불확실성에 대한 정직성보다는 추측을 부추기는 방식으로 모델 성능을 측정
  • 객관식 시험에서 찍으면 운이 좋아 맞을 수도 있지만, 답을 하지 않으면 확실히 0점인 것과 비슷

언어 모형이 환각을 겪는 이유: 사전 학습

  • 언어 모형의 사전 학습에서는 각 문장에 "긍정/부정" 라벨이 없음 → 긍정적 예시만 존재
  • 부정적 예시(틀린 문장)을 피하기 어려움
  • 어떤 종류의 문제는 매우 임의적이어서 학습이 어려움
  • 예) 어떤 인물과 그 인물의 생일은 패턴으로부터 도출하기 힘듦

언어 모형이 환각을 겪는 이유: 확률

  • 언어 모형의 특성상 문장이 길어질 수록 사실이 아닌 문장이 만들어질 가능성이 기하급수적으로 증가
  • 매 단계마다 의 확률로 올바른 단어를 추가
  • 문장의 길이가 일 때, 전체 문장이 올바른 단어들로 구성될 확률은
  • 으로 수렴
  • 질문에 잘못된 전제가 포함되어 있을 경우 잘못된 답변이 생성될 가능성은 더 커짐