Bigdata•ML(이동)/딥러닝

Deep Learning(ANN, DNN, CNN, RNN, SLP, MLP) 비교

디비랑 2020. 11. 14. 18:20
반응형

/*
-- Title : Deep Learning(ANN, DNN, CNN, RNN, SLP, MLP) 비교
-- Reference : 구글링, www.analyticsvidhya.com  bbnflow.tistory.com
*/


■ Machine Learning vs. Deep Learning

www.analyticsvidhya.com

 

■ ANN(Artificial Neural Network) - 인공신경망

  • 모든 비선형 함수를 학습
  • 모든 입력을 출력에 매핑하는 가중치를 학습할 수 있는 능력
  • 활성화 함수는 네트워크에 비선형 속성 도입으로 입력과 출력 사이 복잡한 학습을 하는데 도움
  • 학습과정에서 파라미터 최적값 찾기 어려움
  • Overfitting에 따른 문제


■ SLP(Single Layer Perceptron) - 단층 퍼셉트론

  • 퍼셉트론 : 학습 능력을 갖는 패턴분류장치
  • 단일 퍼셉트론으로 구성

■ MLP(Multi Layer Perceptron) - 다층 퍼셉트론

  • 여러층의 퍼셉트론으로 적어도 1개 이상의 은닉층(hidden layer) 보유
  • 일반적으로 지도학습
  • 역전파 알고리즘(Backpropagation)으로 학습 - 다층 퍼셉트론 문제 해결위한 알고리즘
  • 경사하강법으로 에러를 최소화
  • Overfitting : 트레이닝셋에 너무 과최적화되어 실제 데이터에서 정확도 하락
  • Vanishing Gradient : 역전파로 에러를 뒤로 전파하면서 w를 업데이트하는데 여러 레이어를 거치면서 경사하강법으로 미분이 계속되어 에러값이 현저히 작아서 학습 안되는 현상


■ DNN (Deep Neural Network) - 심층신경망

  • ANN 문제 해결위해 은닉층 확대
  • 2개 이상의 은닉층으로 학습(보통 Deep Learning은 3개 이상)
  • DNN을 응용하여 CNN, RNN, LSTM, GRU 발전

NN vs. DNN


■ RNN (Recurrent Neual Network) - 순환신경망

ㅁ RNN vs. ANN 차이

ㅁ RNN(Recurrent Neual Network)

  • RNN은 입력 데이터에 있는 순차 정보 캡처
  • O1, O2, O3, O4는 현재 단어만 아니라 이전 단어에도 의존(과거학습을 Weight를 통해 현재학습에 반영)
  • 여러 단계에서 매개 변수 공유 → 훈련 매개 변수 감소 및 계산 비용 감소
  • 반복적이고 순차적인 데이터에 효과

Many2Many aeq2Seq 모델


■CNN(Convolution Neural Network) - 콘볼루션신경망, 합성곱신경망

  • 정보추출, 문장분류, 얼굴인식 등 널리 사용, 특히 이미지 및 비디오 처리에 활용
  • 핵심 요소는 커널(콘볼루션 연산을 사용하여 입력에서 관련 기능 추출)이라는 필터
  • 암시적으로 필터를 자동으로 학습(입력데이터에서 올바른 관련 기능 추출에 도움)
  • 입력 데이터의 특징을 추출하여 특징들의 패턴 파악하는 구조
  • Convolution과정과 Pooling 과정으로 진행

Convolution + Pooling

다양한 신경망 비교

 

 

반응형