MediaPipe Model Maker는 데이터 및 애플리케이션에서 작동하도록 기존 머신러닝 (ML) 모델을 맞춤설정하는 도구입니다. 새로운 ML 모델을 빌드하고 학습시키는 것보다 빠른 대안으로 이 도구를 사용할 수 있습니다. Model Maker는 기존 모델을 새 데이터로 재학습시키는 전이 학습이라는 ML 학습 기법을 사용합니다. 이 기법은 기존 모델 로직의 상당 부분을 재사용합니다. 즉, 새 모델을 학습시키는 것보다 학습에 소요되는 시간이 적고 더 적은 데이터로 수행할 수 있습니다.
Model Maker는 객체 감지, 동작 인식 또는 이미지, 텍스트, 오디오 데이터에 대한 분류 기준을 비롯한 다양한 유형의 모델에서 작동합니다. 이 도구는 데이터를 특정 카테고리로 분류하는 모델의 마지막 몇 개 레이어를 삭제하여 모델을 다시 학습시키고, 제공된 새 데이터를 사용하여 해당 레이어를 다시 빌드합니다. Model Maker는 정확성과 성능을 개선하기 위해 모델 레이어를 미세 조정하는 옵션도 지원합니다.
그림 1. Model Maker가 기존 모델의 최종 레이어를 삭제하고 새 데이터로 다시 빌드합니다.
특히 새 모델이 더 적은 수의 항목을 인식하도록 재학습시키는 경우 Model Maker를 사용하여 모델을 재학습시키면 일반적으로 모델의 크기가 작아집니다. 즉, Model Maker를 사용하여 애플리케이션에 더 잘 맞는 보다 집중된 모델을 만들 수 있습니다. 또한 이 도구는 양자화와 같은 ML 기법을 적용하여 모델이 리소스를 덜 사용하고 더 효율적으로 실행되도록 도와줍니다.
학습 데이터 요구사항
Model Maker를 사용하면 새 모델을 학습시킬 때보다 훨씬 적은 양의 데이터로 모델을 재학습시킬 수 있습니다. 새 데이터로 모델을 재학습시킬 때는 학습된 클래스마다 약 100개의 데이터 샘플을 확보하는 것을 목표로 해야 합니다. 예를 들어 고양이, 개, 앵무새를 인식하도록 이미지 분류 모델을 재학습하는 경우 고양이 이미지 100개, 개 이미지 100개, 앵무새 이미지 100개가 있어야 합니다. 애플리케이션에 따라 카테고리당 데이터가 더 적은 유용한 모델을 다시 학습시킬 수 있지만 데이터 세트가 클수록 일반적으로 모델의 정확성이 향상됩니다. 학습 데이터 세트를 만들 때 재학습 프로세스 중에 학습 데이터가 일반적으로 학습용 80%, 테스트용 10%, 검증용 나머지로 분할됩니다.
맞춤설정의 한계
재학습 프로세스는 이전 분류 계층을 삭제하므로 결과 모델은 새 데이터에 제공된 항목 또는 클래스만 인식할 수 있습니다. 이전 모델이 30개의 서로 다른 항목 클래스를 인식하도록 학습된 경우 Model Maker를 사용하여 10개의 서로 다른 항목에 대한 데이터로 재학습하면 결과 모델은 새 항목 10개만 인식할 수 있습니다.
Model Maker를 사용하여 모델을 재학습시켜도 원래 ML 모델이 해결하려고 빌드한 작업은 유사하더라도 변경할 수 없습니다. 예를 들어 이미지 분류 모델이 객체 감지를 수행하도록 하는 데는 이 도구를 사용할 수 없습니다. 하지만 이러한 작업은 어느 정도의 유사성이 있습니다.
사용해 보기
이미지 분류와 같은 MediaPipe 솔루션용 솔루션 맞춤설정 튜토리얼 중 하나를 실행하여 MediaPipe Model Maker를 사용할 수 있습니다.