1. MLP (Multi Layer Perceptron)
- 여러 층을 가진 퍼셉트론 구조로, 기본적인 인공신경망의 형태임. 분류와 회귀문제에 활용
- 입력층/은닉층/출력층으로 구성되며, 은닉층 다음에는 activation function을 통해 출력값을 계산하고 최종 출력층에서는 문제의 목적에 따라 설정하는 노드 수를 결정한다. (분류는 클래스 개수로 설정)
- 초기에는 무작위의 가중치로 시작해서 Network의 출력과 실제값의 차이인 Loss를 계산함. 이 오차를 최소화하는 것이 역전파임.
2. CNN (Convolutional Neural Network)
- CNN은 주로 이미지, 영상 등에 사용되는 구조로, 이미지의 지역적인 특성과 패턴을 파악하기 위해 합성곱 연산을 사용함.
- 합성곱층(Convolutional Layer)은 이미지의 지역적인 특징을 추출하며, ReLU와 같은 A.F을 통과시켜 비선형성을 추가함.
- Pooling : 이미지의 차원을 축소하고 주요 특성을 유지하여 연산 부하를 줄임.
- FC Layer : 신경망 마지막 부분에 위치해서 분류 작업 수행
3. CNN과 MLP 차이점
- Feature 추출 : CNN 은 합성곱 연산으로 지역적 특징을 학습하지만 MLP는 그렇지 않음
- 차원축소 : CNN 은 POOLING 층에서 [차원축소 + 중요특성유지] 하지만 MLP는 그렇지 않음
- 입력데이터 : CNN 은 고차원, MLP는 저차원
- 연산량 : CNN > MLP
4. RNN (Recurrent Neural Network)
- RNN은 시계열데이터나 자연어처리와 같이 순서가 있는 데이터를 처리함.
- 내부에 순환(loop) 구조가 있어서, 시점(time-step)에 따른 정보를 메모리 형태로 저장하여 활용
- 장점
- 순서가 있는 데이터의 문제 해결 가능
- 파라미터를 공유하여 효율적인 학습 가능 (시간 step마다 같은 가중치 사용)
- 단점
- 그라디언트 Vanishing/Exploding 발생 가능
- 긴 시퀀스에서는 장기적인 정보 유지가 어려움. (LSTM 생김)
5. LSTM 과 GRU
- LSTM
- Forget Gate : 이전 상태의 어떤 정보를 잊을지 결정
- Input Gate : 새로운 입력에서 어떤 정보를 저장할지 결정
- Output Gate : 새로운 상태와 입력을 기반으로 다음 은닉 상태를 어떻게 출력할지 결정
- GRU
- Reset Gate : 이전 상태의 어떤 정보를 잊을지 결정
- Update Gate : Reset Gate의 결과와 새로운 입력을 통합하여 다음 상태를 결정
- 차이점
- 복잡성 : LSTM > GRU
- 파라미터 수 : LSTM > GRU
- 계산 효율성 : LSTM < GRU
6. Auto Encoder (AE)
- 인코더(Encoder) : 입력 데이터를 저차원의 특징 공간(Latent Space)로 매핑
- 특징 공간(Latent Space) : 인코딩한 데이터의 저차원 표현
- 디코더(Decoder) : Latent space의 데이터를 다시 원래 차원으로 복원
- 사용
- 차원 축소
- 특징 추출
- 노이즈 제거
- 데이터 생성
- 이상치 탐지
'Deep Learning' 카테고리의 다른 글
seq-to-seq (0) | 2023.09.26 |
---|---|
Optimizer 종류 (0) | 2023.09.17 |
STEPWISE feature selection (0) | 2023.09.14 |
Learning Curve (Learning Rate 조정) (0) | 2023.08.25 |
Local Minimum (0) | 2023.08.25 |