지난 두 포스팅 신경망의 기본원리 와 신경망의 동작원리 를 보고오면 이해가 더 빠릅니다.
우리는 신경망에대해 어느정도 이해도가 생겼다고 생각한다.
퍼셉트론이 어떤 한계점을 갖고있었으며 이를 해결하기위해 다층 퍼셉트론(MLP)이 탄생했고 이것이
딥러닝 시대의 시작 을 열었다.
우리가 기본으로 배운 신경망 (Neural Network)은 인간의 사고를 흉내내기 위함이라 뉴런을 퍼셉트론으로 모델링하면서
생물학적 신경망을 모방한것이라 인공 신경망(Artificial Neural Network, ANN) 이라 부르며 거의 같다고 보면된다.
ANN (Artificial Neural Network) -> 인공 신경망
- 입력층(Input Layer)
- 은닉층(Hidden Layer)
- 출력층(Output Layer)
으로 구성 되었으며
순전파 - 손실계산 - 역전파 방식으로 동작한다.

출력 레이어는 신경망의 최종 예측 값을 출력하는 층으로, 문제의 유형에 따라 다양한 형태로 구성될 수 있다.
- 회귀 문제 (Regression):
- 출력 레이어의 뉴런 수는 예측하려는 연속적인 값의 차원과 동일
- 활성화 함수로는 주로 선형 함수(linear function)를 사용
- 이진 분류 문제 (Binary Classification):
- 출력 레이어의 뉴런 수는 1
- 활성화 함수로는 시그모이드 함수(Sigmoid Function)를 사용하여 출력 값을 0과 1 사이의 확률로 변환
- 다중 클래스 분류 문제 (Multi-Class Classification):
- 출력 레이어의 뉴런 수는 예측하려는 클래스 수와 동일
- 활성화 함수로는 소프트맥스 함수(Softmax Function)를 사용하여 각 클래스에 대한 확률을 출력
DNN (Deep Neural Network, 심층 신경망)
- ANN 을 깊게 쌓아 은닉층이 여러 개 존재하는 모델
- DNN 이 나오며 학습능력과 문제 해결력이 폭발적으로 향상
특징
- DNN은 ANN의 하위 개념, 즉 깊은 ANN을 의미함.
- 일반적으로 3개 이상의 은닉층(Hidden Layer)이 있는 모델을 DNN이라고 함.
- MLP(다층 퍼셉트론)도 은닉층이 많아지면 DNN이라고 볼 수 있음.
활용 분야
- 고차원의 복잡한 데이터 분석.
- 이미지 분류, 자연어 처리 등 다양한 분야에서 활용되지만, 기본적으로 CNN, RNN보다 단순한 구조.
정리: ANN과 DNN은 구조적으로 동일하지만, DNN은 ANN보다 더 깊은 신경망을 의미

은닉층이 많은 ANN -> DNN
CNN (Convolutional Neural Network, 합성곱 신경망)
- 이미지, 영상, 공간적 데이터를 처리하는 데 특화된 신경망
특징
- 합성곱 연산(Convolution)과 풀링(Pooling) 기법을 사용하여 특징을 추출
- 이미지의 공간적(위치적) 정보 유지 가능
- Fully Connected Layer 대신 Conv Layer(합성곱층) + Pooling Layer(풀링층) + FC Layer(완전연결층) 구조
활용 분야
- 이미지 인식 (Image Classification) → 예: ResNet, VGG, EfficientNet
- 객체 탐지 (Object Detection) → 예: YOLO, Faster R-CNN
- 자율주행, 의료 영상 분석, 얼굴 인식 등
정리: CNN은 ANN/DNN과 달리, 이미지 데이터를 처리하는 데 최적화된 신경망
RNN (Recurrent Neural Network, 순환 신경망)
- 연속적인(시계열) 데이터를 처리하는 데 특화된 신경망
특징
- 이전 시점의 정보를 기억하고, 다음 단계 계산에 활용할 수 있음.
- 시퀀스 데이터를 다룰 때, 기존 신경망(ANN, DNN)은 독립적인 입력을 처리하지만, RNN은 연속적인 입력을 고려함.
- 단점: 장기 의존성 문제(Long-Term Dependency) → LSTM, GRU 같은 변형 RNN으로 해결.
활용 분야:
- 자연어 처리 (NLP, Natural Language Processing) → 번역, 챗봇 (예: Transformer 이전 모델들)
- 음성 인식 → Siri, Google Assistant 등
- 주식 가격 예측, 시계열 데이터 분석
정리: RNN은 CNN처럼 공간적 정보를 보는 게 아니라, 시간 순서(시퀀스) 데이터를 다룸
RNN 은 DNN 의 한계점 -> 순서데이터, 시퀀스형 데이터 를 처리하는데(예측) 한계를 느낌
을 해결하기위해 등장했고
내가 공부할 LLM 의 할아버지 격이다.
그래서 조금더 다뤄보고자 한다.
RNN의 기본 구조
- 순환 신경망(Recurrent Neural Network, RNN)은 시계열 데이터나 순차적인 데이터를 처리하기 위해 설계된 신경망
- RNN은 이전 시간 단계의 정보를 현재 시간 단계로 전달해, 시퀀스 데이터의 패턴을 학습할 수 있다.

RNN 의 동작 원리
- 순환 구조
- RNN은 입력 데이터와 이전 시간 단계의 은닉 상태(hidden state)를 입력으로 받아, 현재 시간 단계의 은닉 상태를 출력
- 은닉 상태는 시퀀스의 정보를 저장하고, 다음 시간 단계로 전달
- 동작 원리
- RNN은 시퀀스의 각 시간 단계에서 동일한 가중치를 공유하여, 시퀀스의 패턴을 학습
- 순전파(Forward Propagation)와 역전파(Backpropagation Through Time, BPTT)를 통해 가중치를 학습

LSTM 과 GRU
- RNN은 장기 의존성 문제(long-term dependency problem)를 겪을 수 있습니다. 이를 해결하기 위해 LSTM과 GRU가 개발되었습니다.
LSTM(Long Short-Term Memory)
- LSTM은 셀 상태(cell state)와 게이트(gate) 구조를 도입, 장기 의존성을 효과적으로 학습가능 합니다.
- LSTM은 입력 게이트(input gate), 출력 게이트(output gate), 망각 게이트(forget gate)를 사용하여 정보를 조절합니다.
GRU (Gated Recurrent Unit)
- GRU는 LSTM의 변형으로, 셀 상태 대신 은닉 상태(hidden state)만을 사용하여 구조를 단순화합니다.
- GRU는 업데이트 게이트(update gate)와 리셋 게이트(reset gate)를 사용하여 정보를 조절합니다.
차이점
- LSTM은 셀 상태와 은닉 상태를 모두 사용하며, 더 복잡한 게이트 구조를 가집니다.
- GRU는 은닉 상태만을 사용하며, 더 간단한 게이트 구조를 가집니다. 따라서 계산 비용이 적고, 학습이 빠를 수 있습니다.

RNN을 이용한 시계열 데이터 처리 방법
RNN은 시계열 데이터나 순차적인 데이터를 처리하는 데 적합합니다. 예를 들어, 주식 가격 예측, 날씨 예측, 텍스트 생성 등이 있습니다.
- 데이터 전처리:
- 시계열 데이터를 적절한 형태로 변환하고, 정규화(normalization)합니다.
- 입력 시퀀스와 출력 시퀀스를 정의합니다.
- 모델 구축:
- RNN, LSTM, GRU 등의 모델을 정의합니다.
- 입력 크기, 은닉 상태 크기, 출력 크기 등을 설정합니다.
- 모델 학습:
- 손실 함수와 최적화 알고리즘을 정의합니다.
- 순전파와 역전파를 통해 모델을 학습시킵니다.
- 모델 평가:
- 테스트 데이터를 사용하여 모델의 성능을 평가합니다.
'AI > DL' 카테고리의 다른 글
[DL] 어텐션 (Attention) (0) | 2025.02.16 |
---|---|
[DL] 신경망의 동작원리 (0) | 2025.02.06 |
[DL] 신경망의 기본원리 (0) | 2025.01.24 |
[DL] 딥러닝이란? (0) | 2025.01.09 |