Skip to content

Latest commit

 

History

History
103 lines (68 loc) · 5.88 KB

CH1.md

File metadata and controls

103 lines (68 loc) · 5.88 KB

1강. 딥러닝을 소개합니다

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

: 인공지능(Artificial Intelligence)이란 사람의 지능을 만들기 위한 시스템이나 프로그램을 말합니다.

정말로 사람 같은 인공지능은 강 인공지능이라 부릅니다

  • 강 인공지능(Strong AI) : 사람과 구분이 안 될 정도로 강한 성능을 가진 인공지능
    ex:) '아이언맨'의 자비스

특정 영역에서 작업을 수행하는 인공지능을 약 인공지능이라고 부릅니다

  • 약 인공지능(Weak AI) : 특정 영역에서 작업을 수행하는 인공지능 -> 머신러닝&딥러닝이 포함
    ex:) '애플'의 시리, '테슬라'의 자율 주행 자동차, '구글'의 인공지능 스피커 구글 홈

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

: 딥러닝 ⊂ 머신러닝 ⊂ 인공지능

  • 딥러닝이란? 인공신경망 알고리즘을 사용한 머신러닝
  • 강 인공지능은 실제로 만들기 어려운 기술이므로 약 인공지능을 인공지능이라 부릅니다

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

: Machine Learni ng(기계 학습)

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

  • 머신러닝과 딥러닝에서 말하는 학습(또는 훈련)은 데이터의 규칙을 컴퓨터 스스로 찾아 수정하는 과정

  • 전통적인 프로그램과의 차이점

    • 사람이 규칙을 정하여 프로그래밍하고, 실행 결과를 보며 규칙을 수정해나감
    • 반면, 머신러닝은 사람이 만든 프로그램이기는 하나 규칙을 스스로 찾아 수정해나감

머신러닝의 학습 방식을 이해합니다

: 학습방식에 따른 분류

  1. 지도 학습(Supervised learning)

: 입력과 타깃으로 모델을 훈련시켜 새로운 입력에 대한 예측을 할 수 있음
ex:) 내일의 날씨 예측, 스팸 이메일 분류

  • 머신러닝으로 다루는 많은 작업들이 지도학습에 속함

    • 지도학습이 비지도 학습보다 성능이 좋음
    • 단 학습 데이터 구축에 드는 시간, 비용적 문제가 큼
  • 모델을 훈련시키기 위해 사용하는 데이터를 통틀어 훈련 데이터라고 함

    • 훈련 데이터는 입력과 타깃으로 구성되어 있음
    • 입력은 모델이 풀어야 할 일종의 문제, 타깃은 모델이 맞춰야 할 정답
  • 힉습을 통해 만들어진 프로그램은 모델이라고 함

    • 모델은 새로운 입력에 대한 예측을 만듦(학습을 통해 예측하는 프로그램)
  • 지도학습에서 가장 어려운 일은 모델을 훈련시키는 것이 아니라 훈련 데이터를 만드는 일

  • 적절한 데이터와, 충분한 양의 데이터를 훈련 데이터에 포함시켜야 함

  1. 비지도 학습(Unsupervised learning)

: 타깃이 없는 훈련 데이터를 사용
ex:) 군집(Clustering)

  • 훈련 데이터에 타깃이 없으므로 모델의 훈련 결과를 평가하기 어려움
  1. 강화 학습(Reinforcement learning)

: 주어진 환경으로부터 피드백을 받아 훈련
ex:) '딥마인드' 알파고

  • 머신러닝 알고리즘으로 에이전트라는 것을 훈련시킴

    • 훈련된 에이전트는 특정 환경에 최적화된 행동을 수행하고 수행에 대한 보상과 현재 상태를 받음
    • 에이전트의 목표는 최대한 많은 보상을 받는 것
  • 강화학습의 대표적인 알고리즘으로는 Q-learning, SARSA, DQN(Deap Q Network)이 있음

규칙이란 가중치와 절편을 말합니다

: 대부분의 머신러닝 알고리즘은 훈련 데이터와 규칙의 관계를 식으로 표현 가능
   (가중치)*(X) + 절편 = Y

  • x : 입력, y : 타깃

  • 딥러닝의 경우 10~100만개의 가중치와 절편을 가짐

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

: 앞의 수학식이 바로 모델에 해당, 모델은 훈련 데이터로 학습된 머신러닝 알고리즘임

  • 가중치와 절편을 합쳐 모델 파라미터(model parameter)라고 부름
  • 실제 실습에서 모델을 클래스로 구현하므로 이를 통해 만든 객체를 모델이라고 이해하면 됨

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

: 기존의 모델에 새로운 입력 값이 들어왔을 때 예측값과 실제값이 다른 경우 모델의 규칙(가중치, 절편)을 수정해야 하는데, 이 때 모델의 규칙을 수정하는 기준이 되는 함수를 손실 함수(loss function) 라고 함

  • 손실함수의 예:) 모델이 예측한 값과 타깃값의 차이를 계산함수

  • 최적화 알고리즘: 손실함수는 단순히 예측값과 타깃의 차이를 정의하는 것이므로 손실 함수의 최솟값을 효율적으로 찾기 위한 방법이 필요, 이 방법을 최적화 알고리즘이라고 함

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

: 딥러닝은 머신러닝 알고리즘 중 하나인 인공신경망(artificial neural network)으로 만든 것으로, 복잡한 문제를 해결하기 위해 인공신경망을 다양하게 쌓은 것을 딥러닝이라고 함

딥러닝은 인공신경망으로 구성됩니다

: 딥러닝이라는 용어는 인공신경망을 여러겹으로 쌓은 모습에서 유래

  • 입력을 받아 출력으로 전달하는 인공신경망은 뇌의 뉴런에서 영감을 받아 만듦

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

: 딥러닝과 머신러닝의 차이점은 처리하는 데이터를 예로 들 수 있음, 딥러닝의 경우 보통 인지와 관련된 문제를, 머신러닝의 경우 정형화된 데이터에 대한 문제를 잘 해결함

  • 딥러닝에 잘 맞는 데이터란? 이미지/영상, 음성/소리, 텍스트/번역 등의 비정형 데이터
  • 머신러닝에 잘 맞는 데이터란? 데이터베이스, 레코드 파일, 엑셀/CVS 등에 담긴 정형 데이터