Do it! 정직하게 코딩하며 배우는 딥러닝 입문 책 내용을 정리한 글입니다. 수정해야 할 내용이 있거나 잘못된 내용이 있다면 알려주세요. 감사합니다.


01-1 인공지능을 소개합니다.


인공지능의 종류

  • 인공지능은 강 인공지능(Strong AI)약 인공지능(Weak AI)으로 나뉨
  • 사람과 같은 인공지능을 강 인공지능이라 함(영화 아이언맨)
  • 특정 영역에서 작업을 수행하는 인공지능을 약 인공지능이라 함(자율주행 자동차, 음성인식, 영상인식 등)
  • 현재 연구되고 있는 인공지능은 대부분 약 인공지능

머신러닝과 딥러닝 그리고 인공지능과의 관계

  • 머신러닝은 약 인공지능에 포함
  • 딥러닝은 머신러닝에 포함


01-2 머신러닝을 소개합니다.


머신러닝은 스스로 규칙을 수정

  • 컴퓨터가 데이터들로부터 규칙을 스스로 찾아내는 것을 머신러닝/딥러닝에서 ‘학습’이라 함
  • 전통적인 프로그램은 사람이 정한 규칙에 의해 동작
  • 머신러닝은 규칙을 스스로 찾아 수정
  • 규칙을 찾아 수정하는 과정을 훈련 또는 학습이라고 부름

머신러닝의 학습 방식

  • 지도 학습(Supervised Learning)
  • 비지도 학습(Unsupervised Learning)
  • 강화 학습(Reinforcement Learning)

지도 학습은 입력과 타깃(라벨 or 레이블)으로 모델 학습

  • 훈련 데이터(Training Data): 모델 학습에 사용된 데이터(입력데이터, 타깃데이터)
  • 훈련 데이터를 통해 모델 생성
  • 모델은 새로운 입력 데이터에 대한 예측
  • 지도 학습에서 가장 어려운 것은 훈련 데이터를 수집(생성)하는 것

비지도 학습은 타깃이 없는 데이터를 사용

  • 입력 데이터만 있고 타깃 데이터로 학습하는 방법
  • 군집화(Clustering)가 대표적인 비지도 학습
  • 예: 기업이 소비 성향에 따라 그룹을 지정하는 경우

강화 학습은 주어진 환경으로부터 피드백을 받아 훈련

  • 머신러닝 알고리즘으로 에이전트(Agent)를 학습
  • 학습된 에이전트는 환경에 최적화된 행동을 수행하고, 수행에 대한 ‘보상’과 ‘현재 상태’를 받음
  • 에이전트는 최대한 보상을 많이 받는 것이 목표
  • 강화학습의 대표적인 알고리즘: Q-learning, DQN(Deep Q Network), SARSA

규칙 = 가중치(Weight)와 바이어스(Bias)를 의미

  • 대부분의 머신러닝 알고리즘은 훈련 데이터와의 규칙을 관계식으로 표현
  • 예: y = w * x + b
  • y: 타깃, x: 입력 데이터, w: 가중치, b: 절편

모델은 머신러닝의 수학적 표현

  • 모델이란 학습 데이터로 학습된 머신러닝 알고리즘
  • 가중치와 바이어스를 모델 파라미터(Model Parameter)라 부름

손실 함수로 모델의 규칙을 수정

  • 손실 함수(Loss Function) 모델의 규칙을 수정하는 기준이 되는 함수
  • 비용 함수(Cost Function)라고도 함
  • 모델이 예측한 값과 타깃 값의 차이를 계산하여 규칙 수정

최적화 알고리즘으로 손실 함수의 최소값을 찾음

  • 손실 함수는 단순히 예측 값과 타깃 값의 차이를 계산
  • 손실 함수의 최소값을 효율적으로 찾는 방법을 최적화 알고리즘이라 함


01-3 딥러닝을 소개합니다.


  • 딥러닝(Deep Learning)은 머신러닝 알고리즘 중 하나인 인공신경망(Neural Network)으로 만든 것
  • 인공신경망을 여러 겹 쌓아놓은 것을 딥러닝이라 함
  • 인공신경망은 뉴런에서 영감을 받아 만든 것이지만 딥러닝이 동작하는 방식은 실제 뇌와 다름

딥러닝은 머신러닝이 처리하기 어려운 데이터를 더 잘 처리

  • 딥러닝이 잘 처리하는 데이터: 이미지/영상, 음성/소리, 텍스트/번역(비정형 데이터)
  • 머신러닝에 잘 맞는 데이터: 데이터베이스, CSV/엑셀 등에 저장된 데이터(정형 데이터)



[Reference]

[1] Do it! 딥러닝 입문(박해선), p.15~26