본문 바로가기

자기개발/Programming

머신러닝(Machine Learning) 기초 - 8 : Regression 과 Classification에 대해

머신러닝 기법 리캡

 

머신러닝은 여러 가지 기법의 조합으로 다른 상황에서 각기 다른 문제에 답 하는 로직을 기초로 하며 이전 포스팅에서 큼지막한 개념으로 지도, 비지도 학습으로 구분 하였다.

지도 학습(Supervised learning)은 라벨링을 통해 학습 - 실습 단계로 구분하고 비지도 학습(Unsupervised learning) 은 별도의 라벨링/ 사전 학습이 부재된다.

추가로 어떤 결괏값을 도출하는지에 따라 추가적인 분류가 가능하다 : 회귀 법(regression)과 분류법(classification)

 

이번 포스팅에서는 regression과 classification을 비교해보겠다.


1. 회귀 법(Regression)

 

회귀 분석은 연속적인 결괏값을 출력을 예측하는 데 사용된다. 출력 값은 라벨링(학습) 값에 국한되지 않고 '참고' 하여 입력값에 따라 유연한 값을 도출한다.
예를 들어,
* 강우량을 기준으로 화초의 성장성(길이)을 예측
* 연령과 초고속 인터넷 가용성을 기준으로 급여 수준을 예측
* 자동차 크기와 연식에 따라 차량의 MPG(갤런당 마일)를 예측
선형 회귀 분석(Linear regression)은 가장 많이 사용되는 회귀 알고리즘이며 해당 모델링은 비교적 단순하기 때문에 종종 과소평가된다.

다만 비즈니스 환경에서 유용하게 사용될 수 있으며 (사용법이 간단하며 정확도가 비교적 높기 때문에) 복잡한 모델링은 단순성을 포기하는 대신 정밀한 데이터 값을 가질 수 있다.

라벨링에 사용되는 결과값이 나와있는 지난 데이터를 사용하여 새로이 입력되는 값에 대한 결과값을 예측한다 (사이즈)

 

2. 분류법 (Classification)

 

분류법은 는 불연속적(discrete)인 라벨링을 예측하는 데 사용하며 출력 값은 제한된 값의 가능 결과에 국한된다 (Yes or No와 같은 두 가지 결과). 이를 이진법 분류 (참 혹은 거짓, 0 또는 1, yes / no)라고 한다.

예를 들어,
* 이메일이 스팸인지 여부를 예측.
* 비가 올지 안 올지 예측.
* 사용자가 파워 유저인지 일반 유저인지 예측.


또한 분류 유형에는 멀티 클래스 분류(multi-class classification)와 멀티 라벨링 분류(multi-label classification)라는 일반적인 두 가지 분류 유형이 있다. 

 

멀티 클래스 분류는 이진법 분류가 아닌 다수의 결괏값을 갖는 분류가 가능하다.

예를 들어,
* 사진에 배, 사과, 복숭아가 들어 있는지 예측.
* 손으로 쓴 문자가 알파벳 문자인지 예측.
* 과일 사이즈가 소, 중, 대 인지 예측.

다만 이진법 분류 및 멀티 클래스 분류 모두 한 가지 특정 라벨링에서 비롯된 결과라는 점이 특징이다. 그러나 멀티 라벨 분류에서는 각 결과에 대해 여러 개의 라벨이 가능하며 이는 실제 사용에서 고객 세분화, 영상 분류, 텍스트 이해를 위한 정서적(Qualitative) 분석에 유용.

이러한 분류를 수행하기 위해 Naive Bayes, K-Nearest Neighbors, SVM 및 다양한 딥러닝 모델을 이용하게 되는데 멀티 라벨 분류의 예는 다음과 같다

 

입력값에 대한 데이터값을 분석하여 결과 분류
사진에서 보여지는 동물의 종류를 분류

올바른 모델/기법 선택이 적합해야 의미는 결과를 얻을 수 있는 점은 모든 머신러닝 기법에 적용되는 베이스라인이다.