Exemples d’évaluation de modèle
Vous trouverez des exemples d’utilisation de la bibliothèque Eval CNTK en C++, C#/.NET et Python dans le dossier Examples/Evaluation dans GitHub, ainsi que dans le package de téléchargement binaire CNTK sur la page CNTK Versions.
CNTK bibliothèque Eval C++/C# Exemples
CNTKLibraryEvalExamples contient des exemples de code illustrant comment utiliser l’API Eval de bibliothèque CNTK en C++ et C#.
CNTKLibraryCSEvalCPUOnlyExamples utilise le package CNTK Library CPU-Only NuGet pour évaluer les modèles sur les appareils uc uniquement en C#.
CNTKLibraryCSEvalGPUExamples utilise le package NuGet GPU de la bibliothèque de CNTK pour évaluer les modèles sur les appareils avec GPU Nvidia en C#.
CNTKLibraryCPPEvalCPUOnlyExamples utilise l’API C++ de la bibliothèque CNTK pour évaluer les modèles sur les appareils uc uniquement. Il utilise le package CPU-Only NuGet bibliothèque CNTK.
CNTKLibraryCPPEvalGPUExamples utilise l’API C++ bibliothèque CNTK pour évaluer les modèles sur les appareils avec GPU Nvidia. Il utilise le package de NuGet gpu CNTK bibliothèque de CNTK.
UWPImageRecognition contient un exemple utilisant CNTK bibliothèque UWP pour l’évaluation du modèle. Il montre également comment utiliser la bibliothèque en C# via un wrapper C++/CX.
Sur Windows,
- Vous devez Visual Studio 2017 pour utiliser ces exemples.
- Les exemples doivent être générés pour la plateforme cible 64 bits. Sinon, certains problèmes surviennent lors de l’appel de la bibliothèque. Pour plus d’informations, reportez-vous également à la page Résoudre les problèmes de CNTK.
- Après une génération réussie, l’exécutable est enregistré sous le dossier $(SolutionDir)....$(Platform)$(ProjectName).$$(Configuration)\, par exemple ....\X64\CNTKLibraryCSEvalCPUOnlyExamples.Release\CNTKLibraryCSEvalCPUOnlyExamples.exe.
Sur Linux, seul C++ est pris en charge. Reportez-vous aux Makefile
exemples de construction. Le nom cible CNTKLIBRARY_CPP_EVAL_EXAMPLES est utilisé pour générer CNTKLibraryCPPEvalExamples.
Exemples d’évaluation de plusieurs requêtes en parallèle
CNTKLibraryEvalExamples inclut un exemple de code pour évaluer plusieurs demandes d’évaluation en parallèle. L’exemple de code montre également comment partager des paramètres de modèle entre plusieurs instances du même modèle afin de réduire l’utilisation de la mémoire.
- EvaluateMultipleImagesInParallelAsync() en C# montre comment évaluer les requêtes simultanées à l’aide d’CNTK API managée C#/.NET.
- ParallelEvaluationExample() est l’exemple C++ montrant une évaluation simultanée à l’aide de CNTK’API bibliothèque C++.
Exemples d’évaluation des couches intermédiaires
- EvaluateIntermediateLayer() en C# montre comment évaluer des couches intermédiaires dans un modèle à l’aide d’CNTK API managée C#/.NET.
- EvaluateIntermediateLayer() est l’exemple C++ montrant comment évaluer des couches intermédiaires dans un modèle à l’aide de CNTK’API bibliothèque C++.
Exemples d’évaluation des sorties de plusieurs nœuds
- EvaluateCombinedOutputs() en C# montre comment évaluer plusieurs sorties à l’aide de CNTK’API managée C#/.NET.
- EvaluateCombinedOutputs() est l’exemple C++ montrant comment évaluer plusieurs sorties à l’aide de l’API de bibliothèque C++ CNTK.
Exemples C# pour l’exécution asynchrone de l’évaluation
L’exemple EvaluationSingleImageAsync()
montre comment exécuter l’évaluation de manière asynchrone à l’aide de la méthode EvaluateAsync()
d’extension.
Exemples Python Eval
Vous pouvez également utiliser Python pour évaluer un modèle préentraîné comme décrit ici.
Exemples Java Eval
L’exemple Java montre comment évaluer un modèle à l’aide de l’API Java. Notez que l’API Java est toujours expérimentale et susceptible de changer.
Reportez-vous aux instructions Windows et Linux pour savoir comment générer l’exemple Java.
Exemples d’applications héritées utilisant EvalDLL
Pour plus d’informations, reportez-vous à EvalDll-Examples .