2019.09.02

"학습 데이터양을 1/40로", 머신러닝 '준지도학습'의 이해

Martin Heller | InfoWorld
지난 2017년 아마존의 CEO 제프 베조스는 주주에 보낸 서한을 통해 아마존의 음성 인공지능 어시스턴트인 알렉사(Alexa)에 대해 몇 가지 흥미로운 사실을 다음과 같이 언급했다.

"우리는 지난 2년간 미국과 영국, 독일에서 알렉사의 사용자 음성 인식을 25% 이상 개선했다. 준지도학습(semi-supervised learning) 기술을 이용해 알렉사의 머신러닝 관련 요소를 강화하는 방법을 사용했다. 준지도학습 기술 덕분에 같은 정확성을 구현하는 데 필요한 '분류된 데이터' 양을 40배 가까이 줄일 수 있었다"
 
ⓒ Getty Images Bank

그렇다면 준지도학습이란 무엇일까? 장단점은 무엇이고 이를 어떻게 활용할 수 있을까? 준지도학습이란, 용어에서 떠올릴 수 있는 것처럼 지도학습과 비지도학습의 중간에 위치한다. 지도학습은 정답(목푯값)이 태그된 데이터를 학습하는 것으로 시작한다. 이런 학습 과정을 거치면 가중치가 부여된 모델이 나오고 이 모델을 통해 태그되지 않는 비슷한 데이터가 입력됐을 때 답변을 예측하게 된다.

준지도학습은 태그된 데이터와 태그되지 않은 데이터를 모두 활용한다. 일반적인 경우 태그되지 않은 데이터는 오히려 모델의 정확성을 떨어뜨릴 수 있지만, 알렉사는 태그되지 않은 데이터를 추가해 오히려 모델의 정확도를 개선했다. 데이터에 태그를 하는 작업은 많은 시간과 비용이 들지만 항상 그런 것은 아니다. 즉, 많은 데이터를 갖고 있고 이 중 일부만 태그가 돼 있다면 준지도학습을 한번 테스트해볼 만 하다.

준지도학습 알고리즘이 처음 등장한 것은 15년도 더 됐다. 2005년 위스콘신대의 제리 주가 발표한 연구 결과가 큰 이정표가 됐다. 이후 오류율을 줄여주는 것이 확인됐고 최근 들어서는 아마존뿐만 아니라 많은 기업이 준지도학습을 활용하고 있다.

준지도학습의 방식도 다양하다. 딥마인드(DeepMind)의 세바스찬 루더는 2018년 4월 블로그에 프록시 라벨을 만드는 것에 대한 준지도학습 알고리즘 관련 글을 게재했다. 여기에는 자가학습(self-training), 멀티뷰학습(multi-view learning), 셀프인셈블링(ensembling) 등에 대한 내용도 포함됐다.

자가학습은 라벨된 데이터 셋을 추가하는데 라벨되지 않은 데이터에 대한 모델의 자체 예측을 이용한다. 기본적으로 사용자가 예측의 신뢰성을 결정하는 기준점을 설정하는데, 보통 0.5 혹은 그 이상이다. 이보다 높으면 예측을 신뢰하고 이를 라벨된 데이터 셋에 추가한다는 의미다. 이러한 학습 작업은 신뢰할 수 있는 예측이 없을 때까지 계속해서 반복한다. 자가학습은 반쯤 성공했다는 평가를 받고 있다. 가장 큰 단점은 자체 실수를 교정할 수 없다는 것이다. 신뢰도가 높은 것으로 보이지만 잘못된 예측, 즉 아웃라이어(outlier) 하나가 전체 모델을 오염시킬 수도 있다.

멀티뷰 학습은 데이터의 여러 측면에서 여러 모델을 학습한다. 여기에는 다른 기능 셋, 다른 모델 아키텍처 또는 다른 데이터 서브 셋이 포함될 수 있다. 멀티뷰 학습 알고리즘은 매우 다양하지만 가장 널리 알려진 것이 트라이 학습(tri-training)이다. 트라이 학습은 기본적으로 3개의 모델을 만든다. 2개 모델이 데이터 라벨에 합의할 때마다 이 라벨이 세 번째 모델에 추가된다. 자가 학습처럼 더는 새로 추가할 라벨이 없을 때 작동을 멈춘다.

셀프인셈블링은 일반적으로 여러 다양한 설정의 단일 모델을 사용한다. 사다리형 회로망(ladder network) 모델에서 잘 정제된 사례에 대한 예측은 임의의 불안정한 사례에 대한 프록시 라벨로 쓰인다. 이를 방식으로 노이즈를 견딜 수 있는 기능을 개발한다. 제리 주의 2007 튜토리얼 역시 다양한 다른 알고리즘을 소개한다. 여기에는 각 클래스에 대해 가우시안 분산을 가정하는 것 등 여러 생성 모델들이 포함된다. 준지도 지원 벡터 머신이나 그래프 기반 알고리즘도 있다.

한편 클라우드 기반의 준지도학습은 주류 머신러닝 서비스로 더디게 진입하고 있다. 예를 들어 아마존 세이지메이커 그라운드 트루(SageMaker Ground Truth)는 이미지 셋에 대한 수작업 라벨링과 경계 설정에 아마존 메카니컬 터크(Mechanical Turk)를 이용한다. 나머지 이미지 셋에 라벨을 부여하는 데는 신경망 학습을 활용한다. 준지도학습과 비슷한 스키마는 자연어 처리, 분류, 여러 서비스에 대한 회귀 분석 등 다른 준지도학습에 사용할 수 있다. 단, 대부분의 경우 준지도학습을 위한 코드를 별도로 작성해야 한다. ciokr@idg.co.kr
 


2019.09.02

"학습 데이터양을 1/40로", 머신러닝 '준지도학습'의 이해

Martin Heller | InfoWorld
지난 2017년 아마존의 CEO 제프 베조스는 주주에 보낸 서한을 통해 아마존의 음성 인공지능 어시스턴트인 알렉사(Alexa)에 대해 몇 가지 흥미로운 사실을 다음과 같이 언급했다.

"우리는 지난 2년간 미국과 영국, 독일에서 알렉사의 사용자 음성 인식을 25% 이상 개선했다. 준지도학습(semi-supervised learning) 기술을 이용해 알렉사의 머신러닝 관련 요소를 강화하는 방법을 사용했다. 준지도학습 기술 덕분에 같은 정확성을 구현하는 데 필요한 '분류된 데이터' 양을 40배 가까이 줄일 수 있었다"
 
ⓒ Getty Images Bank

그렇다면 준지도학습이란 무엇일까? 장단점은 무엇이고 이를 어떻게 활용할 수 있을까? 준지도학습이란, 용어에서 떠올릴 수 있는 것처럼 지도학습과 비지도학습의 중간에 위치한다. 지도학습은 정답(목푯값)이 태그된 데이터를 학습하는 것으로 시작한다. 이런 학습 과정을 거치면 가중치가 부여된 모델이 나오고 이 모델을 통해 태그되지 않는 비슷한 데이터가 입력됐을 때 답변을 예측하게 된다.

준지도학습은 태그된 데이터와 태그되지 않은 데이터를 모두 활용한다. 일반적인 경우 태그되지 않은 데이터는 오히려 모델의 정확성을 떨어뜨릴 수 있지만, 알렉사는 태그되지 않은 데이터를 추가해 오히려 모델의 정확도를 개선했다. 데이터에 태그를 하는 작업은 많은 시간과 비용이 들지만 항상 그런 것은 아니다. 즉, 많은 데이터를 갖고 있고 이 중 일부만 태그가 돼 있다면 준지도학습을 한번 테스트해볼 만 하다.

준지도학습 알고리즘이 처음 등장한 것은 15년도 더 됐다. 2005년 위스콘신대의 제리 주가 발표한 연구 결과가 큰 이정표가 됐다. 이후 오류율을 줄여주는 것이 확인됐고 최근 들어서는 아마존뿐만 아니라 많은 기업이 준지도학습을 활용하고 있다.

준지도학습의 방식도 다양하다. 딥마인드(DeepMind)의 세바스찬 루더는 2018년 4월 블로그에 프록시 라벨을 만드는 것에 대한 준지도학습 알고리즘 관련 글을 게재했다. 여기에는 자가학습(self-training), 멀티뷰학습(multi-view learning), 셀프인셈블링(ensembling) 등에 대한 내용도 포함됐다.

자가학습은 라벨된 데이터 셋을 추가하는데 라벨되지 않은 데이터에 대한 모델의 자체 예측을 이용한다. 기본적으로 사용자가 예측의 신뢰성을 결정하는 기준점을 설정하는데, 보통 0.5 혹은 그 이상이다. 이보다 높으면 예측을 신뢰하고 이를 라벨된 데이터 셋에 추가한다는 의미다. 이러한 학습 작업은 신뢰할 수 있는 예측이 없을 때까지 계속해서 반복한다. 자가학습은 반쯤 성공했다는 평가를 받고 있다. 가장 큰 단점은 자체 실수를 교정할 수 없다는 것이다. 신뢰도가 높은 것으로 보이지만 잘못된 예측, 즉 아웃라이어(outlier) 하나가 전체 모델을 오염시킬 수도 있다.

멀티뷰 학습은 데이터의 여러 측면에서 여러 모델을 학습한다. 여기에는 다른 기능 셋, 다른 모델 아키텍처 또는 다른 데이터 서브 셋이 포함될 수 있다. 멀티뷰 학습 알고리즘은 매우 다양하지만 가장 널리 알려진 것이 트라이 학습(tri-training)이다. 트라이 학습은 기본적으로 3개의 모델을 만든다. 2개 모델이 데이터 라벨에 합의할 때마다 이 라벨이 세 번째 모델에 추가된다. 자가 학습처럼 더는 새로 추가할 라벨이 없을 때 작동을 멈춘다.

셀프인셈블링은 일반적으로 여러 다양한 설정의 단일 모델을 사용한다. 사다리형 회로망(ladder network) 모델에서 잘 정제된 사례에 대한 예측은 임의의 불안정한 사례에 대한 프록시 라벨로 쓰인다. 이를 방식으로 노이즈를 견딜 수 있는 기능을 개발한다. 제리 주의 2007 튜토리얼 역시 다양한 다른 알고리즘을 소개한다. 여기에는 각 클래스에 대해 가우시안 분산을 가정하는 것 등 여러 생성 모델들이 포함된다. 준지도 지원 벡터 머신이나 그래프 기반 알고리즘도 있다.

한편 클라우드 기반의 준지도학습은 주류 머신러닝 서비스로 더디게 진입하고 있다. 예를 들어 아마존 세이지메이커 그라운드 트루(SageMaker Ground Truth)는 이미지 셋에 대한 수작업 라벨링과 경계 설정에 아마존 메카니컬 터크(Mechanical Turk)를 이용한다. 나머지 이미지 셋에 라벨을 부여하는 데는 신경망 학습을 활용한다. 준지도학습과 비슷한 스키마는 자연어 처리, 분류, 여러 서비스에 대한 회귀 분석 등 다른 준지도학습에 사용할 수 있다. 단, 대부분의 경우 준지도학습을 위한 코드를 별도로 작성해야 한다. ciokr@idg.co.kr
 


X