你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
模型评估示例
有关在 C++、C#/.NET 和 Python 中使用 CNTK Eval 库的示例,请参阅 GitHub 的示例/评估文件夹,以及在 CNTK Releases 页上的 CNTK 二进制下载包中找到。
CNTK库 Eval C++/C# 示例
CNTKLibraryEvalExamples 包含代码示例,演示如何在 C++ 和 C# 中使用CNTK库 Eval API。
CNTKLibraryCSEvalCPUOnlyExamples 使用 CNTK 库CPU-Only NuGet包来评估 C# 中仅 CPU 设备上的模型。
CNTKLibraryCSEvalGPUExamples 使用 CNTK 库 GPU NuGet 包来评估 C# 中使用 Nvidia GPU 的设备上的模型。
CNTKLibraryCPPEvalCPUOnlyExamples 使用 CNTK 库 C++ API 来评估仅限 CPU 的设备上的模型。 它使用CNTK库CPU-Only NuGet包。
CNTKLibraryCPPEvalGPUExamples 使用 CNTK 库 C++ API 来评估具有 Nvidia GPU 的设备上的模型。 它使用 CNTK 库 GPU NuGet 包。
UWPImageRecognition 包含使用 CNTK UWP 库进行模型评估的示例。 它还演示如何通过 C++/CX 包装器在 C# 中使用库。
在 Windows 上,
- 需要使用 Visual Studio 2017 来使用这些示例。
- 应为 64 位目标平台生成示例。 否则,调用库时会出现一些问题。 有关详细信息,请参阅“故障排除CNTK”页。
- 成功生成后,可执行文件将保存在 $ (SolutionDir) ....$ (Platform) $ (ProjectName) .$ (Configuration) \ 文件夹下,例如 ....\X64\CNTKLibraryCSEvalCPUOnlyExamples.Release\CNTKLibraryCSEvalCPUOnlyExamples.exe。
在 Linux 上,仅支持 C++ 。 请参阅 Makefile
生成示例。 目标名称CNTKLIBRARY_CPP_EVAL_EXAMPLES用于生成 CNTKLibraryCPPEvalExamples。
并行评估多个请求的示例
CNTKLibraryEvalExamples 包含用于并行评估多个评估请求的示例代码。 示例代码还演示如何在同一模型的多个实例之间共享模型参数,以减少内存使用量。
- C# 中的 EvaluateMultipleImagesInParallelAsync () 演示如何使用 CNTK C#/.NET 托管 API 评估并发请求。
- ParallelEvaluationExample () 是显示使用 CNTK C++ 库 API 进行并发评估的 C++ 示例。
用于评估中间层的示例
- C# 中的 EvaluateIntermediateLayer () 演示如何使用 CNTK C#/.NET 托管 API 评估模型中的中间层。
- EvaluateIntermediateLayer () 是 C++ 示例,演示如何使用 CNTK C++ 库 API 评估模型中的中间层。
评估来自多个节点的输出的示例
- C# 中的 EvaluateCombinedOutputs () 演示如何使用 CNTK C#/.NET 托管 API 评估多个输出。
- EvaluateCombinedOutputs () 是 C++ 示例,演示如何使用 CNTK C++ 库 API 评估多个输出。
异步运行评估的 C# 示例
EvaluationSingleImageAsync()
此示例演示如何使用扩展方法EvaluateAsync()
异步运行评估。
Python Eval 示例
还可以使用 Python 评估预先训练的模型,如 此处所述。
Java Eval 示例
Java 示例演示如何使用 Java API 评估模型。 请注意,Java API 仍处于实验性,可能会更改。
有关如何生成 Java 示例,请参阅 Windows 和 Linux 说明。
使用 EvalDLL 的旧版应用程序的示例
有关详细信息,请参阅 EvalDll-Examples 。