[general] 1. 지도학습, 비지도학습, 자기지도 학습, 강화학습(Supervised, Un-Supervised, Self-Supervised, Reinforcement Learning)

2021. 7. 11. 14:25Machine Learning/General

728x90

머신러닝 방법을 통해 만든 모델들은 크게 세 가지로 분류할 수 있습니다.

첫 번째는 지도 학습(Supervised learning) 모델입니다. 지도 학습 모델은 훈련용 데이터(Train dataset)와 정답 레이블이 같이 주어져서 각 데이터에 해당하는 정답을 학습할 수 있도록 모델을 구성하는 방법입니다. 우리가 생각할 수 있는 일반적인 머신러닝 모델이 지도 학습모델이라고 할 수 있습니다. 예를 들어, 스팸메일 분류, 의료영상에서의 양, 악성 판단, 거래기록으로부터의 이상 거래 탐지 등을 판단하는 모델에서 쓰일 수 있습니다.

지도 학습모델은 모델의 결과와 비교할 수 있는 정답 레이블이 주어지기 때문에, 비교적 높은 성능의 모델을 만들 수 있는 장점이 있습니다. 하지만, 정답 레이블을 만드는 것은 사람이 직접 수행해야 하는 일이기 때문에, 정답 레이블을 만드는 것은 굉장한 비용이 드는 행위 일 수 있습니다. 따라서, 정답 레이블의 제공은 비용적인 측면에서 단점이 될 수도 있습니다.   

두 번째는 비지도 학습(Un-Supervised learning) 모델입니다. 비지도 학습 모델은 훈련용 데이터는 주어지지만, 정답 레이블은 주어지지 않은 채 학습을 수행하는 모델입니다. 비지도 학습 모델은 특성을 추출하거나, 비슷한 데이터 묶는 군집 방법으로 널리 쓰이고 있습니다. 특성을 추출하는 방법의 예시로는 높은 차원의 데이터로부터 주성분을 추출하여 보다 낮은 차원에서 데이터를 분석하는 PCA 방법이나, 높은 차원의 데이터 간의 거리를 낮은 차원에서도 유지할 수 있도록 변환을 수행하는 t-SNE방법이 있습니다.

최근 비지도 학습 모델 중 자기 지도 학습(Self-Supervised learning) 모델이 지도 학습모델을 대체할 모델로 주목받고 있습니다. 지도 학습 모델은 만들기 위해 비용이 많이 들 수 있는 정답 레이블을 제공해야 하는 단점이 있었는데, 자기 지도 학습에서는 데이터로부터 레이블을 직접 학습하기 때문에, 비용을 절약하여 학습할 수 있습니다. 자기 지도 학습의 예시로는 데이터 증강(Data Augmentation)을 해도 같은 특징을 학습할 것이라는 전제하에 모델을 학습하도록 만든 SimCLR모델이 있습니다. 

 세 번째는 강화 학습(Reinforcement learning) 모델입니다. 강화 학습은 어떤 환경 안에서 정의된 에이전트가 현재의 상태를 인식하여 선택 가능한 행동들 중 보상을 최대화하는 행동을 선택하도록 모델을 학습하는 방법입니다. 예를 들어서, 자율주행 운전 차량은 부딪히지 않도록 설계하는 것이 중요한데, 부딪히지 않았을 때, 보상을 주도록 설계를 하면, 부딪히지 않는 알고리즘을 학습할 수 있을 것입니다.


개인적인 생각으로 앞으로 자기 지도 학습 방법들이 더 많이 주목받게 될 것 같습니다. 인터넷이나 SNS에서 구할 수 있는 이미지, 음성 등의 데이터들은 대부분 정답 레이블이 존재하지 않는 데이터들입니다. 이 데이터들로부터 특징을 추출하여 정답 레이블을 만들 수 있다면, 지금보다 훨씬 더 많은 데이터들을 모델을 만들기 위해 활용할 수 있을 것입니다. 마지막으로 Facebook AI Research(FAIR)의 Chief AI Scientist인 Yann Lecun 교수님이 2016년 NIPS conference에서 하셨던 말을 인용하여 글을 마치겠습니다.

"If intelligence is a cake, the bulk of the cake is unsupervised learning, the icing on the cake is supervised learning, and the cherry on the cake is reinforcement learning (RL)"