다음을 통해 공유


EvalDLL 평가 개요

EvalDLL 라이브러리는 CNTK model-v1 형식으로 저장된 미리 학습된 CNTK 모델을 평가하는 메서드를 제공합니다. C++(Windows 및 Linux의 경우) 및 C#(Windows만 해당)에서 사용할 수 있습니다.

다양한 데이터 형식 및 계층 평가

현재 Eval 라이브러리는 입력 및 출력에 대한 벡터를 지원합니다. 즉, 입력 벡터는 모델의 입력 노드(기능)와 일치해야 합니다. 일부 모델은 이미지(예: CIFAR-10)를 사용하여 학습되지만 이러한 이미지는 먼저 벡터화된 다음 네트워크에 공급됩니다. 예를 들어 CIFAR-10 데이터 세트는 작은 이미지(32픽셀 x 32픽셀) 또는 RGB 값으로 구성됩니다. 각각은 3차원 좌표(너비, 높이, 색)이지만 데이터는 1차원 벡터로 벡터화됩니다. 따라서 평가 전에 원시 데이터를 벡터 형식으로 변환하는 것이 중요합니다. 이 변환은 학습을 위해 네트워크에 공급할 때와 동일한 방식으로 수행해야 합니다 .

특히 이미지를 처리할 때 자세한 내용은 이미지 변환 평가 페이지를 참조하세요.

이미 학습된 모델에는 특정 출력 노드 집합이 있지만 평가 중에 다른 노드의 값(예: 숨겨진 계층)을 가져오는 것이 바람직한 경우가 있습니다. 프로그래밍 인터페이스를 사용할 수 있습니다. 자세한 내용은 숨겨진 계층 평가 페이지를 참조하세요.

현재 제한 사항

  • 단일 스레드 평가. CNTK 평가 EvalDll 라이브러리 및 관리되는 EvalWrapper 라이브러리는 단일 스레드 및 단일 재입력입니다. 단일 모델 인스턴스의 동시 평가는 지원되지 않습니다. 그러나 모델의 여러 인스턴스를 로드하고 단일 스레드로 각 모델을 평가할 수 있습니다. 이렇게 하면 여러 모델을 병렬로 평가할 수 있지만 각 모델은 단일 스레드로 평가됩니다.
  • CNTK 이진 패키지의 미리 빌드된 평가 라이브러리(Cntk.EvalCntk.Eval.Wrapper Windows 및 libCntk.Eval Linux의 DLL)를 연결하는 모든 프로그램은 미리 빌드된 라이브러리를 빌드하는 데 사용되는 것과 동일한 컴파일러 버전을 사용해야 합니다.