.
1월

밑바닥부터 시작하는 딥러닝 - seq2seq(3)

엿보기(Peeky) seq2seq의 두 번째 개선은 엿보기(Peeky)이다. Encoder 동작은 입력 문장(문제 문장)을 고정 길이 벡터 h로 변환한다. 이때 h 안에는 Decoder에게 필요한 정보가 모두 담겨 있다. 그러나 현재의 seq2seq는 아래 그림과 같이...

.
1월

밑바닥부터 시작하는 딥러닝 - seq2seq(2)

seq2seq 클래스 이어서 seq2seq 클래스를 구현할 것이다. 이 클래스가 하는 일은 Encoder 클래스와 Decoder 클래스를 연결하고, Time Softmax with Loss 계층을 이용해 손실을 계산하는 것이다. class seq2seq(BaseMode...

.
1월

밑바닥부터 시작하는 딥러닝 - seq2seq(1)

이번 글에서는 시계열 데이터를 다른 시계열 데이터로 변환하는 모델을 생각해볼 것이다. 이를 위한 기법으로, 2개의 RNN을 이용하는 seq2seq라는 기법을 살펴볼 것이다. seq2seq의 원리 seq2seq를 Encoder-Decoder 모델이라고도 한다. Encod...

.
1월

밑바닥부터 시작하는 딥러닝 - RNN을 사용한 문장 생성

지금까지 RNN과 LSTM의 구조와 구현을 살펴봤다. 이번 글에서는 언어 모델을 사용해 '문장 생성'을 수행해볼 것이다. 말뭉치를 사용해 학습한 언어 모델을 이용하여 새로운 문장을 만드는 것이다. 그런 다음 개선된 언어 모델을 이용하여 더 자연스러운 문장을 생성하는 것...

.
1월

밑바닥부터 시작하는 딥러닝 - 게이트가 추가된 RNN(3)

Time LSTM 구현 다음으로 Time LSTM 구현을 해볼 것이다. Time LSTM은 T개분의 시계열 데이터를 한꺼번에 처리하는 계층이다. 전체 그림은 아래 그림과 같다. RNN에서는 학습할 때 Truncated BPTT를 수행했다. Truncated BPTT는 ...

.
1월

밑바닥부터 시작하는 딥러닝 - 게이트가 추가된 RNN(2)

기울기 소실과 LSTM LSTM의 인터페이스 위의 그림은 계산 그래프를 단순화하는 도법이다. 행렬 계산 등을 하나의 직사각형 노드로 정리해 그리는 방식이다. tanh 계산으로 직사각형 노드를 하나 그린다. 이 직사각형 노드 안에 행렬 곱과 편향의 합, 그리고 tanh ...

.
1월

밑바닥부터 시작하는 딥러닝 - 게이트가 추가된 RNN(1)

RNN은 순환 경로를 포함하며 과거의 정보를 기억할 수 있었다. 구조가 단순하여 구현도 쉽게 가능했다. 요즘에는 RNN 대신 LSTM이나 GRU라는 계층이 주로 쓰인다. LSTM이나 GRU에는 '게이트'라는 구조가 더해져 있는데, 이 게이트 덕분에 시계열 데이터의 장기...

.
1월

밑바닥부터 시작하는 딥러닝 - 순환 신경망(RNN)(2)

Time RNN 계층 구현 Time RNN 계층은 T개의 RNN 계층으로 구성된다. Time RNN 계층은 아래 그림처럼 표현된다. 위에 그림에서 보면, Time RNN 계층은 RNN 계층 T개를 연결한 신경망이다. 이 신경망으로 Time RNN 클래스로 구현할 것이다...