CNTK v2.4 版本資訊
這版的重點
- 已移至 CUDA9、cuDNN 7 和 Visual Studio 2017。
- 已移除 Python 3.4 支援。
- 已新增Volta GPU 和 FP16 支援。
- 更好的 ONNX 支援。
- CPU 效能改善。
- 其他 OP。
老年 退休金 計畫
top_k
operation:在正向中,它會計算上方 (最大) k 值,以及沿著指定座標軸的對應索引。 在向後傳遞中,漸層會散佈到頂端 k 元素, (不在頂端 k 中的元素取得零漸層) 。
gather
作業現在支援座標軸引數
squeeze
和 expand_dims
作業,可輕鬆地移除和新增單一軸
zeros_like
和 ones_like
作業。 在許多情況下,您可以只依賴CNTK正確地廣播簡單的 0 或 1,但有時您需要實際的張量。
depth_to_space
:將輸入張量中的元素從深度維度重新排列為空間區塊。 此作業的一般用法是針對某些影像超解析度模型實作子圖元卷積。
space_to_depth
:將輸入張量中的元素從空間維度重新排列至深度維度。 它主要是 DepthToSpace 的反轉。
sum
operation:建立新的函式實例,以計算輸入張量的專案總和。
softsign
operation:建立新的函式實例,以計算輸入張量的專案虛線。
asinh
operation:建立新的函式實例,以計算輸入 Tensor 的專案方式。
log_softmax
作業:建立新的函式實例,以計算輸入張量的 logsoftmax 正規化值。
hard_sigmoid
operation:建立新的函式實例,以計算輸入張量hard_sigmoid正規化值。
element_and
、 element_not
、 element_or
、 element_xor
元素的邏輯作業
reduce_l1
作業:計算輸入張量專案沿著所提供座標軸的 L1 標準。
reduce_l2
operation:計算輸入 tensor 元素沿著所提供座標軸的 L2 標準。
reduce_sum_square
operation:計算輸入 tensor 元素沿著所提供座標軸的總和平方。
image_scaler
作業:藉由調整影像的個別值來改變影像。
ONNX
- CNTK中對 ONNX 支援進行了數個改善。
- 更新
- 已更新 ONNX
Reshape
op 來處理 InferredDimension
。
- 將 和
producer_version
欄位新增 producer_name
至 ONNX 模型。
- 在 ONNX
Conv
op 中未 auto_pad
指定或 pads
atrribute 時處理案例。
- 錯誤修正
- 已修正 ONNX
Pooling
op 序列化中的 Bug
- 修正錯誤以建立只有一個批次座標軸的 ONNX
InputVariable
。
- ONNX
Transpose
op 實作的錯誤修正和更新,以符合更新的規格。
- ONNX
Conv
、 ConvTranspose
和 作業實作的錯誤修正和 Pooling
更新,以符合更新的規格。
運算子
- 群組卷積
- 已修正群組卷積中的 Bug。 CNTK
Convolution
作業的輸出將會變更群組 > 1。 下一個版本預期會更優化的群組卷積實作。
- 針對圖層中的
Convolution
群組卷積進行更好的錯誤報表。
Halide 二元卷積
- CNTK組建現在可以使用選用的 Halide程式庫來建
Cntk.BinaryConvolution.so/dll
置可與模組搭配使用的連結 netopt
庫。 程式庫包含優化的二進位卷積運算子,其效能優於以 Python 為基礎的二進位卷積運算子。 若要在組建中啟用 Halide,請先下載 Halide 版本 並設定 HALIDE_PATH
環境 varibale,再開始建置。 在 Linux 中,您可以使用 ./configure --with-halide[=directory]
來啟用它。 如需如何使用這項功能的詳細資訊,請參閱 How_to_use_network_optimization。