你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
使用 cntk.exe CNTK 评估
使用 cntk.exe 评估模型
使用CNTK可执行文件本身(即cntk.exe)评估模型类似于训练过程。 但是,“eval”命令未使用“train”命令,而是放置在配置文件中。
使用CNTK可执行文件进行评估具有以下优势:
CPU/GPU 功能
与训练一样,CNTK可以在评估期间利用 GPU。 有关更多详细信息,请参阅 “配置文件概述 ”页。
读者 (及其转换)
与模型训练类似,读取器插件 (例如 ImageReader) 在训练期间将输入数据馈送给网络之前,可能会对输入数据执行一些数据转换。 这些转换不是每个) CNTK (的一部分,而是读者的一部分。 为了在评估期间馈送相同的 转换 数据,转换需要在馈送之前发生。 使用 CNTK 可执行文件进行评估时,可以使用计算) 中使用的同一读取器 (,因此可以应用相同的转换。 如本页稍后将介绍的那样,在使用编程方法时,在提交评估 (的数据之前,需要在评估引擎外部以编程方式执行这些转换,前提是模型已使用转换的数据) 训练模型。
模型调整
使用CNTK进行评估时,可以使用 BrainScript 修改模型的布局。 这可实现其他功能,例如公开隐藏层进行评估。 有关详细信息,请参阅 BrainScript 页。
使用CNTK可执行文件进行评估具有以下缺点:
进程启动时间
CNTK可执行文件 (本质上) 作为进程运行,因此需要一些时间来启动。 对于需要动态处理许多请求的服务,更好的选择是在服务中使用评估库。
基于文件的输入/输出
CNTK可执行文件从文件 () 读取输入数据,并将输出数据写入文件。 对于在云中运行的服务,这可能会导致一些性能问题。
注意:如果确实使用CNTK可执行文件评估CNTK模型,请确保参数足以用于评估。 特别是为 MiniBatchSize 指定适当的大小。 有关详细信息,请参阅“故障排除CNTK”页。