728x90

 요즘 그냥 데이터 마이닝, 머신 러닝 글 쓰는 것에 약간의 자신감과 재미가 붙었다. 프로세스 마이닝 논문 열심히 읽고 글 써도 아무도 읽지 않는 것.. ㅠㅠ 그래도 열심히 써야지

 Supervised Learning과 Unsupervised Learning. 대부분의 Machine Learning, Data Science를 다루는 과목의 첫 시간에 무조건 나오는 단어들이다. 그래서 나도 이 포스팅으로 머신 러닝 글을 시작해서 하나하나 나아가려고 했지만 어쩌다 보니 이제서야 쓰게 되었다. 아무튼 이번 포스팅에서는 supervised learning과 unsupervised learning의 차이점이 무엇인지, 그리고 각각에 속해 있는 구성 요소에는 무엇이 있는지 등을 총정리해보겠다. 

Supervised Learning

 Supervised Learning은 한 줄로 요약하면 맞춰야 하는 값이 있는 것을 말한다. "어떤 학생이 대학원에 합격할지의 여부를 예측해라.", "저 사람이 결혼할지 평생 혼자 살 지를 예측해라"와 같이 예/아니오의 값을 예측해야하는 것부터 "지금의 집값이 7억인데 내년에는 집값이 얼마가 될 것인지 예측해라."와 같이 정확한 값을 예측하는 것까지 모두 supervised leanring의 범주에 속한다. 이를 우리는 target value(label)가 있는 것이라고도 말할 수 있다. Supervised learning에는 다음과 같은 것들이 포함된다.

 

  • 분류(Classifiaction) 문제: 예측하는 값이 Categorical한 것을 말한다. 이 예측하는 값은 합격여부처럼 예/아니오로 답이 나올 수도 있고, 어떤 사람의 출신 지역을 예측하는 것처럼 여러 가지 값이 될 수도 있다. 이 때, 앞의 경우처럼 예측값이 두 개인 경우를 binary classifiaction, 뒤의 경우를 multi-class classification이라고 한다. 이의 예시로는 Supoort Vector Machine, Logistic Regression 등이 있다. (이들 각각에 대한 설명은 다음 포스팅에서 이어진다.)
  • 회귀(Regression) 문제: 예측하는 값이 Continuous한 것을 말한다. 위에서 든 예시처럼 집값이 얼마가 될지 예측하는 것 등이 이에 해당한다.

Unsupervised Learning

 Unsupervised Learning은 supervised learning과 반대되는 개념으로, 맞춰야 하는 target value(label)가 없는 것을 말한다. 이를 맨 처음에 보면 맞추는 것이 없는데 뭘 learning하나.. 하는 생각을 할 수도 있다. 하지만 만약 100명의 사람들을 비슷한 사람들끼리 3개의 묶음으로 묶어야 한다고 하자. 우리는 각자 1-3으로 labeling된 사람들을 기준으로 labeling되지 않은 사람들을 묶는 것이 아니라, 아무런 label 없이 이들의 특성을 종합적으로 파악해서 묶어야할 것이다. 이런 경우와 같이 label이 없는 것에 대한 문제를 해결하는 것을 unsupervised learning이라고 한다. 이에는 다음과 같은 것들이 포함된다.

 

  • Clustering: 위에서 든 예시와 같이 비슷한 것들을 묶는 것을 말한다. K-means clustering, DBSCAN, SOM 등 다양한 알고리즘들이 존재한다. (이들 각각에 대한 설명은 다음 포스팅에서 이어진다.)
  • Association Rule (연관 규칙): 어떤 사건이 얼마나 자주 함께 발생하는지, 서로 얼마나 연관되어 있는지를 분석하는 것을 말한다. 

 이번 포스팅에서는 supervised learning과 unsupervised learning이 무엇인지, 그리고 각각에 포함되는 문제는 어떤 것이 있는지에 대해 알아보겠다. 다음 포스팅부터는 이 각각의 문제들에 대해 하나하나 다루어보도록 하겠다. 긴 여정이 될 것 같다 ㅎㅎ

300x250
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기