수학과의 좌충우돌 프로그래밍

딥러닝이란 무엇인가? 본문

인공지능/케라스창시자에게 배우는 딥러닝

딥러닝이란 무엇인가?

ssung.k 2019. 3. 13. 03:32


인공지능과 머신러닝, 딥러닝


인공지능과 머신러닝, 딥러닝은 다음과 같은 포함관계를 가진다.

이에 대해서 알아보자.


인공지능

  • 정의 : 보통의 사람이 수행하는 지능적인 작업을 자동화하기 위한 연구활동

  • 이미지 처럼 머신러닝과 딥러닝을 포괄하는 종합적인 분야

  • 심볼릭 AI(symbolic AI)

    • 1950년대부터 1980년 AI의 지배적인 패러다임
    • 명시적인 규칙을 충분하게 많이 만들면 인간 수준의 인공지능을 만들 수 있다.

 

머신러닝

  • 배경 : 심볼릭 AI 는 체스게임 처럼 잘 정의된 문제에 대해서는 적합하지만, 이미지, 음성과 같은 불분명한 문제에 대해서는 부적합
  • 기존의 방식은 규칙과 데이터를 입력하여 해답을 찾는 방식이라면, 머신러닝은 데이터와 해답을 입력하여 규칙을 찾는 방식
  • 프로그래밍이 되는 것이 아닌 훈련 이 되는 것
  • 입력데이터를 의미있는 데이터로 변환
  • 가능성 있는 공간을 사전에 정의하고 피드백을 받아 더 정확한 데이터로 변환해가는 과정

 

머신러닝의 역사

  • 확률적 모델링

    • 통계학 이론을 데이터 분석에 응용

    • 나이브 베이즈 알고리즘

      • 입력 데이터의 특성이 모두 독립적이라고 가정하고 베이즈 정리를 적용하는 알고리즘
      • 컴퓨터가 나오기 전 부터 수작업으로 진행
    • 로지스틱 회귀

      • 이름 때문에 헷갈릴수도 있지만 회귀 알고리즘이 아닌 분류 알고리즘
  • 초창기 신경망

    • LeNet
    • 합성곱 신경망과 역전파를 사용해 손글씨 숫자 이미지 분류
  • 커널 방법

    • 분류 알고리즘의 한 종류

    • SVM(Support Vector Machine)

      • 커널 방법 중 가장 유명한 알고리즘

      • 2개의 다른 범주를 구분할 결정 경계를 찾음

      • 결정 경계를 찾는 과정

        1. 결정 경계가 하나의 초평면으로 표현될 수 있는 새로운 고차원 표현으로 데이터를 매핑
        2. 초평면과 각 클래스의 가장 가까운 데이터 포인트 사이의 거리가 최대가 되는 최선의 결정 경계를 찾음(마진 최대화)
  • etc

    • 결정트리

      • 트리와 같은 형태로 입력 데이터를 분류
    • 랜덤 포레스트

      • 결정 트리 학습에 기초
      • 서로 다른 결정 트리를 많이 만들고 그 출력을 앙상블하는 방법
      • 결정트리를 앙상블 함으로서 다른 결과가 출력 될 것이고 그 결과를 평균, 곱, 과반수 등의 방식으로 최종 결과를 도출한다.
    • 그레이언트 부스팅 머신

      • 랜덤 포레스트와 전반적인 과정은 동일
      • 이전 모델에서 놓친 데이터 포인트를 보완하는 새로운 모델을 반복적으로 훈련하여 성능 향상

       

딥러닝

  • 머신러닝의 특정한 한 분야로서 연속된 층을 사용하는 것이 특징

  • 딥러닝에서의 이란?

    • 위에서 말한 층이 연속적으로 여러 개, 깊게 사용되었다는 것을 의미
  • 데이터가 연속된 필터를 통과하면서 정제되어 원하는 데이터를 얻게 되는 과정

    • 연속된 층을 거치면서 점진적으로 더 복잡한 표현이 만들어짐
    • 이런 점진적인 중간 표현이 공동으로 학습됨

 

딥러닝의 작동 원리

  • 가중치 : 각 층에는 입력데이터를 어떻게 처리할지에 대해서 가중치 로 저장

  • 손실함수 : 예측과 기대값의 차이를 점수로 계산

  • 딥러닝은 손실함수 값을 최소화하기 위해(예측과 기대값을 같게 만들어주기 위해) 가중치를 조절해나가는 과정

    • 이 과정은 역전파 알고리즘을 구현한 옵티마이저가 담당

 

 

Comments