컴공생의 다이어리
머신러닝의 종류(지도 학습, 비지도 학습, 강화 학습) 본문
머신러닝은 학습하려는 문제의 유형에 따라, 다음과 같이 크게 3가지로 분류된다.
- 지도 학습(Supervised Learning)
- 비지도 학습(Unsupervised Learning)
- 강화 학습(Reinforcement Learning)
지도 학습(Supervised Learning)
지도 학습이란 말 그대로 정답이 있는 데이터를 활용해 데이터를 학습시키는 것이다. 입력 값(X data)이 주어지면 입력값에 대한 Label(Y data)를 주어 학습시키는 것을 말한다. 예를 들어 인물 사진과 동물 사진을 주어 이건 사람이고 이건 동물이야라고 알려주는 학습 방식이다. 따라서 기계가 정답을 잘 맞췄는지 아닌지를 쉽게 알 수 있다.
지도학습에는 대표적으로 분류(classification)와 회귀(regression)가 있다. 분류가 전형적인 지도 학습이며, 주어진 데이터를 정해진 카테고리(label)에 따라 분류하는 문제를 말한다. 회귀는 어떤 데이터들의 예측 변수(Predictor variable)라 불리는 특성(feature)를 기준으로, 연속된 값(그래프)을 예측하는 문제로 주로 어떤 패턴이나 트렌드, 경향을 예측할 때 사용된다.
분류 |
이진분류 |
어떤 데이터에 대해 두 가지 중 하나로 분류할 수 있는 것 |
다중분류 |
어떤 데이터에 대해 여러 값 중 하나로 분류할 수 있는 것 |
|
회귀 |
어떤 데이터들의 특징(feature)를 토대로 값을 에측하는 것 결과 값은 실수 값을 가질 수 있다.(그 값들은 연속성을 갖는다. 그래프를 생각하면 됨) |
특성(Feature)이란?
머신러닝은 어떤 데이터를 분류하거나, 값을 예측(회귀)하는 것이다. 이렇게 데이터의 값을 잘 예측하기 위한 데이터의 특징들을 머신러닝/딥러닝에서는 "Feature"라고 부르며, 적절한 "Feature"를 정의하는 것이 머신러닝의 핵심이다.
지도 학습 알고리즘
- K-최근접 이웃(k-Nearest Neighbors)
- 선형 회귀(Linear Regression)
- 로지스틱 회귀(Logistic Regression)
- 서포트 벡터 머신(SVM, Support Vector Machine)
- 결정 트리(Decision Tree)와 랜덤 포레스트(Random Forest)
- 신경망(Neural Network)
비지도 학습(Unsupervised Learning)
비지도 학습이란 지도 학습과 다르게 정답 라벨이 없는 데이터를 비슷한 특징끼리 군집화 하여 새로운 데이터에 대한 결과를 예측하는 것이다. 라벨링 되어있지 않은 데이터로부터 패턴이나 형태를 찾아야 하기 때문에 지도학습보다는 조금 더 난이도가 있다. (실제로 지도 학습에서 적절한 feature를 찾아내기 위한 전처리 방법으로 비지도 학습을 이용하기도 함)
비지도 학습 알고리즘
- 군집(Clustering)- K-평균(k-Means)- 계층 군집 분석(HCA, Hierarchical Cluster Analysis)- 기댓값 최대화(Expectation Maximization)
- 시각화(Visualization)와 차원 축소(Dimensionality Reduction)- 주성분 분석(PCA, Principal Component Analysis)- 커널 PCA(Kernel PCA)- 지역적 선형 임베딩(LLE, Locally-Linear Embedding)- t-SNE(t-distributed Stochastic Neighbor Embedding)
- 연관 규칙 학습(Association Rule Learning)- 어프라이어리(Apriori)- 이클렛(Eclat)
계층 군집 알고리즘을 사용하면 각 그룹을 더 작은 그룹으로 세분화할 수 있다. 시각화 알고리즘은 레이블이 없는 대규모의 고차원 데이터를 넣으면 도식화가 가능한 2D나 3D 표현을 만들어 준다. 차원 축소는 너무 많은 정보를 잃지 않으면서 데이터를 간소화하는데 사용된다. 예를 들어 차의 주행거리는 연식과 매우 연관되어 있으므로 차원 축소 알고리즘으로 두 특성을 차의 마모 정도를 나타내는 하나의 특성으로 합칠 수 있다. 이를 특성 추출(Feature Extraction)이라고 한다.
이상치 탐지는 학습 알고리즘에 주입하기 전에 데이터셋에서 이상한 값을 자동으로 제거하는 작업이다. 정상 샘플로 훈련되고, 새로운 샘플이 정상인지 아닌지 판단한다. 연관 규칙 학습은 대량의 데이터에서 특성 간의 흥미로운 관계를 찾는다. 어떠한 상품을 구매한 사람이 다른 상품을 구매하는 경향이 있다는 것을 찾을 때 활용한다.
강화 학습(Reinforcement Learning)
강화 학습은 지도, 비지도 학습과는 다른 종류의 알고리즘이다. 강화 학습에서는 학습하는 시스템을 에이전트라고 부르며 환경을 관찰해서 행동을 실행하고 보상을 받는다. 시간이 지나면서 가장 큰 보상을 얻기 위해 정책이라고 부르는 최상의 전략을 스스로 학습한다. 정책은 주어진 상황에서 에이전트가 어떻게 행동해야 하는지를 판단한다.
- 강화 학습의 개념- 에이전트(Agent)- 환경(Environment)- 상태(State)- 행동(Action)- 보상(Reward)ex) 게임의 규칙을 따로 입력하지 않고 자신(Agent)이 게임 환경(environment)에서 현재 상태(state)에서 높은 점수(reward)를 얻는 방법을 찾아가며 행동(action)하는 학습 방법으로 특정 학습 횟수를 초과하면 높은 점수(reward)를 획득할 수 있는 전략이 형성한다. 단, 행동(action)을 위한 행동 목록(방향키, 버튼)등은 사전에 정의가 되어야 한다.
'데이터 분석 & 머신러닝' 카테고리의 다른 글
k-mean 클러스터링 (0) | 2021.01.12 |
---|---|
선형 회귀(Linear Regression) (0) | 2021.01.10 |
베이즈 정리(Bayes Theorem) (0) | 2021.01.09 |
확률(Probability) (0) | 2021.01.09 |
엔트로피, 정보이득 계산과 ID3알고리즘 (0) | 2021.01.09 |