대규모 언어 모델, 핵심만 빠르게! 챌린지 3/5

1장. 머신러닝과 기초

2장. 언어 모델링 기초

RNN은 복잡하고 발전 과정상 다양한 형태가 있다보니 이해가 어려웠던 경험이 있어 이번 장은 부담이 됐는데 다행히(?) 짧게 끝났다.

 

3장. 순환 신경망

  • 트랜스포머가 대세지만 RNN은 순차 처리 개념, 트랜스포머 근간의 수학을 쉽게 이해할 수 있게 해줌.

엘만(Elman) RNN

  • RNN의 특징(FF와 다른 점) : 유닛 사이의 루프, 다음 단계로 정보를 전달할 수 있음, 시계열, NLP 등에 적합
  • elman rnn은 임베딩 벡터의 시퀀스를 한 번에 하나씩 처리
  • 여러 층(cell, layer, unit …)으로 구성

미니 배치 경사 하강법

  • 데이터의 작은 부분집합에서 도함수를 계산하여 학습 속도를 높이고 메모리 사용량을 줄이는 방법
  • 경사 하강법
    1. 훈련 세트에서 미니 배치를 추출
    2. 이를 신경망에 통과
    3. 손실을 계산
    4. 그레이디언트를 계산
    5. 모델 파라미터를 업데이트
    6. 1로 돌아가세요

Elman RNN 구현

  • pass

임베딩 층

  • 패딩 토큰

RNN 모델 훈련

  • rnn의 훈련 데이터 : 타겟 = 샘플 시퀀스를 한 토큰씩 밀어서 구성
  • context window : 학습에도 영향, window 크기의 청크로 분할
  • 훈련 과정에서 perplexity 낮아짐.
  • LSTM 도 개선은 했지만 긴 시퀀스를 다루는데 제한

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다