728x90
반응형

RNNLM

  • RNN을 사용한 언어 모델 RNN Language Model

 

RNNLM의 신경망(왼쪽이 펼치기 전, 오른쪽은 펼친 후)

[그림1] RNNLM의 신경망

  • 첫 번째(가장 아래)층은 Embedding 계층이다. 
    • 단어 ID를 단어의 분산 표현(단어 벡터)으로 변환한다.
    • 분산 표현이 RNN 계층으로 입력된다.
  • RNN 계층은 은닉 상태를 다음 층으로(위쪽으로) 출력함과 동시에, 다음 시각의 RNN 계층으로(오른쪽으로) 출력한다.
  •  RNN 계층이 위로 출력한 은닉 상태는 Affine 계층을 거쳐 Softmax 계층으로 전해진다.

 

Time 계층 구현

  • 시계열 데이터를 한꺼번에 처리하는 계층을 Time RNN이라는 이름의 계층으로 구현
  • 시계열 데이터를 한꺼번에 처리하는 Time Embedding, Time Affine 형태의 이름으로 구현

 

시계열 데이터를 한꺼번에 처리하는 Time XX 계층으로 구현

[그림2] 시계열 데이터를 한꺼번에 처리하는 Time XX 계층으로 구현

  • Time Affine 계층은 Affine 계층을 T개 준비해서, 각 시각의 데이터를 개별적으로 처리하면 된다.

 

Time Affine 계층은 T개의 Affine 계층의 집합으로 구현

[그림3] Time Affine 계층은 T개의 Affine 계층의 집합으로 구현

 

Time Softmax with Loss 계층의 전체 그림

[그림4] Time Softmax with Loss 계층의 전체 그림

  • x0이나 x1 등의 데이터는 아래층에서부터 전해지는 '점수'를 나타낸다.(확률로 정규화되기 전의 값)
  • t0나 t1등의 데이터는 정답 레이블을 나타낸다.
  • T개의 Softmax with Loss 계층 각각의 손실을 합산해 평균한 것이 최종 손실

 

최종 손실 수식

[그림5] 최종 손실 수식

 

 

 

출처 : 밑바닥부터 시작하는 딥러닝2

https://www.hanbit.co.kr/store/books/look.php?p_code=B8950212853

 

밑바닥부터 시작하는 딥러닝 2

이 책은 『밑바닥부터 시작하는 딥러닝』에서 다루지 못했던 순환 신경망(RNN)을 자연어 처리와 시계열 데이터 처리에 사용하는 딥러닝 기술에 초점을 맞춰 살펴본다. 8장 구성으로 전체를 하나

www.hanbit.co.kr

 

728x90
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기