본문 바로가기
Machine Learning

3. 머신이 학습하는 방식들

by 대소니 2016. 7. 3.


머신이 학습을 하는 방식은 Supervised Learning과 Unsupervised Learning의 2가지로 구분이 됩니다.

이는 기초 데이터인 Dataset의 성격과 원하는 결과 값의 성격에 따라 다르게 사용이 됩니다.


Supervised Learning


변역하면 지도식 학습 방법입니다.

선생님이 학생을 교육하듯이 이미 답을 알고 있는 상태에서 학습을 하는 경우입니다.

DataSet이 이미 결과 값을 포함하고 있어 머신이 학습을 수행하여 나온 결과 값이 얼마정도의 오차를 가지고 있는지 알수 있는 경우에 사용될 수 있습니다.


예를들어, 집의 사이즈에 따른 집의 가격을 분석한다면 우리는 이미 평수에 따른 가격이 어떻게 구성이 되는지를 알고 있습니다. 실제로 집이 거래된 가격도 정확하게 알 수 있습니다. 이 집의 사이즈 데이터를 머신이 학습하고 수행한 결과 값은 집의 매매가로 나타나게 될 것이고 이를 실제 값과 비교해서 Cost(오차값)를 비교할 수 있습니다.


집은 사이즈가 커질 수록 매매가가 높아지기 때문에 연속적인 값으로 나타나게 됩니다. 이렇게 연속적인 결과 값으로 나오는 것을 Regression이라고 합니다. 



또는 집의 구조에 따라서 아파트인지 빌라인지 단독주택인지 구분이 되는데 이러한 값을 나타내는 것은 Classification이라고 합니다.


아래 그림은 강의에서 사용한 종양 크기에 대한 암환자 정보를 구분하는 내용입니다. 일정한 사이즈 이하인지 이상인지에 따라 악성종양인지 여부를 구분합니다. 이처럼 구분하여 나타내지는 값에 대한 분석을 Classification으로 처리하면 되는것입니다



어떠한 데이터들을 구분을 한다는 것은 어떤 기준이 필요하게 됩니다.

아래와 같은 데이터들은 선형의 기준선으로 인해 분류가 될 수 있습니다.

이렇게 잘 구분할 수 있는 선을 찾고 하는 것이 supervised에서 머신이 학습을 하여 찾아내는 결과가 됩니다.




두가지의 학습 방식은 다른 성향의 결과 값을 예측하고자 할 때 사용이 되므로 이 차이를 잘 이해해야 합니다.

머신러닝을 이용하여 무엇인가를 예측하고자 할때 적절하게 사용해야 하기 때문입니다.



Unsupervised Learning


자율학습이라고 표현되는 학습 방법입니다.

이것이 supervised와 다른 점은 우리가 답을 알고 있지 않는 상태에서 학습을 하는 경우라는 것입니다.

DataSet에 어떤 정보들이 있는지 우리는 알지 못하고 어떤 데이터로 구성이 되어 있는지도 알지 못할때 사용됩니다. 우리가 원하는 결과들은 비슷한 의미를 가진 데이터들이나 비슷한 주제로 구성된 데이터들을 분류하여 보고자 할 때 사용됩니다. 이를 clustering 혹은 grouping 이라고 표현됩니다.


예를들어, 우리의 물건을 구매한 고객 데이터를 분석한다고 생각해보면 됩니다. 연령대 별로 혹은 소비자의 소득수준으로 구분되어 판매량을 분석할 수 있을 것이고 전체 시장에서 우리 물건에 대한 시장 점유율과 같은 결과로 나타날 수도 있을 것입니다.


또는 비슷한 뉴스나 피드들을 grouping하여 사용자에게 보여주는 서비스도 가능할 것입니다. 같은 주제에 대한 다양한 정보들을 한눈에 볼 수 있어 편리할 겁니다.





또, 음성인식에서도 유용하게 활용이 될 수 있습니다.

사용자가 클럽같이 시끄러운 곳에서 오더를 할때 머신은 주위 사람들의 소리와 음악소리 같은 잡음들은 다 무시하고 사용자가 말하는 음성만 정확하게 인식이 되도록 할 수 있습니다.


아래와 같이 강의에서 분리된 음성을 직접 들려주시면서 이런 알고리즘을 실제 구현하면 저렇게 한줄로 표현이 될 수 있다고 이야기 하고 있습니다. 우리가 처음에 막연하게 생각 했던 것보다 쉬울 것 같지 않습니까?^^





댓글