[ML] 딥러닝의 깊이 있는 이해를 위한 머신러닝 13-1 (K-MOOC)

daeungdaeung·2021년 8월 24일
0

Machine-Learning

목록 보기
23/25

학습내용

  • Deep Neural Network (DNN) 란

  • DNN 의 구성요소

  • DNN 의 구조형성 방법

학습목표

  • DNN 이 무엇인지 이해할 수 있다.

  • DNN 의 구성요소를 이해할 수 있다.

  • DNN 을 위한 적절한 구조를 파악할 수 있다.

Deep Neural Network

  • DNN: 전통적인 머신러닝 기법들의 총집합체

  • DNN 사용이유

    • 비선형 문제 해결

    • Overfitting 문제 해결

      • convolution filter 등으로 feature 를 뽑았음에도 비선형성이 복잡하게 남아 있는 경우 Kernelization 을 활용합니다.

      • 비선형성 해결을 위해 모델을 키우고 복잡한 커널 적용 시 overfitting 문제는 점점 더 증가합니다.

  • 딥러닝에서는 복잡한 비선형성을 어떻게 풀 수 있을까?

    • 간단한 비선형성들을 융합합니다.
  • 과적합 문제는?

    • 데이터를 많이 사용함으로써 문제 해결

    • iid condition

      • 학습데이터와 테스트데이터가 어느 정도 동일한 샘플 분포, 데이터 분포를 가진다는 의미

      • 학습데이터가 충분히 크다면 테스트 데이터를 충분히 표현할 수 있습니다.

  • 기존 머신러닝 vs 딥러닝

    • 기존: 모든 데이터 중 일부를 선택하여 활용

    • 딥러닝: 모든 데이터를 고려

  • DNN 구성요소

    • Convolution Layer

      • Convolution Filter 종류

        • Gaussian: 평균을 내는 필터

        • Sharpen: 엣지 정보들을 중점적으로 찾아내는 필터

        • Laplacian of Gaussian filter

      Traditional FiltersConvolutional Layers
      필터의 개수10~3064~1024
      필터값사용자가 미리 결정학습을 통해 취득
      필터의 출력 목표값필요없음필요하나 모름 (hidden feature 혹은 latent feature)
      필터의 입력입력 이미지입력 이미지 혹은 앞선 Layer 의 결과
    • Fully-connected Layer

      • Linear Regression

        • 아웃풋 1개

        • 원하는 prediction 결과와 최대한 비슷하게 출력하는 것이 목표

      • Fully-connected layer

        • 아웃풋 여러개 (128개 ~ 2048개)

        • 목표 값이 없음 (제 생각에는 아마 backpropagation 과 연관이 있는 것 같습니다. 체인룰을 적용하면 목표값이 생긴다고 볼 수 있는게 아닐까 싶네요...)

      • 즉, linear regression 이 여러 개 있는 것과 똑같은 구조라 볼 수 있습니다.

    • Pooling Layer

      • 어떤 이미지 혹은 필터의 결과값의 해상도를 낮춰줍니다.
    • Activation Function

      • 간단한 비선형성을 구현하는 부분

      • 뉴런의 구조에서 착안

        • 사람의 뉴런: 0보다 작은 값은 무시
      • Kernel Trick 의 경우 feature dimension 이 커질수록 복잡도가 증가하지만 AF 의 경우 고정된 함수 형태를 사용하기 때문에 속도가 빠르고 구조가 단순합니다.

      • AF가 없다면 layer 를 쌓아도 결과적으로 한개의 layer 구성과 동일한 구조입니다.

profile
개발자가 되고싶읍니다...

0개의 댓글