* 본 정리본은 Coursera Machine Learning 강의의 읽기자료를 번역하여 정리한 내용입니다.
* 참고자료: https://wikidocs.net/book/587
1. What is Machine Learning?
머신러닝의 정의는 대표적으로 두 가지가 있다.
먼저 Arthur Samuel이 1959년 정의한 machine learning의 정의를 살펴보자.
"the field of study that gives computers the ability to learn without being explicitly programmed."
요컨데 머신러닝이란, 프로그래머가 직접 수많은 규칙을 정해주는 대신 프로그램 자체가 컴퓨터를 통해 스스로를 학습하도록 하는 방법이다.
이 정의는 다소 오래 되었고 추상적인 측면이 있어 Tom Mitchell은 좀 더 현대적인 방식으로 machine learning을 정의하였다.
"A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E."
즉, 컴퓨터 프로그램은 과제(T)의 성능(P)이 경험(E)로부터 향상될 때, 경험으로부터 학습한다고 말할 수 있다.
Example: playing checkers (체커게임)
E = the experience of playing many games of checkers 많은 체커 게임 경험
T = the task of playing checkers. 체커가 수행하는 일
P = the probability that the program will win the next game. 프로그램이 다음 게임에서 이길 확률
일반적으로, 머신러닝 문제는 1) Supervised Learning, 2) Unsupervised Learning 두 가지 범주로 구분된다.
2. Supervised Learning
지도학습에서는 특정 입력(input), 관측치에 연관된 올바른 정답, 반응변수가 있는 데이터 집합이 주어질 때 학습하는 방법이다.
지도학습은 회귀(regression)와 분류(classification) 문제로 분류된다.
회귀 문제에서는 수치형 변수, 연속형 변수의 결과를 예측한다. 이는 입력변수를 어떤 연속 함수에 매핑하려고 함을 의미한다.
분류 문제에서는 이산형 변수의 결과를 예측한다. 즉, 입력 변수를 이산범주로 매핑하려는 것이다.
Example 1:
부동산 시장의 주택 규모에 대한 자료를 보고 가격을 예측하는 것: 회귀. 가격은 수치형 변수.
특정 가격보다 더 높게 혹은 낮게 팔리는 지 여부를 예측하는 것: 분류. 가격에 근거한 집들을 두 개의 개별적인 범주로 분류함.
Example 2:
(a) Regression - 사람의 사진이 주어졌을 때, 그 사람의 나이를 예측하는 것
(b) Classification - 종양을 가진 환자의 종양이 악성인지 양성인지 예측하는 것
3. Unsupervised Learning
비지도학습에서는 관측치에 대한 반응변수가 주어지지 않아, 관측치가 어떤 결과를 보여야하는 지 모르는 채로 문제에 접근한다.
우리는 데이터 내 변수들 사이의 관계를 바탕으로 데이터를 군집화함으로써 구조를 도출할 수 있다.
비지도 학습에서는 예측 결과에 근거한 피드백이 없다.
Example:
Clustering: 100만 개의 서로 다른 유전자를 모아 놓고, 이 유전자들을 lifespan, location, roles 등 서로 다른 변수들에 의해 서로 비슷하거나 관계가 있는 집단으로 자동화으로 그룹화하는 방법을 찾는 것
Non-clustering: "Cocktail Party Algorithm"