[비전공자를 위한 딥러닝] 1.4 - 회귀/분류, 지도학습/비지도학습



지난 시간에 우리는 인공지능, 머신러닝, 딥러닝이 어떤 의미이고 어떻게 구분되는지 살펴보았다.
이번 시간에는 머신러닝의 종류를 구분하는 기준 두 가지를 소개하겠다.

첫 번째로는 '회귀'와 '분류'가 무엇인지,
두 번째로는 '지도학습'과 '비지도학습'은 무엇인지 알아보겠다.




1.  회귀(regression) vs 분류(classification)


머신러닝 알고리즘의 종류는 다양한데, 그 종류를 나누는 기준도 다양하기 때문에 우선 가장 널리 쓰이며 이해하기 쉬운 것부터 알아보도록 하자.
먼저 머신러닝을 통해 해결하려는 문제의 종류에 따라 나눌 수 있는데, 우리가 예측하려는 값의 종류에 따라 '회귀'와 '분류'로 구분할 수 있다.



값의 종류는 '연속 값(continuous value)'과 '이산 값(discrete value)'으로 나뉜다.




연속 값
이란, 말 그대로 연속하는 값을 말한다.


주관식 문제의 답을 쓰듯이, 그 값은 0.3이 될 수도 있고 0.31, 0.301, 0.3001 이렇게 끝없이 연속되어 나갈 수 있다.


이산 값
이란 객관식 문제의 보기처럼 한정된 수로 끊어져 있다. 
예를 들면 다음과 같다.
  • 10대 / 20대 / 30대 / 40대 / 50대 / 60대 이상
  • 매우 그렇다 / 그렇다 / 보통이다 / 그렇지 않다 / 매우 그렇지 않다



머신러닝을 이용해 해결하려는 문제의 종류는 대체로 두 가지로 구분된다.


예측하려는 값이 연속 값이면 회귀 문제이며,
예측하려는 값이 이산 값이면 분류 문제다.



예를 들어보자.


A 보험 회사는 앞으로 고객을 받을 때 어떻게 가격을 책정해야 더 높은 수익을 얻을지 고민 중이다. 이를 해결하기 위해 머신러닝을 활용해보고자 한다. 현재까지 가입한 고객들의 데이터를 학습해서, 새로운 고객의 (적정) 가격을 추론하는 모델을 만들어보려는 것이다.

이 경우는 추론하려는 값이 '가격', 즉 4,852,302.11원과 같이 정수로 표현되는 연속 값이다.
따라서 이 머신러닝 모델이 해결하려는 문제는 회귀 문제라고 할 수 있다.



B 군은 운영중인 커뮤니티 웹사이트에 올라오는 광고성 게시물을 머신러닝으로 필터링해보려고 한다. 학습된 모델이 추론하려고 하는 것은, 새로운 데이터가 들어왔을 때 그것이 광고성인지 아닌 지를 가려내는 것이다. 

이 경우는 추론하려는 값이 '네 / 아니오' 중에서 선택하는 이산 값이다.
따라서 이 머신러닝 모델이 해결하려는 문제는 분류 문제라고 할 수 있다.

위의 예시와 같이 '네 / 아니오' 두 종류로 구분하는 것을 이진 분류(binary classification) 문제라고 한다. 즉, 양성 클래스(positive class)와 음성 클래스(negative class)로 분류한다는 것이다.
만약 분류하려는 클래스가 두 가지 이상이라면, 다항 분류(multi-class classification) 문제가 된다. 예를 들어 이미지 데이터에 대해서 "사람, 자동차, 도로" 중 어느 클래스에 해당하는지 추론하는 것은 다항 분류 문제에 해당한다.




2.   지도 학습(supervised learning) vs 비지도 학습(unsupervised learning)


머신러닝은 학습의 종류에 따라 구분되기도 한다.
가장 보편적으로는 지도 학습과 비지도 학습으로 구분하는데, 최근에는 반지도 학습이나 강화 학습*이라는 방법도 입지를 다지고 있다. 이 강의에서는 머신러닝을 이해하는 가장 핵심이 되는 지도 학습과 비지도 학습에 대해서만 다룬다.
* 강화 학습은 모델이 어떤 행동을 선택하느냐에 따라 보상(reward) 혹은 벌점(penalty)를 부여해 점점 나은 전략을 학습하는 방법으로, 체스 게임 등 전략적 선택을 학습해야 하는 문제에 주로 사용된다. 알파고를 학습할 때에도 사용되었다.

지도학습과 비지도학습을 나누는 기준은, 한 마디로 레이블(label)*의 유무라고 할 수 있다.
* 학습에서 '정답'을 의미한다. 1강과 2강 참고



훈련 데이터에 레이블이 있다면 지도 학습이고
훈련 데이터에 레이블이 없다면 비지도 학습인 것이다.




1강과 2강에서 '학습'에 대해 살펴볼 때 예시로 들었던 '스팸 메일 분류'를 생각해보자.
당신은 직접 레이블링을 해보기도 했고(1강),
예측한 가설이 정답인 레이블과 얼마나 차이가 나는지를 체크하며 훈련 진행 과정을 간단하게 살펴보았다(2강).



즉, 레이블이 존재하는 훈련 데이터를 가지고 학습을 진행하는,
전형적인 지도 학습이라고 할 수 있다.



그렇다면 비지도 학습은 어떤 걸까??

비지도 학습이란 레이블이 없는 데이터로 학습을 진행하는 방법이라고 설명했다. 대표적으로 집화(clustering)라는 방법이 있는데, 이를 통해 데이터들을 여러 개의 그룹으로 묶어낼 수 있다.


스팸 메일을 분류하는 예시에서 만약 레이블이 없다고 생각해보자. 군집화를 사용한다면, 아래처럼 메일을 두 그룹으로 분리해내는 것을 목표로 할 것이다. 




이번 시간에는 머신러닝을 구분하는 두 종류의 기준과, 각각의 분류에 대해 알아보았다.
첫 번째로는 머신러닝을 통해 해결하려는 문제의 종류에 따라 회귀 문제와 분류 문제를 살펴보았다.
두 번째로는학습의 종류에 따라 머신러닝을 지도 학습과 비지도 학습을 구분하고 살펴보았다.




  정 리 하 기  
정답을 입력하면 상자 테두리가 초록색으로 변합니다



예측하려는 값이  값이면  문제이며,

예측하려는 값이  값이면  문제다.



훈련 데이터에 이 있다면  학습이고,

                                        없다면  학습이다.



힌트 보기
레이블, 분류, 이산, 비지도, 회귀, 분류, 연속, 지도















댓글 쓰기

6 댓글

  1. 머신러닝의 2가지 종류에 따른 기준과 분류에 대하여 쉽게 배우고 있는 중입니다~~~~~

    답글삭제
    답글
    1. 쉽게 이해한 것 같아 기쁘네요 :)

      삭제
  2. 이번에도 잘 읽고갑니다!

    답글삭제
  3. 머신러닝을 구분하는 두 종류의 기준과 분류에 대해 잘 알게 되었어요
    Philgineer님 덕분에 어렵게만 느껴지던 머신러닝에 대해 조금씩
    알아가는 재미가 쏠쏠하네요^^

    답글삭제
    답글
    1. 도움이 된다니 기쁘네요! 감사합니다! :)

      삭제