정의: A computer Programing is said to learn form 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 - by T.Michell(1997)
기계학습 알고리즘을 잘 활용할 줄 아는 사람과 알고리즘을 잘 활용하지 못하는 사람 간에는 큰 차이가 있다. 어떤 상황(실무)에서 어떤 알고리즘을 적용하고, 어떻게 접근해야 최적화된 시스템을 만들 수 있는지 고민해봐야한다.
Supervised learning: 정답이 주어진 dataset(labeled data)으로 학습을 시킴
Unsupervised learning: 각 데이터의 의미는 모르고, 구조를 찾아라
Classification
Discrete Target values(정수)
X: pixels Y: 0,1,~9
ex: 암 판정, 글자 맞추기
Regression
Real target values(실수)
X ∈(0,100) Y∈(0,100)
ex: 집값 예측
no target values: 정답을 모른다
ex: 뉴스 주제별로 묶기, 유전자 분석을 통한 사람의 유형 구분, 데이터 센터의 컴퓨터 클러스터링, social network analysis, 시장 세분화, cocktail party algorithm
SVM → 무한개의 가까운 feature에도 대응할 수 있는 방법
Classifiction과 Regression은 label(답)이 존재하지만, Clustering은 존재하지 않는다. 즉, labeled data가 존재하는 Supervised learning과 unlabeled data가 있는 Unsupervised learning으로 나눌 수 있다.