AI VIDEO BRIEFING

대규모 언어 모델 기초 정리: 사전학습과 파운데이션 모델, 파인튜닝과 인코더·디코더의 관계

한국어 스터디 모임이 정리한 대규모 언어 모델 입문 내용을 담았다. 머신러닝과 딥러닝, LLM의 관계에서 시작해 사전학습과 파인튜닝의 분업, 인코더와 디코더의 역할 차이, 환각을 다루는 방법까지 차례로 짚는다.

밑바닥부터 보는 대규모 언어 모델 1장 — 사전학습과 파인튜닝의 구조 영상 대표 이미지

핵심 메시지

  • 머신러닝은 사람이 알고리즘을 직접 짜는 대신 데이터로 알고리즘을 찾게 하는 방식이고, 딥러닝은 그중 신경망을 쓰는 갈래이며 대규모 언어 모델은 다시 그 안에 놓인다.
  • 정답 표기가 없는 방대한 텍스트로 진행하는 사전학습의 결과물이 파운데이션 모델이고, 여기에 목적에 맞는 소량의 데이터로 파인튜닝을 얹어 쓴다.
  • 인코더는 앞뒤 문맥을 모두 보고 가려진 단어를 맞히며 토큰별 임베딩을 만들고, 디코더는 앞의 단어만 보고 바로 다음 단어를 예측한다.
  • 번역처럼 두 구조가 함께 필요한 경우에는 인코더의 임베딩을 디코더가 교차 어텐션으로 받아 쓰지만, 생성이 목적이면 디코더만 학습해도 된다.
  • 환각은 특정 영역의 학습이 충분치 않을 때 모델이 대충 메우면서 생기므로, 해당 분야 자료로 파인튜닝하거나 검색을 붙이는 방식으로 다룬다.

쉽게 이해하기

이 영상은 한국어 스터디 모임이 『Build a Large Language Model (From Scratch)』 1장을 함께 읽고 정리한 발표 녹화다. 발표자는 이 장에 수식이나 구현이 거의 없고 언어 모델 전반을 훑는 개괄에 가깝다고 미리 밝힌 뒤, 이미 아는 내용을 다시 정리하는 자리라고 설명하며 시작했다. 그래서 이 회차는 세부 기법보다 용어들이 서로 어떤 층위에 놓이는지를 정리하는 데 초점이 맞춰져 있다.

출발점은 개념의 포함 관계다. 머신러닝은 사람이 특정 알고리즘을 직접 구현하는 대신 데이터를 주고 규칙을 찾아내게 하는 방식이고, 딥러닝은 그중에서 입력층과 출력층 사이에 은닉층을 쌓은 신경망을 쓰는 방법이다. 대규모 언어 모델은 그 딥러닝 방식 위에 놓이며, 토큰 사이의 문맥을 이해해 표현으로 바꾸는 쪽과 새 텍스트를 만들어 내는 쪽이 함께 존재한다. 생성 모델은 언어에만 국한되지 않아 이미지 생성 같은 분야에도 같은 발상이 쓰인다.

다음 축은 학습 단계의 구분이다. 언어 모델은 목적이나 정답을 따로 표시하지 않은 방대한 텍스트를 그대로 긁어와 학습하기 때문에 비지도 방식의 사전학습이라 부르고, 그 결과물을 파운데이션 모델로 삼는다. 워낙 넓은 범위를 학습해 두었으므로 이후에는 목적에 맞는 데이터로 파인튜닝만 얹으면 된다. 발표자는 스팸 여부를 가리는 분류나 번역, 개인 비서 역할처럼 목적이 정해진 과제를 예로 들며, 이미 학습된 파라미터를 바탕으로 가볍게 조정하는 것이 파인튜닝이라고 정리했다.

구조 이야기는 인코더와 디코더의 역할 차이로 이어진다. 인코더는 문장 안 특정 단어를 기준으로 좌우 양쪽 관계를 모두 파악하며, 무작위로 가려진 단어를 가장 잘 맞히는 수준의 토큰별 임베딩을 만들어 내는 것이 목표다. 반면 디코더는 이미 결정된 앞부분만 보고 바로 다음 단어를 예측하는 한 방향 방식이라, 추론할 때는 단어를 하나씩 이어 붙이다가 종료 토큰이 나오면 멈춘다. 번역기처럼 두 구조를 함께 쓰는 경우에는 인코더가 만든 임베딩을 디코더가 교차 어텐션의 입력으로 받는다.

발표자는 트랜스포머를 곧 대규모 언어 모델이라고 오해하기 쉽지만 트랜스포머는 아키텍처일 뿐이고, 언어 모델이 그 구조를 쓰는 것이라고 선을 그었다. 어텐션이 바닥에 깔리고 그 위에 트랜스포머 층을 거듭 쌓아 올리면서 임베딩의 품질이 단계적으로 올라간다는 설명도 덧붙였다. 대화가 가능한 형태는 여기서 한 단계 더 나아간 결과로, 사전학습된 생성 모델에 답변이 적절한지에 대한 표기를 더해 대화에 맞게 다듬은 것이라고 정리했다.

질의응답에서는 실무에서 자주 부딪히는 두 가지가 다뤄졌다. 하나는 범용 모델을 직접 만들기 어려우니 특정 영역에 잘 동작하는 모델을 목표로 삼을 때 무엇이 필요한가였고, 답은 목적에 맞게 표기된 데이터셋이었다. 이미 사전학습이 되어 있어 데이터가 적어도 학습이 꽤 잘 된다는 점이 함께 언급됐다. 다른 하나는 환각 문제였는데, 발표자는 법률 질문처럼 특정 영역 학습이 부족한 경우 모델이 대충 메우며 사실이 아닌 답을 내놓는다고 설명하고 판례와 법조문을 학습시키거나 검색을 붙이는 방식을 대안으로 들었다.

주요 인사이트

  • 용어의 층위를 정리하는 것만으로도 혼란이 크게 줄어든다. 머신러닝 안에 딥러닝이 있고 그 안에 대규모 언어 모델이 있으며, 트랜스포머는 그 언어 모델이 채택한 아키텍처일 뿐이라는 구분이 그렇다.
  • 사전학습과 파인튜닝을 나누는 이유는 비용에 있다. 방대한 텍스트로 넓은 이해를 한 번 만들어 두면, 이후 목적별 작업에는 적은 데이터로도 쓸 만한 성능이 나온다는 것이 이 분업의 실질적인 이득이다.
  • 인코더와 디코더의 차이는 결국 무엇을 볼 수 있는가의 차이다. 양방향으로 문맥을 보는 쪽은 이해와 표현에, 앞만 보고 다음 토큰을 예측하는 쪽은 생성에 적합하다는 점이 용도를 가른다.
  • 환각을 모델의 결함이 아니라 학습 범위의 문제로 보는 관점은 실무적으로 유용하다. 부족한 영역의 자료를 채우거나 외부 검색을 붙이는 식으로 다룰 대상이 분명해지기 때문이다.
  • 스터디 참가자들은 이 책이 이론적 깊이보다 구현 쪽에 무게를 둔 것 같다고 평가했다. 어텐션을 수식으로 파고들려는 독자라면 이 책만으로는 부족할 수 있다는 실사용 후기에 가깝다.

자주 묻는 질문

사전학습과 파인튜닝은 어떻게 다른가?

사전학습은 정답 표기가 없는 방대한 텍스트를 그대로 학습해 넓은 이해를 갖춘 파운데이션 모델을 만드는 단계다. 파인튜닝은 그 결과를 바탕으로 분류나 번역처럼 목적이 정해진 데이터를 써서 가볍게 조정하는 단계다.

인코더와 디코더는 각각 무엇을 하나?

인코더는 문장 안 단어의 앞뒤 관계를 모두 보고 가려진 단어를 잘 맞히도록 학습해 토큰별 임베딩을 만든다. 디코더는 앞의 단어만 보고 바로 다음 단어를 예측하는 한 방향 방식으로, 텍스트 생성에 쓰인다.

언어 모델이 사실과 다른 답을 하는 이유는?

아무리 많은 데이터를 학습했어도 특정 영역까지 충분히 다루지는 못하기 때문이다. 그런 질문을 받으면 모델이 학습한 범위 안에서 대충 메워 답하게 되고, 해당 분야 자료로 파인튜닝하거나 검색을 붙여 보완한다.

트랜스포머와 대규모 언어 모델은 같은 말인가?

같지 않다. 트랜스포머는 어텐션을 쌓아 만든 아키텍처이고, 대규모 언어 모델은 그 아키텍처를 사용해 만든 모델이다. 최근 모델 대부분이 트랜스포머를 쓰다 보니 둘을 같은 말처럼 쓰기 쉽다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식