LSTM 코드 분석 [2-2편]
·
딥러닝 (Deep Learning)/[05] - 논문 리뷰
이전 글에서 LSTM 이론적인 부분을 설명했습니다.  LSTM 이란? [2-1편]기본적인 순환신경망인 Vanilla RNN에 대해서 1편에서 설명 했습니다.하지만 현재는 Vanilla RNN 이 사용되고 있지 않습니다.어떠한 이유때문에 사용되고 있지 않는지, 그리고 더 발전된 RNN에 대해서ai-bt.tistory.com 이번에는 코드를 분석해서 간단한 학습까지 진행하겠습니다. 1. LSTM 셀 코드# 1. LSTM 셀 직접 구현class LSTMCell(nn.Module): def __init__(self, input_size, hidden_size): super(LSTMCell, self).__init__() self.input_size = input_size ..
LSTM 이란? [2-1편]
·
딥러닝 (Deep Learning)/[05] - 논문 리뷰
기본적인 순환신경망인 Vanilla RNN에 대해서 1편에서 설명 했습니다.하지만 현재는 Vanilla RNN 이 사용되고 있지 않습니다.어떠한 이유때문에 사용되고 있지 않는지, 그리고 더 발전된 RNN에 대해서 설명하도록 하겠습니다. 1. Vanilla RNN 문제점 잘 쓰이지 않는 가장 큰 이유는 기울기 손실 문제가 있습니다. 위의 그림에서 x0 가 입력이고 출력이 ht+1 이라고 할때, ht+1 에서 출발해서 쭉 x0 에 있는 정보를 가지고 와야 합니다.그렇게 하기 위해서 사이사이의 Gradient(기울기)가 다 만들어져야 하며, 역전파가 이루어질때 점점 기울기가 손실이 되는 문제가 있습니다.따라서, 시점차이가 많이 날 경우 학습능력이 굉장히 저하가 됩니다.그래서 현재는 RNN 기반의 변형 알고리즘..
순환 신경망 (RNN) 이란? [1편]
·
딥러닝 (Deep Learning)/[05] - 논문 리뷰
1. 순차데이터 종류순환신경망(RNN)을 이해하기 앞서,순차 데이터가 무엇인지 알아볼 필요가 있습니다.순서가 의미가 있는 데이터를 말하며,순서가 달라질 경우 의미가 손상되는 데이터를 순차데이터라고 합니다.위의 사진에 예시를 보면, 3가지로 나뉘어 질 수 있습니다. 연속적 데이터(Sequential Data)순서가 의미가 있지만, 시간의 이미가 없는 것 시간적 의미(Temporal Sequence)시간적 의미가 있고, x축 시간에 따른 y축 변화가 있을때를 말합니다. 일정한 시간차(Time Series)x축을 시간으로 보지 않고, 1 step 으로 표현으로하면 step 마다 변화를 나타날때를 말합니다.2. 심층 신경망과 순차 데이터 입력이 만약 음파로 들어온다면?? Input Layer보통 음파가 초당 4..