728x90
반응형

rnn 3

[pytorch] LSTM(Long Short-Term Memory)이란? / LSTM을 Pytorch로 구현 실습 코드

RNN(순환신경망)의 한계점1. 장기 의존성 문제 (Long-term Dependency Problem)   - RNN은 이전 시점의 정보를 현재 시점에 반영하는 구조이기 때문에, 과거의 중요한 정보를 오랫동안 기억하는 데 어려움이 있습니다.   - 시간이 길어질수록 (시퀀스가 길어질수록), RNN은 초기 시점의 정보를 잊어버리기 쉬워집니다.   - 예를 들어, \( h_{100} \)는 \( h_1 \)부터 \( h_{99} \)까지의 은닉 상태에 의존하고 있지만, 시간이 길어질수록 \( h_1 \)의 정보는 거의 전달되지 않게 됩니다.2. 기울기 소실 문제 (Vanishing Gradient Problem)RNN에서 은닉 상태의 가중치 \( W_{hh} \)는 매 타임스텝의 은닉 상태를 업데이트하는 ..

pytorch 2024.09.26

[pytorch] 순환 신경망(Recurrent neural network, RNN) 이란? / RNN을 Pytorch로 구현 실습 코드

DNN과 RNN 비교딥러닝에서 데이터의 시간적 연속성을 처리하는 방법은 모델 선택에 중요한 영향을 미치는데요. 우선 DNN과 RNN을 비교하여 시간적 연속성의 중요성을 살펴보시죠.시간적 연속성을 고려하지 않은 경우- 왼쪽의 수식에서는 입력 데이터 \( x_t \)가 주어졌을 때, 은닉층 \( h_t \)가 가중치 \( W_{xh} \)와 활성화 함수 \( f(\cdot) \)을 통해 계산됩니다. 이 은닉층의 출력 \( h_t \)는 다시 가중치 \( W_{hx} \)와 활성화 함수 \( g(\cdot) \)를 거쳐 최종 출력값 \( y_t \)를 생성합니다.- 이 경우, 각 시점 \( t \)의 데이터는 독립적으로 처리됩니다. 이전 시점의 정보는 고려되지 않으므로, 모델은 시간적 연속성이나 데이터 간의 ..

pytorch 2024.09.24

[pytorch] RNN 계층 구현하기

RNN(Recurrent Neural Network, 순환 신경망)은 딥러닝 모델 중 하나로, 주로 시계열 데이터와 같이 순서가 있는 데이터를 처리하는 데 사용됩니다. RNN의 핵심 구조는 간단한 개념으로 시작합니다. 기본적인 신경망, 즉 인공 신경망(Artificial Neural Network, ANN)은 데이터를 입력받아 가중치를 조정하고, 활성화 함수와 같은 방법으로 출력 값을 생성하는데 사용됩니다. 그러나 ANN은 각 입력 간의 연관성이 없다고 가정하며, 이로 인해 순서가 있는 데이터 처리에 어려움이 있습니다. 이 문제를 해결하기 위해 RNN이 등장했습니다. RNN은 인공 신경망 구조를 사용하지만, 순환적으로 연결되어 있어 이전 입력의 정보를 저장하고 처리할 수 있습니다. 이를 통해 연속된 데이..

pytorch 2023.07.11
728x90
반응형