LLM(Large Language Model)

  • 대규모 데이터에서 훈련된 많은 수의 파라미터를 가진 신경망
  • 신경망은 텍스트, 이미지 데이터 처리에 뛰어남
  • 파라미터가 많을수록 복잡한 패턴을 감지하는데 유리함
  • 트랜스포머라는 구조의 신경망을 사용한다.

트랜스포머 구조 소개

  • ‘Attention Is All You Need’ 논문에서 탄생
  • 기존 Attention + 순환신경망 모델에서 순환신경망을 걷어내고 Attention 에 집중함
  • 인코더와 디코더로 구성됨
  • 동작 플로우
    1. 번역할 텍스트를 인코더에 입력
    2. 입력 텍스트를 전처리
    3. 텍스트 임베딩(각 단어의 벡터 표현) 생성
    4. 디코더의 입력으로 사용되는 임베딩 반환
    5. 디코더는 이전 출력 데이터를 바탕으로 한단어씩 번역을 시도
    6. 디코더는 인코더에서 넘겨준 임베딩과 전처리된 입력텍스트를 합쳐 출력층을 완성

단어 벡터

  • Text 를 벡터로 변환
  • word2vec : 입력된 텍스트를 사용해서 주변에 있는 단어를 예측한다.

인코더 기반 모델

  • 예: BERT
  • 랜덤하게 단어를 마스킹한 입력을 받아서 원본 문장을 완성하게 함

디코더 기반 모델

  • 예: GPT
  • 인코더의 입력 없이, 불완전한 텍스트를 받아서 단어를 생성해 나가게끔 함
  • 이전 라운드의 출력이 다음 라운드의 입력으로 사용된다.
  • 텍스트 완성이 목적
  • 제로샷 : 어떤 지시를 통해 예시 없이 작업을 완료하는 것
  • 퓨 샷 : 작업에 대한 몇개의 예시가 주어졌을 때 해당 작업을 완료하는 것
  • 최신 모델도 결국은 이 형식과 동일하다.

학습과정

  • 1단계 LLM 만들기
    1. 데이터 준비 & 샘플링
    2. 어텐션 메커니즘
    3. LLM 구조
    4. 사전 훈련
  • 2단계 파운데이션 모델
    1. 훈련 반복
    2. 모델 평가
    3. 사전 훈련된 가중치 로드하기
  • 3단계 튜닝
    1. 분류 미세 튜닝
    2. 지시 미세튜닝