#16-1. 딥러닝과 OpenCV DNN 모듈

신경망과 딥러닝

  • 딥러닝 : 신경망을 여러 계층(layer)으로 쌓아서 만든 머신 러닝 알고리즘의 일종
  • 객체 인식, 얼굴 인식, 객체 검출 등 다양한 영역 → 딥러닝이 적용된 기술이 월등한 성능을 보여줌
  • perceptron 구조 : 신경망의 가장 기초적인 형태

  • 다수의 입력 (input layer)

  • 가중합(Weight) 계산 → 하나의 출력 (output layer)

    • b = 편향(bias), y값 결정하는 파라미터
    • w1x1 + w2x2 = 0 → 원점을 지나는 직선만 만들어짐 → bias로 y절편 추가 (자유도 증가, 공간 분할 굳)
  • 각각의 edge는 별도의 weight

머신 러닝 vs 딥러닝

  • 머신 러닝 > 딥러닝
  • 기존의 머신 러닝
    • 인식에 적합한 특징을 사람이 추출
    • 특징벡터 공간에서 여러 클래스 간 상호 구분하기에 적합한 규칙 찾아냄
    • 단점 : 추출한 특징이 영상 인식에 적합 X → 인식 성능 bad
  • 딥러닝
    • 특징 추출, 학습 모두 알아서 수행

퍼셉트론에 의한 점들의 분류

  • 빨간색 삼각형, 파란색 사각형 분류

    • w1 = w2 = 1, b = -0.5

  • 퍼셉트론의 한계

    • XOR 문제도 해결 못 하는 선형 분류기에 불과 → 인공지능 겨울에 일조
    • 다층 퍼셉트론 제안 → 신경망 부활
    • but, SVM에 밀리는 형국

다층 퍼셉트론

  • 퍼셉트론 : 선형 분류기

    • 현실에서는 대부분 비선형 데이터

    • 두 개의 클래스 → 선형 분류

  • 다층 퍼셉트론

    • 은닉층 (hidden layer) 추가
    • XOR : 선형 분리 불가능한 데이터 → 다층 퍼셉트론으로 해결
  • 은닉 공간(hidden space), 잠복 공간(latent space)

    • 특징 공간 (x1, x2) → 더 유리한 특징 공간 (z1, z2) 변환

다층 퍼셉트론의 구조

  • FC(fully connected) : 노드간 모두 연결
  • Uji : 은닉층 i번째 - 입력층 j번째 연결하는 에지 가중치
  • 은닉층 노드 개수 p = 하이퍼 파라미터 (사용자 지정)
  • 활성 함수
    • Sigmoid, Leaky ReLU, tanh, Maxout, ReLU, ELU
    • 비선형성 도입
  • 가중치, 편향값 자동 결정
    • 경사 하강법

    • 오류 역전파

      → 신경망 학습 : 훈련 데이터셋을 이용하여 적절한 에지 가중치와 편향 값을 구하는 과정

깊은 다층 퍼셉트론

  • 심층 신경망, 딥러닝
  • 신경망 출력 해석 : prediction, inference
  • 출력층 : softmax 활성 함수 사용
    • 전체 합 1 만족
  • 손실 함수 값 줄이는 방향으로 가중치 갱신 반복

신경망 학습

역전파 (backpropagation)

딥러닝

  • 크게 발전한 이유
    1. 딥러닝 알고리즘 개선되면서 은닉층이 많아져도 학습이 제대로 이루어지게 되었다
    2. 하드웨어 발전, 특히 GPU 성능 향상과 GPU를 활용한 학습 방법으로 인해 딥러닝 학습 시간이 크게 단축
    3. 인터넷의 발전에 따른 빅데이터 활용 용이

일반적인 CNN 네트워크 구조

  • 영상인식, 객체검출 분야 → CNN 구조 널리 사용
  • CNN 구조
    • Convolution layer : 2차원 영상에서 특징을 추출 → 영상의 지역적인 특징 추출
    • FC layer : 추출된 특징 분류 → 고전적 다층 퍼셉트론과 비슷한 구조
    • Pooling : 비선형 다운 샘플링 수행 → 데이터양 줄이고 일부 특징 감소

profile
숭실대학교 컴퓨터학부 21

0개의 댓글