Icednut's Note

Machine Learning Study 01 - 머신러닝의 정의 및 기초 용어 정리

2017-02-01

머신러닝(Machine Learning)의 정의 및 용어 정리

Tom Mitchell는 자신의 저서 머신러닝에서 러닝, 즉 학습의 정의를 다음과 같이 내렸다.

만약 컴퓨터 프로그램이 특정한 태스크 T를 수행할 때 성능 P만큼 개선되는 경험 E를 보이면 그 컴퓨터 프로그램은 태스크 T와 성능 P에 대해 경험 E를 학습했다라고 할 수 있다.

example)

컴퓨터에게 필기체를 인식하는 학습을 시킨다고 했을 때

  • 태스크 T: 필기체를 인식하고 분류하는 것
  • 성능 P: 필기체를 정확히 구분한 확률
  • 학습 경험 E: 필기체와 정확한 글자를 표시한 데이터세트
    로 정의할 수 있다.

Vector

  • 머신(컴퓨터)가 학습하기 위해서는, 다시 말해 컴퓨터가 어떤 판단 규칙 만들기 위해서는 사람이 인지하는 데이터를 컴퓨터가 인지하기 위해 데이터의 사전 처리가 필요하다.
  • 예를 들면, 텍스트로 된 사용자 행동로그 데이터 테이블, 자연어로 구성된 문장, 음성신호, 디지털 이미지, 동영상 등의 데이터는 계산 가능한 정량적인 단위로 변환 및 벡터나 행렬 형태로 가공이 필요하다.
  • 입력 데이터를 벡터 형태로 표현하는 이유는 입력 데이터가 n개의 특성으로 정량화 됐다면 n차원 벡터 공간에 표현할 수 있어 데이터를 직관적으로 이해하고 수학적인 분류 모델을 만들기 쉽기 때문

머신러닝과 데이터 마이닝

  • 머신러닝에서 사용하는 분류나 군집 같은 방법을 데이터 마이닝에서도 사용함
  • 분류나 예측, 군집과 같은 기술, 모델, 알고리즘을 이용해 문제를 해결하는 것을 컴퓨터 과학 관점에서는 머신러닝이라고 하고, 통계학 관점에서는 데이터 마이닝이라고 한다.
  • 머신러닝과 데이터 마이닝의 차이점을 굳이 설명하자면 데이터 마이닝은 가지고 있는 데이터에서 현상 및 특성을 발견하는 것이 목적,
  • 반면 머신러닝은 기존 데이터를 통해 학습을 시킨 후 새로운 데이터에 대한 예측값을 알아내는 데 목적이 있다라고 할 수 있다.

용어 정리

레이블(Label)

  • 학습 데이터의 속성을 우리가 분석하고자 하는 관점에서 정의하는 것
  • 예를 들어 사진에서 어떤 사물을 구별하는 태스크 T가 있다고 할 때 사진은 학습 데이터, 사진 속에 있는 사물 ‘컵’, ‘책상’, ‘자전거’, ‘고양이’라고 미리 정의해 놓는 것을 레이블이라고 한다.

지도(Supervised) 학습 & 비지도(Unsupervised) 학습

  • 레이블은 사람이 사진을 보고 정의한 것이기 때문에 그러한 레이블된 사진을 읽어서 학습하는 컴퓨터 입장에서는 사람으로부터 지도를 받는 것이라 하여 지도 학습
  • 입력 데이터에 레이블이 없다면 컴퓨터가 사람으로부터 지도를 받은 것이 없기 때문에 비지도 학습이라 한다.
  • 지도학습의 종류: 분류 모델(Classification), 예측 모델(Prediction)
  • 비지도 학습의 종류: 군집 모델(Clustering)

분류 모델 (Classification)

  • kNN (k nearest neighbor)
  • 서포트 벡터 머신 (Support Vector Machine)
  • 의사결정 트리 (Decision Tree)
  • 분류 모델의 예를 들면, A,B,C 레이블로 구성된 데이터세트가 있다고 하면 분류모델의 결괏값은 A,B,C 셋 중에 하나가 나온다.

예측 모델 (Regression)

  • 회귀(Regression)가 주된 방식이라 예측 모델은 회귀 모델이라고 하기도 함
  • 회귀 모델은 레이블된 학습 데이터를 가지고 특성(Feature)과 레이블의 관계를 함수식으로 표현하는 것이 목적
  • 회귀 모델은 A,B,C와 같이 유한 개의 결괏값이 나오지 않고 어떤 값이 나올지 예상하지 못하기 때문에 예측 모델이라고 한다.
  • 주가 분석과 같이 연속적인 범위 내에 결괏값을 예측하는 문제에는 선형 회귀 모델(Linear Regression)을 사용
  • 회귀 모델도 분류와 같이 몇 가지 범주형(Categorical) 결괏값을 예측하는 경우에는 로지스틱 회귀 모델(Logistic Regression)을 사용
    • Logistic Regression에서는 회귀 분석 시 로지스틱 함수 혹은 시그모이드 sigmoid 함수를 사용

특성(Feature)

  • 입력 데이터(ex: 사용자 로그, 음성, 이미지 등)를 구별해낼 수 있는 특징들을 정량화한 것
  • 통계학에서는 ‘설명변수’, ‘독립변수’, ‘예측변수’로 표현한다.
  • 적절한 특성의 선정이 효과적인 머신러닝을 만드는데 중요함

상관 분석 (Correlation)

  • 독립변수와 종속변수 간의 관계의 강도, 정도를 분석하는 것 (즉, 얼마만큼 밀접하게 관련되어 있는지 분석)
  • 이 때 강도를 상관계수(r)라 부른다.
  • 상관계수(r): 독립변수와 종속변수의 관계 정도를 -1과 1사이로 정량화한 것

회귀 분석 (Regression)

  • 관측된 사건들을 정량화해서 여러 독립변수와 종속변수(목적변수라고도 함)의 관계를 함수식으로 설명하는 방법
  • 종속변수: 우리가 알고 싶어하는 결괏값, 기댓값, 예상값
  • 독립변수: 이러한 결괏값에 영향을 주는 입력값
  • 예를 들어, 어떤 고등학교에 있는 학생들의 키와 몸무게의 상관관계를 기반으로 학생의 키가 주어졌을 때 그 학생의 몸무게를 예측할 때 키는 독립변수, 몸무게는 종속변수이다.
  • 이 때 그 상관관계를 함수식으로 규명하는 것이 회귀 분석이며 이를 함수식으로 나타내면 다음과 같다.

    회귀 함수 예시
    1
    y = -141.24 + 1.185x, 결정계수(r^2) = 0.9331
  • 결정계수(r^2): 독립변수를 가지고 얼마만큼 의미 있게 종속변수를 예측할 수 있는지를 판별할 때 사용. 일반적으로 r^2 >= 0.65 이면 의미있는 회귀식이라 말한다.

선형 회귀 (Linear Regression)

  • 선형: 독립변수가 1차항으로 돼 있다는 의미. 이를 기하학적으로 표현하면 독립변수와 종속변수의 관계가 2차원에서는 직선형태로, 3차원에서는 평면으로 나타난다.
  • 선형회귀식을 구할 때는 일반적으로 최소제곱법을 이용
  • 최소제곱법: 독립변수를 통해 임의의 함수로 예측한 결괏값과 실제 종속변수값의 차이(오차error, 잔차residual 라고도 함)를 제곱해서 모두 더한 값이 최소가 되는 함수식을 찾는 방법

로지스틱 회귀 (Logistic Regression)

  • 종속변수가 예/아니오, 1/0, 클릭/넌클릭 같은 범주형(categorical)으로 표현될 때
Tags: Machine Learning