-
Notifications
You must be signed in to change notification settings - Fork 4.3k
CNTK Eval Examples
Zhou Wang edited this page Nov 18, 2016
·
20 revisions
The CNTK binary download package also includes samples for using the eval library in C++, C# and Python. To download this package please see the CNTK Releases page.
Under the Examples\Evaluation folder there are some code samples demonstrating how to use the CNTK EvalDLL in C++ and C#.
-
CPPEvalClient
: this sample uses the C++ EvalDLL. -
CPPEvalExtendedClient
: this sample uses the C++ extended Eval interface in EvalDLL to evalute a RNN model. -
CSEvalClient
: this sample uses the C# EvalDLL (only for Windows). It uses the CNTK Evaluation Nuget Package. -
CPPEvalV2Client
: this sample uses the C++ CNTK-Library to evaluate a model. The sample also shows how to evaluate multiple requests in parallel and to share model parameters among threads.
On Windows, The solution file EvalClients.sln is used to build and run samples. Please note
- You need Visual Studio 2013 update 5 for using these samples.
- The samples should be built for the 64-bit target platform and with the release configuration. Otherwise some issues arise when calling the library. Please also refer to the Troubleshoot CNTK page for more information.
- The required libs (EvalDll.lib or CNTKLibrary-2.0.lib) should be located in $(SolutionDir)..\..\cntk for building.
- After a successful build, the executable is
saved under the
$(SolutionDir)..\..$ (Platform)$(ProjectName).$(Configuration)\ folder, e.g. ..\..\X64\CPPEvalClient.Release\CppEvalClient.exe. - In order to run the program, the directory containing dlls (EvalDll.dll or CNTKLibrary-2.0.dll) and other dependent dlls, usually the $(SolutionDir)..\..\cntk, should be included in the search path of dlls for your application, e.g. as a part of the PATH environment variable.
On Linux, please refer to Makefile for building samples. The target name EVAL_CLIENT, EVAL_EXTENDED_CLIENT, and EVALV2_SAMPLE_CLIENT are used to build these projects.
You can also use Python to evaluate a pre-trained model as described here.