능동 학습이란? – 정의, 장점, 작동 방식, 인사이트
정의
능동 학습은 “준지도 학습(semi-supervised learning)”이라고도 불립니다. 완전 지도 학습은 모델에 라벨링 된 완전한 데이터셋을 제공하지만 준지도 능동 학습은 모든 데이터가 학습에 필요하거나 가치가 있는 것은 아니라는 가정하에 데이터셋의 라벨링 된 하위 집합만 모델에게 제공합니다. 능동 학습의 목적 중 하나는 인공지능 모델을 교육하기 위해, 데이터셋 외부의 데이터에 라벨링 하는 우선순위를 지정하는 것입니다. 기본적으로 AI 모델은 학습하려는 데이터를 사전에 선택하게 되죠.
장점
머신러닝(ML) 모델 교육의 핵심은 데이터입니다. 그러나 데이터는 성공적 인공지능(AI)을 가로막는 가장 큰 장벽 중 하나이기도 하죠. 고성능 인공지능 모델을 생성하려면 정확하게 라벨링 된 많은 데이터가 필요합니다. 따라서 과거 인공지능 관련 작업자들은 데이터셋에 수동으로 많은 양의 데이터를 라벨링 하는 방법을 사용했습니다. 하지만 최근에는 능동 학습과 같은 프로세스를 통해 부분적으로 라벨링을 자동화하여 데이터 라벨링 시간을 절약할 수 있게 됐습니다.
지도 학습과 비지도 학습
능동 학습을 이해하려면 먼저 지도 학습과 비지도 학습의 차이점을 알아야 합니다. 지도 학습은 먼저 머신에 올바르게 라벨링 된 데이터를 제공하고 이를 바탕으로 라벨링 되지 않은 데이터에 대한 정답을 예측하도록 학습시키는 방법입니다. 반면 비지도 학습은 인공지능 모델에 라벨링 되지 않고 구조화되지 않은 데이터를 제공합니다. 이때, 모델은 자체적으로 데이터의 패턴과 구조를 구별합니다. 지도 학습과 비지도 학습에는 각각의 장점이 있습니다. 오늘은 그중에서도 능동 학습이 속하는 지도 학습에 대해 자세히 다뤄보겠습니다.
작동 방식
능동 학습에는 일반적으로 세 가지 작동 방식이 있습니다. 그중 가장 인기 있는 방법인 풀 기반 샘플링(pool-based sampling)은 아래와 같은 5단계를 따릅니다.
- 작업자(이 프로세스에서는 오라클이라고 함)가 데이터셋의 작은 하위 집합에 라벨링하고 라벨링 된 데이터를 모델에 제공합니다.
- 능동 학습자로 알려진 인공지능 모델은 해당 데이터를 처리하고 지정된 신뢰 수준으로 라벨링 되지 않은 데이터 포인트의 클래스를 예측합니다.
- 초기 예측이 원하는 정확도와 신뢰 수준보다 낮다고 판단되면 샘플링 기술을 사용하여 라벨링 할 다음 데이터 하위 집합이 무엇인지 결정합니다.
- 작업자는 선택한 데이터 하위 집합에 라벨링하고 처리를 위해 모델로 다시 보냅니다.
- 이 프로세스는 모델의 예측이 필요한 신뢰도와 정확도가 일정 수준에 도달할 때까지 계속됩니다.
또 다른 능동 학습 시나리오는 스트림 기반 선택적 시나리오(stream-based selective scenario)로, 모델에 라벨링 되지 않은 데이터 포인트가 표시되고 해당 데이터 포인트에 라벨링 여부를 즉시 결정해야 합니다. 능동 학습에 대한 세 번째 접근 방식인 멤버십 쿼리 합성 시나리오(membership query synthesis scenario)에서 모델은 라벨링을 위한 자체 예제를 구성합니다.
샘플링 방법
쿼리 전략이라고도 하는 샘플링 방법은 성공적인 능동 학습에 매우 중요합니다. 잘못된 샘플링 방법은 부정확한 모델 예측으로 이어지고 능동 학습 사이클을 통해 더 많은 문제가 발생하기 때문이죠. 가장 일반적인 두 가지 샘플링 방법은 불확실성 샘플링(Uncertainty Sampling)과 Query by Committee입니다. 불확실성 샘플링은 모델이 가장 확실하지 않은 라벨링을 위해 데이터 포인트의 우선순위를 지정합니다. 이 유형의 샘플링에는 다음과 같은 3가지 기술이 적용됩니다.
- 신뢰도: 알고리즘은 가장 낮은 신뢰도에서 가장 높은 신뢰도로 예측을 정렬합니다. 신뢰도가 가장 낮은 항목이 라벨링을 위해 선택됩니다.
- 마진: 각 데이터 포인트에 대해 알고리즘은 가장 높은 확률 클래스 예측을 두 번째로 높은 확률 클래스 예측과 비교합니다. 모델이 어떤 클래스에 속하는지 확실하지 않기 때문에 마진이 가장 좁은 데이터 포인트가 라벨링 우선순위로 지정됩니다.
- 엔트로피: 머신은 방정식을 사용하여 클래스 예측에서 엔트로피라고도 하는 가장 높은 불확실성을 가진 데이터 포인트를 결정합니다. 이러한 데이터 포인트는 라벨링을 위해 우선순위가 지정됩니다.
Query by Committee 전략은 같은 데이터셋에서 훈련된 여러 모델을 사용하여 라벨링 할 추가 데이터 포인트를 집합적으로 결정합니다. 인공지능 모델에서 가장 큰 불일치가 있는 곳은 라벨링을 위해 선택된 데이터 포인트입니다. 그 외에 널리 사용되는 샘플링 방법에는 예상 영향과 밀도 가중이 포함되지만, 위에서 설명한 것보다 활용도가 낮을 수 있습니다. 결과적으로 샘플링 방법은 모델이 표준 성능에 얼마나 빨리 도달하는지를 결정하는 중요한 요소입니다. 하지만 모든 사용 사례에 적합한 단일 방법은 없으므로 최적의 성능에 도달하기 위해서 다양한 방법을 실험해야 할 수도 있습니다.
능동 학습이 필요한 이유
완전 지도 학습(fully supervised learning)의 경우와 같이 전체 데이터셋에 수동으로 라벨링 하면 큰 비용과 시간이 많이 소요됩니다. 따라서 비용과 시간을 줄이기 위해 준지도 학습이나 비지도 학습 머신러닝 접근 방식을 택하는 사례가 많아지고 있죠. 능동 학습은 특히 다음과 같은 상황에서 효과적으로 사용됩니다.
- AI 솔루션의 빠른 시장 출시가 필요하며 수동 데이터 라벨링의 위험도가 높은 경우
- 모든 데이터에 수동으로 라벨링을 위한 데이터 사이언티스트나 SME 고용 비용이 부담스러운 경우
- 수동 데이터 라벨링 작업자 수가 충분하지 않은 경우
- 라벨링 되지 않은 대규모 데이터 풀을 갖고 있는 경우
능동 학습은 기존의 지도 학습에 비해 비용 효율적이고 빠를 수 있지만 작동 모델에 도달하는 데 필요한 컴퓨팅 비용과 반복 작업에 대한 문제를 고려해야 합니다. 능동 학습이 적절하게 수행되면 기존의 제품과 같은 수준의 품질과 정확도를 달성할 수 있습니다. 하지만 선택한 샘플링 방법이 전체적으로 능동 학습의 효과를 만들거나 깨뜨릴 수 있으므로 데이터 사이언스 팀에서 능동 학습에 관한 기술 전문 지식을 보유하는 것이 중요합니다. 필요에 따라서는 데이터 파트너와 같은 외부 업체와 협업을 할 수도 있습니다. 데이터 파트너는 효율적인 능동 학습 파이프라인을 만드는 데 도움을 줄 수 있습니다.
전망
능동 학습은 완전 지도 학습에 대한 실행 가능한 대안으로 보이며 매우 큰 데이터셋 작업에 적합합니다. 능동 학습과 같은 기술을 통해 데이터 사이언스 팀은 더 스마트하고 빠르게 라벨링 할 수 있습니다. 데이터가 AI의 기초가 되는 동시에 잘 처리되지 않으면 오히려 걸림돌이 되기도 합니다. 이에 따라 능동 학습이 제공하는 효율성이 더욱 강조되고 있죠. 많은 데이터 연구자들은 능동 학습을 최적화 및 일반화하기 위해 이전 방법을 개선하는 능동 학습 샘플링 방법을 설계하기 위해 열심히 노력하고 있습니다. 특정 데이터셋이 능동 학습 접근 방식에서 이점을 얻을 수 있는가 등에 관한 추가 연구가 필요하지만, 능동 학습 주기는 적절하게 수행된 작업자 참여형 프로세스의 좋은 예시임이 분명합니다.
인사이트
딥 러닝은 고차원 데이터에 대한 학습 능력이 강하고 자동 특징 추출이 가능합니다. 능동 학습은 머신러닝 개발 속도를 효율적으로 개선하고 새로운 사용 사례를 사용할 수 있는 엄청난 잠재력을 가지고 있습니다. 따라서 능동 학습에 대한 효과적인 접근 방식은 DL과 AL을 결합하여 애플리케이션 잠재력을 확장하는 것입니다. 이 결합한 접근법은 상호 보완적인 장점을 고려하여 제안됩니다. 실제로 적절한 활성 학습 알고리즘을 딥 러닝 모델과 결합하면 라벨링이 적은 데이터가 필요할 뿐만 아니라 모델 성능도 향상됩니다.
능동 학습을 활용하기 전에 딥 러닝 알고리즘과 마찬가지로 AL도 튜닝이 필요하다는 점을 고려해야 합니다. 능동 학습은 주로 동적 샘플링에 관한 것이며, 이 샘플링에 대한 많은 전략(자신감, 건망증 등을 고려하는)이 있습니다. 여기에서 핵심은 선택 프로세스 자체가 기계 학습 문제로 간주할 수 있으며 반드시 하드 코딩되거나 미리 정해진 규칙을 따라서는 안 된다는 것입니다. 머신러닝 모델이 쉽게 과대적합될 수 있다는 사실 때문에 자체적인 어려움이 있습니다.
능동 학습의 성공을 위해서는 라벨링하는 데이터의 양을 최적화하는 것도 중요하지만 해당 접근 방식에 필요한 계산의 양도 고려돼야 합니다. 일반적으로 라벨링 수와 계산 비용 사이에는 절충이 있으며, 실제로는 라벨링 하는 시간과 비용이 비합리적일 때만 능동 학습 접근 방식을 사용하는 것이 좋습니다. 비지도 학습과 자가 학습 방식도 마찬가지입니다. 일반적으로 ML 제품은 단순히 머신러닝 모델을 구축하는 것이 아닙니다. ML 모델은 생산 환경에서 배포와 버전 관리 및 유지가 전부 관리돼야 합니다. 능동 학습도 같은 방식을 따릅니다. 따라서 적절한 능동 학습 알고리즘에는 머신러닝 사이언티스트 외에도 머신러닝 엔지니어가 포함됩니다.
능동 학습 영역에서 초보자가 공통으로 두려워하는 것 중 하나는 데이터 편향 가능성입니다. 따라서 초기 샘플 세트, 즉 잘못 라벨링 된 데이터가 원인일 수 있습니다. 저희 에펜에서는 휴먼 인 더 루프(Human-in-Loop) 프로세스를 활용하여 섬세하게 데이터 라벨링을 작업하고 능동 학습 프로세스의 일부로써 머신 러닝 모델을 교육하는 데 사용되는 문제가 있는 데이터를 식별하여 편향되지 않은 모델을 지원합니다. 이를 통해 더 효과적인 능동 학습 과정을 제공합니다. 능동 학습을 위한 단일 알고리즘이나 접근 방식은 없습니다. 다만 신뢰할 수 있는 견고하고 효율적인 라벨링이 필요하죠. 데이터 라벨링은 제대로 조정 및 개발돼야 하며 적절한 엔지니어링 프로세스와 버전 관리 및 모니터링 시스템이 필요합니다.
에펜의 스마트 라벨링
에펜은 효율적인 데이터 어노테이션 프로세스를 통해 비용과 시간을 절약해드립니다. 저희의 데이터 어노테이션 플랫폼은 머신러닝 프로젝트를 위해 라벨링 된 고품질 교육 데이터 생성을 지원합니다. 에펜의 스마트 라벨링 툴은 아래와 같은 장점을 갖고 있습니다.
- 전처리 작업: ML이 데이터 라벨링에 대한 초기 가설을 제공합니다.
- 빠른 속도: ML이 작업자가 데이터 라벨링을 빠르고 정확하게 결정할 수 있도록 도와줍니다.
- 스마트 유효성 검사기: ML 모델이 제출하기 전에 작업자의 라벨링을 재확인합니다.
에펜의 스마트 라벨링 도구를 사용하면 데이터 품질이나 모델 성능을 손상하지 않고도 프로젝트를 더 빨리 완료할 수 있습니다. 에펜의 데이터 라벨링 서비스가 더 궁금하시다면 아래 문의하기를 통해 연락주세요!
머신러닝 프로젝트 지원이 필요하신가요? ML 전문가가 답변해 드립니다.