지난 회까지 컴퓨터나 기계가 스스로 학습한다는 머신러닝에서 학습은 분류, 회귀, 군집화하거나 또 다른 방법으로 주어진 데이터를 이해하고 미지의 데이터에 대해 예측하는 것이라고 설명했다. 또 기존의 통계학을 기반으로 1990년대부터 활발하게 활용된 다양한 머신러닝 알고리즘과 1990년대 새로 개발돼 머신러닝의 전성기를 열어준 다양한 알고리즘도 알아봤다. 이렇게 많은 학습 알고리즘들이 등장하다보니, 알고리즘이 데이터를 학습하는 특징에 따라 머신러닝의 종류를 구분하는 방법도 생겨났다.
분류나, 회귀 그리고 군집화 알고리즘 등으로 나누는 것도 한 방법이지만, 현재 가장 대표적인 분류 방법은 지도 학습, 비지도 학습, 준지도 학습 그리고 강화 학습 등 네가지 범주로 나누는 것이다. 학습 데이터에 대한 설명 즉, 라벨(Label)의 유무에 따라 지도 학습, 비지도 학습 그리고 준지도 학습으로 구분하고, 명시적인 데이터가 없더라도 프로그램의 결정에 따른 피드백에 따라 학습하는 것을 강화 학습이라고 간단히 설명할 수 있다.
지도 학습(Supervised Learning)과 대비되는 비지도 학습(Unsupervised Learning)이라는 용어를 누가 언제 처음 사용했는지는 여러 의견이 있지만, 특정 개인이나 그룹이 만들었다기보다 머신러닝 연구가 진행되며 자연스럽게 자리 잡은 것으로 보는 것이 타당하다.
명시적으로 지도 학습이라는 용어가 사용되지 않았지만, 1958년 공개된 프랭크 로젠블래트의 퍼셉트론(Perceptron)이나 1960년에 공개된 버나드 위드로우의 ADALINE 같은 초기 신경망들은 지도 학습의 모습을 갖추고 있었다. 또 1975년 후쿠시마 쿠니히코는 코그니트론(Cognitron)를 설명하기 위해 “교사 없이 학습하는(learning without a teacher) 자체 조직화”라고 밝혀, 비지도 학습을 적용했다고 밝혔다. 이처럼 용어가 널리 사용되기 오래전부터 지도 학습과 비지도 학습의 개념은 존재했다.
지도 학습은 학습하는 데이터로 라벨이 포함된 데이터를 사용해 머신러닝 모델을 훈련하고, 훈련을 통해 정답 값을 알지 못하는 새로운 입력에 대해서 어느 정답 값과 가장 비슷한 것인지 판단하는 것이다. 라벨은 개개 데이터에 대한 정답 값을 의미한다.
예를 들어, 동물 종류를 구분하는 학습을 할 때 데이터에 해당하는 각 이미지는 그 동물의 정답 값인 동물의 종류 즉, 개나 고양이 등의 정보가 라벨로 지정된 데이터를 사용한다. 학습을 마친 모델을 바탕으로 머신러닝은 새로운 입력 데이터에 대해 그것이 개인지 고양이인지 사슴인지 동물의 종류인 정답을 예측한다.
따라서 지도 학습의 중요한 점은 라벨이 포함된 데이터를 충분히 보유해야 한다는 것이다. ‘충분히’라는 의미는 데이터가 많을수록, 학습 모델을 정교하게 할 수 있고 더 나은 결과를 가져올 수 있다는 것이다.
그러나 모든 학습 데이터로 라벨을 붙은 것을 확보하기는 현실적으로 불가능하고, 만일 가능하다면 굳이 머신러닝 기법을 사용할 필요가 없을 경우도 있다. 이 점이 지도 학습의 단점이다. 현실 데이터들은 대부분이 라벨이 붙어 있지 않아, 대용량 데이터에 일일이 라벨을 붙여줘야 하므로 데이터 준비에 많은 시간이 소요된다.
이를 해결하기 위해서 많은 사람의 힘을 빌리는 크라우드 소싱(Crowd Sourcing)을 이용하기도 하고, 데이터에 라벨을 자동으로 붙이는 방법(Auto Labeling)을 고안하기도 한다. 하지만, 어느 방법이나 시간이 오래 걸리거나 막대한 컴퓨터 자원이 필요하면서도, 완벽한 학습 데이터를 구축하기에는 미흡할 수 있다.
앞서 설명한 나이브 베이즈나 로지스틱 회귀와 같이 주로 공통 라벨로 데이터 집합을 나누는 분류 알고리즘이나 선형 회귀 분석같이 데이터에서 연속적인 패턴을 찾는 회귀 알고리즘들은 대부분 지도 학습에 해당한다. 또 k-NN, SVM, 랜덤 포레스트, 의사결정나무와 앙상블 기법과 같이 분류와 회귀를 모두 수행할 수 있는 알고리즘도 지도 학습에 해당한다.
비지도 학습은 학습할 때 사용하는 데이터에 라벨이 포함되지 않은 데이터를 사용한다. AI가 스스로 데이터의 특징을 추출하고 비슷한 것끼리 그룹화하는 것이다. 그래서, 새로운 데이터가 입력되면 학습한 내용을 바탕으로 어느 그룹에 속하는지 분류를 해줄 뿐이다.
예를 들어, 동물 사진으로 종류를 구분하는 학습을 할 때 사진에는 정답 값인 개, 고양이 등의 정보가 포함되지 않았기 때문에 비슷한 종류의 동물 사진끼리 그룹으로 분류를 할 수 있다. 물론, 그 사진이 어떤 동물인지는 알 수 없다.
이렇게 비지도 학습에서 가장 일반적인 접근법은 라벨이 붙지 않은 데이터의 특성 패턴이나 구조를 찾아내, 유사성 개념에 기초해 데이터를 몇 그룹으로 분류하고 유사한 항목의 그룹에 데이터를 포함하는 ‘클러스터링(Clustering, 군집화)’이다. 이 과정은 보통 추측으로 시작해 알고리즘 연산을 반복, 더 나은 결과를 만들어 낸다. 데이터를 정량적으로 분석할 때, 대상 데이터 간의 분포 거리, 밀도, 벡터값 등 다양한 방법으로 유사성을 찾는다. 비지도 학습 알고리즘으로 클러스터링, k-평균 클러스터링, DBSCAN, 차원 축소 등이 있다.
클러스터링의 대표적인 사례는 고객 세분화다. 대부분 유사한 특성을 가진 그룹이 관심과 선호도를 공유할 가능성이 크기 때문이다. 그래서 소셜미디어에서 데이터를 추출하고 타깃 고객의 동향을 찾는 정서 분석에도 이런 클러스터링을 사용하기도 한다.
클러스터링 외에 빈출 패턴을 찾아 상관관계를 분석하는, 즉 ‘X이면 Y가 일어날 가능성이 있다’는 개념으로 추천 엔진에 많이 사용되는 연관성 분석, 데이터 집합에서 특이치 또는 비정상 패턴을 식별하는 방식으로 공장 설비 등의 예지보전, 사이버 보안 분야에서 많이 사용되는 비정상 탐지 등도 비지도 학습의 한 방법이다. 실제 세상은 사물에 라벨이 붙어 있지 않고 동물이나 사람도 기본적으로는 비지도 방식으로 학습을 하므로 머신러닝 분야에서 비지도 학습이 점점 더 중요해질 것으로 보인다.
준지도 학습(Semi-Supervised Learning)이라는 것도 있는데, 지도 학습과 비지도 학습의 혼합으로 데이터 중 일부가 라벨을 포함하는 경우이다. 머신러닝의 성능을 높이려고 하지만, 라벨링 여력이 모자랄 때 일부 데이터에만 라벨을 붙이는 방법이다. 즉, 소량의 라벨링 데이터는 지도 학습을 통하고, 나머지 대부분 데이터는 비지도 학습을 적용해서 전체적인 머신러닝의 성능 향상을 목표로 한다.
라벨링되지 않은 대량 데이터에 어떤 비지도 학습 알고리즘을 적용할 것인지에 따라 준지도 학습도 다양한 방법론이 존재한다. 대표 활용 사례로 MRI 분석을 들 수 있다. 전문의가 모든 MRI 데이터를 분석해서 라벨링하는 것은 시간이나 비용상 쉽지 않다. 그래서 방사선 기사나 전문의가 먼저 스캔한 MRI 데이터에 라벨을 붙이고, 나머지 MRI 데이터는 비지도 학습으로 라벨링한 데이터와 군집화하거나, 딥러닝으로 패턴을 찾는 경우에 적용할 수 있다.
한편, 지도 학습이나 비지도 학습에서는 데이터에서 특징을 추출해야 하는데, 이에 대한 트레이드오프(Trade off)도 고려해야 한다. 더 많은 특징을 포함할수록 학습 모델은 정교해지지만, 학습 시간은 오래 걸린다. 또 학습 속도를 개선하기 위해 추출하는 특징의 수를 줄이는 과정에서 실수로 중요 특징을 빼버리면, 학습 결과가 편향되거나 잘못 구성될 수 있다.
구글 포토의 흑인 분류 소동, 마이크로소프트의 챗봇 '테이'의 부적절한 발언 그리고 국내 챗봇 '이루다' 소동 등이 데이터나 학습 알고리즘 편향에 기인한 대표적인 사례들이다.
문병성 싸이텍 이사 moonux@gmail.com
- [AI의 역사] 57 1990년대에 개발된 머신러닝 알고리즘들 – 머신러닝 전성시대(하)
- [AI의 역사] 56 기존 이론이 발전해 온 머신러닝 알고리즘들 – 머신러닝 전성시대(중)
- [AI의 역사] 55 통계학적 접근의 머신러닝이 발전한 배경 – 머신러닝 전성시대 (상)
- [AI의 역사] 59 보상과 처벌을 통해 학습하는 강화학습의 발전 과정 - 머신러닝의 분류 (하)
- [AI의 역사] 60 AI의 겨울인가 아닌가? – 세기말 전후의 AI 연구
- [AI의 역사] 61 AI 노벨상을 비난한 위대한 이방인의 불만 – 쉬미트후버와 순환 신경망의 개발
