Machine Learning이란?

머신러닝

머신러닝은 기계를 학습시켜 인간의 판단을 위임하기 위해서 고안된 기술입니다.
AI를 달성하기 위한 수단이 머신러닝 (How to teach AI? - By Machine Learning)
딥러닝은 머신러닝을 달성하기 위한 방법
deep learning > Machine Learning > AI

머신러닝이란?

  • 결정 : 비교 + 선택
  • 수(number)는 비교를 위한 가장 중요한 도구
  • 인류는 이 복잡한 세상을 숫자로 표현하기 위한 여러 가지 방법을 찾아냅니다.
  • 그리고 이 방법들을 모아서 여기에 ‘통계’라는 이름을 붙였습니다.
  • 인류는 인간의 고유한 영역으로 남아있던 결정을 기계에 맡기고 싶어 합니다.
  • 그래서 만들어진 기술이 기계학습, 영어로 Machine Learning입니다.

  • 망원경이 있다고 눈이 필요 없어지는 것은 아닙니다. 망원경은 눈을 더욱 멀리 볼 수 있게 해줍니다. 그래서 눈을 더욱 눈답게 해줍니다.
  • 자동차가 있다고 발이 쓸모없어지는 것은 아니듯이
  • 머신러닝 때문에 두뇌가 필요 없어지는 것은 결코 아닙니다.
  • 머신러닝은 우리의 두뇌가 가진 중요한 기능인 판단능력을 확장해서 우리의 두뇌가 더욱 빠르고 정확하게 결정할 수 있게 돕는 기가 막힌 도구입니다.

  • 나의 두뇌를 더욱 두뇌답게 만들어봅시다.

머신러닝 체험하기

Model

머신러닝 : 판단력을 기계에게 부여하는 기술 Model : 머신러닝을 만든 사람들은 이런 ‘판단력’을 모델이라고 부르기로 했습니다. 학습 : 그리고 이 모델을 만드는 과정을 ‘학습(Learning)’이라고 부르기로 했습니다.

  • 학습이 잘 되어야 좋은 모델을 만들 수 있고 모델이 좋아야 더 좋은 추측을 할 수 있습니다.
  • 추측이 정확해야 좋은 결정을 할 수 있습니다.

애플리케이션 과 프로그램

애플리케이션 : 응용 –> 어떤 기능을 부품으로 응용해서 만든 기술
머신러닝 애플리케이션 : 머신러닝의 모델을 응용해서 만든 기술, 소프트웨어
프로그램 : 과거에 음악회 같은 곳에서 시간에 따라서 곡이 연주되는 순서를 프로그램
즉, ‘프로그램’이라는 말 속 깊은 곳에는 ‘시간’, ‘순서’라는 의미가 포함되어 있습니다.
시간의 순서에 따라서 동작하는 작업을 프로그램이라고 합니다.
프로그래밍 : 프로그램을 만드는 일 Programming
프로그래머 : 프로그램을 만드는 사람을 Programmer

IoT 사물인터넷

인터넷으로 사물을 제어 - Internet Of Things

데이터 과학 데이터 공학

데이터 과학 : 데이터를 만들고, 만들어진 데이터를 이용하는 일을 합니다.
데이터 공학 : 데이터를 다루는 도구를 만들고, 도구를 관리하는 일을 합니다.

: Data set
: 가로 = Row = 개체Instance = 관측치Observed Value = 기록Record = 사례Example = 경우Case
: 세로 = Column = 특성Feature = 속성Attribute = 변수Variable = field

독립변수 종속변수

변수 variable : 변할 수 있는 값
표에서 “열”에 해당하는 부분은 “변수”와 같은 용어

  • 독립변수 : Independent Variable
    • 원인
  • 종속변수 : Dependent Variable
    • 결과
  • 독립변수와 종속변수의 관계를 인과관계라고 한다.
  • 인과관계는 상관관계에 포함된다.

머신러닝의 분류

  • 지도학습 Supervised Learning
    • 기계를 가르치다
    • 문제집을 푸는 방식
    • 문제와 정답을 학습하고 모델을 만드는 것
  • 비지도학습 UnSupervised Learning
    • 누가 정답을 알려주지 않았는데도 무언가에 대한 관찰을 통해 새로운 의미나 관계를 밝혀내는 것
  • 강화학습 Reinforcement Learning
    • 학습을 통해서 능력을 향상시킴
    • 지도학습과의 차이점 : 지도학습은 문제집이 있는 것
      • 강화학습은 스스로 기계가 느끼면서 실력향상을 위해서 노력하는 수련의 과정
    • 경험을 통해 더 좋은 답을 찾아가는 것

지도학습

  • 지도학습을 하기 위해서는 우선 과거의 데이터가 있어야 합니다.
  • 그리고 그 데이터를 독립변수(원인)와 종속변수(결과)로 분리해야 합니다. 독립변수와 종속변수의 관계를 컴퓨터에게 학습시키면 컴퓨터는 그 관계를 설명할 수 있는 공식을 만들어냅니다.
  • 이 공식을 머신러닝에서는 ‘모델’이라고 합니다. 좋은 모델이 되려면 데이터가 많을수록, 정확할수록 좋습니다.
  • 일단 모델을 만들면 아직 결과를 모르는 원인을 모델에 입력했을 때 결과를 순식간에 계산해서 알려줍니다.

회귀 Regression & 분류 Classification

지도학습은 크게 회귀와 분류로 나뉩니다.
가지고 있는 데이터에 독립변수종속변수가 있고 종속변수가 숫자일때 회귀를 이용하면됩니다.
가지고 있는 데이터에 독립변수종속변수가 있고 종속변수가 이름일때 분류를 이용하면됩니다.

  • 지도학습 회기
    • 예측하고 싶은 종속변수가 숫자일 때 보통 회귀라는 머신러닝의 방법을 사용
  • 지도학습 분류
    • 어떤 문제를 만났는데 그 문제에서 추측하고 싶은 결과가 이름 혹은 문자라면 지도학습의 분류로 문제를 해결

양적 데이터와 범주형 데이터

  • 양적 Quantitative
    • 숫자
    • 얼마나 큰지 작은지 많은지 어느정도인지를 의미하는데이터
  • 범주 Categorical
    • 이름

비지도 학습 - 군집화 Clusturing

비지도 학습의 사례로는 군집화, 연관, 변환등이 있습니다.

  • 군집화 Clusturing
    • 비슷한 행을 그룹화하는 것
  • 연관 규칙 학습 Association Rule Learning
    • 연관규칙은 서로 관련이 있는 특성(열)을 찾아주는 머신러닝의 기법

강화학습 Reinforcement Learning

  • 게임 : 환경(environment)
  • 게이머 : 에이전트(agent)
  • 게임화면 : 상태(state)
  • 게이머의 조작 : 행동(action)
  • 상과 벌 : 보상(reward)
  • 게이머의 판단력 : 정책(policy)
    • 우선 게임이 있어야 합니다. 게임은 게이머에게 보여줄 화면이 필요합니다. 또 하나의 주인공은 게이머입니다. 게이머는 우선 현재의 상태를 관찰해야 합니다.관찰의 결과에 따라서 어떤 상태에서 어떻게 행동해야 더 많은 상을 받고, 더 적은 벌을 받을 수 있는지를 알게 됩니다. 관찰과 행동을 하기 위해서는 판단력이 필요합니다. 이런 과정을 반복하면 판단력이 점점 강화됩니다. 강화학습은 이러한 과정을 모방해서 기계를 학습시키는 것입니다.

강화학습에서는 더 많은 보상을 받을 수 있는 정책을 만드는 것이 핵심