你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
CNTK v2.4 发行说明
此版本的亮点
- 移动到 CUDA9、cuDNN 7 和 Visual Studio 2017。
- 删除了 Python 3.4 支持。
- 添加了 Volta GPU 和 FP16 支持。
- 更好的 ONNX 支持。
- CPU 性能改进。
- 更多 OP。
老年 退休金 计划
top_k
操作:在正向传递中,它将计算沿指定轴的最大 (最大) k 值和相应的索引。 在向后传递中,渐变散到顶部 k 元素 (不在顶部 k 中的元素获取零渐变) 。gather
操作现在支持轴参数squeeze
用于expand_dims
轻松删除和添加单一实例轴的操作zeros_like
和ones_like
操作。 在许多情况下,只需依赖CNTK正确广播简单的 0 或 1,但有时需要实际张量。depth_to_space
:将输入张量中的元素从深度维度重新排列为空间块。 此操作的典型用途是实现某些图像超分辨率模型的子像素卷积。space_to_depth
:将输入张量中的元素从空间维度重新排列到深度维度。 它主要是 DepthToSpace 的反函数。sum
操作:创建一个新的函数实例,该实例计算输入张量元素的按元素计算的总和。softsign
操作:创建一个新的函数实例,用于计算输入张量元素的软对齐。asinh
操作:创建一个新的函数实例,用于计算输入张量元素的按元素表示。log_softmax
操作:创建新的函数实例,用于计算输入张量的 logsoftmax 规范化值。hard_sigmoid
操作:创建新的函数实例,用于计算输入张量hard_sigmoid规范化值。element_and
、、element_not
element_or
element_xor
、元素型逻辑操作reduce_l1
操作:计算输入张量元素沿提供的轴的 L1 规范。reduce_l2
操作:计算输入张量元素沿提供的轴的 L2 规范。reduce_sum_square
操作:计算输入张量元素沿提供的轴的总和平方。image_scaler
操作:通过缩放图像的各个值来更改图像。
ONNX
- CNTK中对 ONNX 支持进行了多项改进。
- 更新
- 更新了 ONNX
Reshape
操作以处理InferredDimension
。 - 将字段
producer_version
添加到producer_name
ONNX 模型。 - 在 ONNX
Conv
op 中未auto_pad
指定 atrribute 时pads
处理事例。
- 更新了 ONNX
- Bug 修复
- 修复了 ONNX
Pooling
操作序列化中的 bug - Bug 修复,仅创建一个批处理轴的 ONNX
InputVariable
。 - 用于实现 ONNX
Transpose
操作的 Bug 修复和更新,以匹配更新的规格。 - 对 ONNX
Conv
ConvTranspose
实现的 Bug 修复和更新,以及Pooling
与更新规范匹配的操作。
- 修复了 ONNX
运算符
- 组卷积
- 修复了组卷积中的 bug。 CNTK
Convolution
操作的输出将更改组 > 1。 在下一个版本中,预计组卷积的更优化实现。 - 针对层中的
Convolution
组卷积进行更好的错误报告。
- 修复了组卷积中的 bug。 CNTK
Halide Binary Convolution
- CNTK生成现在可以使用可选的 Halide 库来生成
Cntk.BinaryConvolution.so/dll
可与模块一起使用的netopt
库。 该库包含优化的二元卷积运算符,这些运算符的性能优于基于 Python 的二进制卷积运算符。 若要在生成中启用 Halide,请在开始生成之前下载 Halide 版本 并设置HALIDE_PATH
环境 varibale。 在 Linux 中,可用于./configure --with-halide[=directory]
启用它。 有关如何使用此功能的详细信息,请参阅 How_to_use_network_optimization。