이 가이드에서는 Azure Custom Vision 서비스를 사용하여 음식 이미지를 분류하도록 신경망 모델을 학습시키는 방법을 보여 줍니다. 모델을 ONNX 형식으로 내보냅니다. Windows 장치에서 로컬로 실행되는 Windows ML(Windows Machine Learning) 응용 프로그램에 모델을 배포합니다. 기계 학습에 대한 사전 전문 지식이 필요하지 않습니다! 프로세스를 단계별로 안내해 드리겠습니다.
Custom Vision을 사용하여 모델을 빌드하고 학습시키는 방법을 알아보려면 모델 학습을 진행할 수 있습니다.
모델이 있고 Windows ML 앱을 처음부터 만드는 방법을 알아보려면 전체 Windows ML 앱 자습서를 참조하세요.
Windows ML 앱용 기존 Visual Studio 프로젝트로 시작하려는 경우 Custom Vision 및 Windows ML 자습서 샘플 앱을 복제하고 시작점으로 사용할 수 있습니다.
시나리오
이 자습서에서는 Windows 디바이스에서 실행되는 기계 학습 식품 분류 애플리케이션을 만듭니다. 모델은 음식 이미지를 분류하기 위해 특정 유형의 패턴을 인식하도록 학습되며, 이미지가 주어지면 분류 태그와 해당 분류의 관련 백분율 신뢰도 값을 반환합니다.
모델 학습을 위한 필수 구성 요소
모델을 빌드하고 학습시키려면 Azure Custom Vision 서비스에 대한 구독이 필요합니다.
Azure를 처음 사용하는 경우 Azure 체험 계정에 등록할 수 있습니다. 이를 통해 Azure AI를 사용하여 기계 학습 모델을 빌드, 학습 및 배포할 수 있습니다.
팁 (조언)
Azure 등록 옵션 및 Azure 체험 계정에 대해 자세히 알고 싶으신가요? 그런 다음, Azure 계정 만들기를 확인하세요.
Windows ML 앱 배포를 위한 필수 구성 요소
Windows ML 앱을 만들고 배포하려면 다음이 필요합니다.
- Windows 10, 1809 버전(빌드 17763) 이상.
winver
명령(Windows 로고 키 + R)을 통해 실행 하여 빌드 버전 번호를 확인할 수 있습니다. - 빌드 17763 이상용 Windows SDK. 다운로드하려면 Windows SDK를 참조하세요.
- Visual Studio 2017 버전 15.7 이상; 그러나 Visual Studio 2022 이상을 사용하는 것이 좋습니다. 이 자습서의 일부 스크린샷은 표시되는 UI와 다를 수 있습니다. Visual Studio를 다운로드하려면 Windows 개발용 다운로드 및 도구를 참조하세요.
- Windows ML 코드 생성기 ()
mlgen
Visual Studio 확장. Visual Studio 2019 이상 또는 Visual Studio 2017용으로 다운로드하세요. - UWP(유니버설 Windows 플랫폼) 앱을 만들기로 결정한 경우 Visual Studio에서 유니버설 Windows 플랫폼 개발 워크로드를 사용하도록 설정해야 합니다.
- PC에서 개발자 모드 사용 - 개발을 위해 장치 사용을 참조하세요.
비고
Windows ML API는 최신 버전의 Windows 10(1809 이상) 및 Windows Server 2019에 기본 제공됩니다. 대상 플랫폼이 이전 버전의 Windows인 경우 Windows ML 앱을 재배포 가능한 NuGet 패키지(Windows 8.1 이상)로 이식할 수 있습니다.
데이터 준비
기계 학습 모델은 기존 데이터로 학습되어야 합니다. 이 가이드에서는 Kaggle Open Datasets의 음식 이미지 데이터 세트를 사용합니다. 해당 데이터 세트는 공개 도메인 라이선스에 따라 배포됩니다.
중요합니다
이 데이터 세트를 사용하려면 Kaggle 사이트 사용 약관과 데이터 세트 자체에 수반되는 라이선스 조건을 준수해야 합니다 Food-11
. Microsoft는 사이트 또는 이 데이터 세트에 대한 보증 또는 표현을 하지 않습니다.
이 데이터 세트에는 평가, 교육 및 검증의 세 가지 분할이 있으며 11개의 주요 식품 범주로 그룹화된 16,643개의 식품 이미지가 포함되어 있습니다. 각 음식 범주의 데이터 세트에 있는 이미지는 별도의 폴더에 배치되어 모델 학습 프로세스를 보다 편리하게 만듭니다.
Food-11 이미지 데이터 세트에서 데이터 세트를 다운로드합니다. 데이터 세트의 크기는 약 1GB이며, 데이터를 다운로드하려면 Kaggle 웹 사이트에서 계정을 만들라는 메시지가 표시될 수 있습니다.
원하는 경우 관련 이미지의 다른 데이터 세트를 사용할 수 있습니다. 최소한 초기 학습 세트에서 태그당 최소 30개의 이미지를 사용하는 것이 좋습니다. 또한 학습된 모델을 테스트하기 위해 몇 가지 추가 이미지를 수집하고 싶을 것입니다.
또한 모든 학습 이미지가 다음 기준을 충족하는지 확인합니다.
-
.jpg
,.png
,.bmp
또는.gif
format입니다. - 크기가 6MB 이하(예측 이미지의 경우 4MB)를 넘지 않아야 합니다.
- 가장 짧은 가장자리에서 256픽셀 이상; 이보다 짧은 이미지는 Custom Vision Service에 의해 자동으로 확장됩니다.
다음 단계
이제 필수 구성 요소를 정렬하고 데이터 세트를 준비했으므로 Windows ML 모델 만들기를 진행할 수 있습니다. 다음 부분(Custom Vision을 사용하여 모델 학습)에서는 웹 기반 Custom Vision 인터페이스를 사용하여 분류 모델을 만들고 학습시킵니다.