기계 학습 (Machine Learning) 이란?
- "기계가 일일이 코드로 명시하지 않은 동작을 데이터로부터 학습하여 실행할 수 있도록 하는 알고리즘을 개발하는 연구 분야" by 아서 사무엘 (1959)
- 인공 지능의 한 분야
- 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야
- ex. 기계 학습을 통해서 수신한 이메일이 스팸인지 아닌지를 구분할 수 있도록 훈련
- 기계 학습의 핵심은 표현(representation)과 일반화(generalization)에 있다. 표현이란 데이터의 평가이며, 일반화란 아직 알 수 없는 데이터에 대한 처리이다.
- 다양한 기계 학습의 응용이 존재 & 문자 인식은 이를 이용한 가장 잘 알려진 사례
- 알고리즘의 유형 : 크게 3가지로 분류 - 지도학습 / 비지도학습 / 강화학습
1. 지도 학습 (Supervised Learning) 이란?
- 정답이 주어진 상태에서 학습하는 알고리즘 (이미 분류가 존재한 상태에서 추가 데이터를 분류)
- 훈련 데이터(Training Data)로부터 하나의 함수를 유추해내기 위한 기계 학습(Machine Learning)의 한 방법
- 이렇게 유추된 함수 중 연속적인 값을 출력하는 것을 회귀분석(Regression)이라 하고 주어진 입력 벡터가 어떤 종류의 값인지 표식하는 것을 분류(Classification)라 한다.
- 즉 지도학습의 목적은 회귀 생성(Regression)과 분류(Classification)라고 할 수 있다.
- 이를 달성하기 위해서는 학습기가 "알맞은" 방법을 통하여 기존의 훈련 데이터로부터 나타나지 않던 상황까지도 일반화하여 처리할 수 있어야 한다.
> 지도 학습 알고리즘
- 회귀 분석 (Regression)
- 나이브 베이즈 분류 (Naive Bayes Classification)
- 서포트 벡터 머신 (Support Vector Machine)
- 신경망 (Neural Network)
- 은닉 마르코프 모델 (Hidden Markov Model)
> 평가 방법
- 훈련 데이터로부터 하나의 함수가 유추되고 나면 해당 함수에 대한 평가를 통해 파라미터를 최적화한다. 이러한 평가를 위해 교차 검증(Cross-Validation)이 이용된다.
- 교차 검증을 통하여 훈련된 각 함수에 대해 정밀도(Precision)와 재현율(Recall)를 측정할 수 있다.
2. 비지도 학습 (Unsupervised Learning) 이란?
- 정답이 주어지지 않은 상태에서 데이터의 특성을 학습하는 알고리즘 (분류가 안된 데이터들을 분류)
- 데이터가 어떻게 구성되었는지를 알아내는 문제의 범주에 속하는 기계 학습의 일종
- 이 방법은 지도 학습 혹은 강화 학습과는 달리 입력값에 대한 목표치(분류된 값)가 주어지지 않는다.
- 비지도 학습은 통계의 밀도 추정(Density Estimation)과 깊은 연관이 있다.
- 데이터의 주요 특징을 요약하고 설명할 수 있다.
> 비지도 학습 알고리즘
- 군집화 (Clustering), k-평균 군집화 (K-means Clustering)
- 독립 성분 분석 (Independent Component Analysis)
- 차원 축소 (Dimension Reduction)
등 여러가지 알고리즘 존재
'Python 과 머신러닝 > III. 머신러닝 모델' 카테고리의 다른 글
[Python 머신러닝] 7장. 앙상블 (Ensemble) - (2) RandomForest (0) | 2019.10.25 |
---|---|
[Python 머신러닝] 7장. 앙상블 (Ensemble) - (1) 앙상블의 개념 (0) | 2019.10.25 |
[Python 머신러닝] 6장. 분류 (Classification) (w/ scikit-learn) (0) | 2019.10.25 |
[Python 머신러닝] 5장. 회귀분석 - (2) 로지스틱 회귀분석 (0) | 2019.10.24 |
[Python 머신러닝] 5장. 회귀분석 - (1) 선형 회귀분석 (1) | 2019.10.23 |
댓글