最新OpenVINO 2021發(fā)行版介紹
英特爾分發(fā)版OpenVINO 2021工具套件發(fā)布說明
OpenVINO工具套件介紹
英特爾分發(fā)版OpenVINO工具套件用于解決計算機視覺、語音識別、自然語言處理以及推薦系統(tǒng)等應用方案的快速部署。基于最新的人工神經(jīng)網(wǎng)絡,包括卷積神經(jīng)網(wǎng)絡、序列神經(jīng)網(wǎng)絡和基于注意力機制的網(wǎng)絡等,該套件在跨英特爾硬件平臺上支持計算機視覺和非視覺負載,并支持從邊緣到云的高性能AI和深度學習推理。
下載地址 |
https://software.intel.com/content/www/cn/zh/develop/tools/openvino-toolkit/download.html?cid=other&source=eepw_web-res_ceds&campid=prc_q2_iotg_ov-da&content=web-reg_all
主要特性:
1. 支持從邊緣到云的深度學習推理。
2. 使用通用API,支持跨英特爾各類加速器的異構執(zhí)行,包括英特爾CPU、英特爾集成圖形處理器、英特爾高斯和神經(jīng)網(wǎng)絡加速器、英特爾第二代神經(jīng)網(wǎng)絡計算棒和基于英特爾Movidius視覺處理單元的英特爾視覺加速器設計。
3. 通過易于使用的CV函數(shù)庫和預優(yōu)化的計算核心,加快上市時間。
4. 包含對標準CV的優(yōu)化調(diào)用,以及OpenCV和OpenCL。
第1版中的更新和更改
要點綜述
2020年10月推出的一個主要版本(2021版)。建議您升級到此版本,因為它引入了一些新的重要功能,以及不兼容的更改。
對TensorFlow 2.2.x的支持。正式支持在 TensorFlow 2.2.x 框架中訓練的模型。
支持最新硬件。正式支持用于物聯(lián)網(wǎng)應用的第11代英特爾酷睿處理器家族(之前代號為 Tiger Lake),可通過新的英特爾Iris Xe圖形處理器和英特爾 DL Boost 指令集獲得推理性能的增強,以及通過第二代英特爾高斯和神經(jīng)網(wǎng)絡加速器獲得低功耗語音處理的加速。
不止是計算機視覺。針對計算機視覺之外的負載,比如音頻、語音、語言和推薦,通過OpenVINO工具套件也實現(xiàn)了端到端部署。為此提供了新的預訓練模型、公開模型的支持、代碼示例和演示以及對非視覺DL Streamer的支持。
深度學習工作臺DL Workbench與Intel DevCloud for the Edge的集成(Beta版)將在2020年第4季度發(fā)布。開發(fā)人員現(xiàn)在可以使用圖形化的方式來分析模型。您可以通過Intel DevCloud for the Edge平臺上(而不是在本地開發(fā)機上)的深度學習工作臺DL Workbench對同一應用方案的多種遠程硬件配置進行比較、可視化和性能微調(diào)等分析。
OpenVINO模型服務器。作為OpenVINO工具套件的一個附加組件,它是一個可擴展的微服務,提供了用于推理的gRPC或HTTP/REST端口,從而使在云服務器或邊緣服務器環(huán)境中部署模型變得更容易。它現(xiàn)在是用C++實現(xiàn)的,以減少容器資源占用(例如,小于500 MB),并提供更高的吞吐量和更低的延遲。
現(xiàn)在也支持Gitee和PyPI渠道下載。建議從適合您的分發(fā)方法中選擇并下載。
與2020.4版相比,不兼容的更改
棄用API列表和API更改。(見原英文版介紹)
自2020.3版本以來,IRv7已經(jīng)棄用,并且當前版本也不再支持,建議遷移到最高版本IRv10。IRv10提供了流線型同時也是面向未來的操作集,兼容通用的框架,并且對量化模型的運行提供更好的低精度表示,同時也支持可變形(reshape)的模型。
移除了Inference Engine NNBuilder API。
移除了一些Inference Engine公共API。(見原英文版介紹)
從2020.2版本開始,之前所有通過nGraph實現(xiàn)的功能都已經(jīng)合并到了OpenVINO工具套件。因此之前的ONNX RT Execution Provider for nGraph也已經(jīng)合并到了ONNX RT Execution Provider for OpenVINO,所以ONNX RT Execution Provider for nGraph 從2020年6月1日起就被棄用了并且會在2020年12月1日移除。建議遷移到ONNX RT Exectuion Provider for OpenVINO,它將作為所有英特爾硬件上AI推理的統(tǒng)一方案。
棄用或移除了一些nGraph公共API。(見原英文版介紹)
更新了nGraph公共API的結構。
更新了系統(tǒng)需求。
為提高基于FPGA的深度學習方案的定制化水平,英特爾將轉移到下一代可編程深度學習方案。作為這個計劃的一部分,以后的非LTS標準發(fā)布將不再支持Intel Vision Accelerator Design with Intel Arria 10和Intel Programmable Acceleration Card with Intel Arria 10 GX FPGA。不過在LTS版本中還將繼續(xù)支持。關于下一代基于FGPA可編程深度學習方案的問題,可咨詢您的銷售代表或聯(lián)系我們。
模型優(yōu)化器
公共更改
實現(xiàn)了一些優(yōu)化轉換,將操作的子圖替換為HSwish、Mish、Swish和SoftPlus操作。
模型優(yōu)化器生成的IR中會默認保持子圖的形狀計算。
使用推理引擎的可變形API修復了模型優(yōu)化器生成不能改變形狀的模型中間表示的轉換問題。
實現(xiàn)了原始網(wǎng)絡中不可變形模式的變換。
增加了TensorFlow 2.x的依賴信息。
用ScatterNDUpate 4替換了SparseToDense操作。
ONNX
增加了使用“–output”命令行參數(shù)指定模型輸出張量名稱的功能。
添加了對以下操作的支持:
o Acosh
o Asinh
o Atanh
o DepthToSpace-11, 13
o DequantizeLinear-10 (zero_point must be constant)
o HardSigmoid-1,6
o QuantizeLinear-10 (zero_point must be constant)
o ReduceL1-11, 13
o ReduceL2-11, 13
o Resize-11, 13 (except mode="nearest" with 5D+ input, mode="tf_crop_and_resize", and attributes exclude_outside and extrapolation_value with non-zero values)
o ScatterND-11, 13
o SpaceToDepth-11, 13
TensorFlow
添加了對以下操作的支持:
Acosh
Asinh
Atanh
CTCLoss
EuclideanNorm
ExtractImagePatches
FloorDiv
MXNet
添加了對以下操作的支持:
Acosh
Asinh
Atanh
Kaldi
修復了對ParallelComponent支持的Bug?,F(xiàn)在已經(jīng)完全支持了。
推理引擎
公共更改
遷移到了 Microsoft Studio C++(MSVC)2019 編譯器并將其作為 Windows 平臺的默認選項,這使得 OpenVINO 運行時庫的二進制大小減小了2.5倍。
將基于CPU的預處理操作(包含不同通道數(shù)圖片的大小調(diào)整、布局轉換和顏色空間轉換等)移植到AVX2和AVX512指令集。
推理引擎Python API
增加了nGraph Python API,提供了訪問nGraph Function的Python接口,方便對加載的網(wǎng)絡圖進行分析。支持設置網(wǎng)絡圖的節(jié)點參數(shù)。
支持使用Python API直接讀取ONNX模型。
推理引擎C API
CPU插件
添加了對新操作的支持:
ScatterUpdate-3
ScatterElementsUpdate-3
ScatterNDUpdate-4
Interpolate-4
CTC-Loss-4
Mish-4
HSwish-4
GPU插件
支持面向物聯(lián)網(wǎng)應用的第11代英特爾酷睿處理器家族(之前代號為Tiger Lake)。
支持 INT8 推理。這是英特爾DL Boost技術在英特爾集成圖形處理器上的優(yōu)化和應用。
支持新操作:
o Mish
o Swish
o SoftPlus
o HSwish1234
MYRIAD 插件
增加了對 ONNX下Faster R-CNN網(wǎng)絡 的支持,其具有固定的輸入形狀和動態(tài)的輸出形狀。
增加了用于實現(xiàn)自定義 OpenCL 層的自動 DMA 的支持。
增加了對新操作的支持:
o Mish
o Swish
o SoftPlus
o Gelu
o StridedSlice
o I32 data type support in Div
提升了已有操作的性能:
o ROIAlign
o Broadcast
o GEMM
為myriad_compile添加了一個新選項 VPU TILING_uCMX_ LIMIT_uKB,從而限制 DMA 傳輸大小。
提供了僅用于英特爾第二代神經(jīng)網(wǎng)絡計算棒中的SHAVE處理器的OpenCL編譯器。
HDDL 插件
支持用于自定義OpenCL層的自動DMA。
與MYRIAD插件中相同的新增操作和優(yōu)化。
提供了僅用于Intel Vision Accelerator Design with Intel Movidius VPUs中的SHAVE處理器的OpenCL編譯器。
GNA插件
支持面向物聯(lián)網(wǎng)應用的第11代英特爾酷睿處理器家族(之前代號為Tiger Lake)。增加了對多個新的網(wǎng)絡層以及層間融合的支持。
增加了從流中直接導入模型的支持。
在Windows上增加了對QoS機制的支持。在Python基準測試程序中增加了對GNA特定參數(shù)的支持。
nGraph
引入opset4。這個新的操作集包含了以下操作。注意并不是所有的OpenVINO插件都支持這些操作。
o Acosh-4
o Asinh-4
o Atanh-4
o CTCLoss-4
o HSwish-4
o Interpolate-4
o LSTMCell-4
o Mish-4
o Proposal-4
o Range-4
o ReduceL1-4
o ReduceL2-4
o ScattenNDUpdate-4
o SoftPlus-4
o Swish-4
增加了nGraph Python API,提供了訪問nGraph Function的Python接口,方便對加載的網(wǎng)絡圖進行分析。
重構了nGraph轉換API,使得它的結構更加透明并且使用起來更友好。
改變了nGraph文件夾的結構。nGraph公共API從其它代碼中分離了出來,并且ONNX導入器也移到了前端文件夾。
神經(jīng)網(wǎng)絡壓縮框架(NNCF)
發(fā)布了1.4版本的NNCF,主要面向PyTorch框架。
支持導出剪枝后的模型到ONNX。
增加了基于FP16數(shù)據(jù)類型的量化微調(diào)。
增加了通用壓縮算法中初始化環(huán)節(jié)的批量歸一化適配。
提升了基本通道量化的訓練性能。
增加了對Embedding和Conv1D權重的默認量化。
訓練后優(yōu)化工具(POT)
在精度敏感算法中增加了量化參數(shù)的自動調(diào)整。
加速了Honest偏差糾正算法。相比于在2020.4版本中使用use_fast_bias=false的情況,平均量化時間縮短了4倍。
POT API產(chǎn)品化,并提供了如何使用此API的示例和文檔。
默認量化策略對應于兼容模式,需要在不同硬件上得到幾乎一致的準確率。
覆蓋了44個新的模型。
深度學習工作臺
添加了對以下操作的支持:
- Acosh
- Asinh
- Atanh
- CTCLoss
- EuclideanNorm
- ExtractImagePatches
- FloorDiv
OpenCV
已將版本更新到4.5.0。
將上游許可證更改為 Apache 2。
在 OpenCV 應用程序中添加了對多個 OpenCL 上下文的支持。
Samples
更新了推理引擎C++示例演示如何直接加載ONNX模型。
Open Model Zoo
通過新增CNN預訓練模型和重新生成中間表示(xml+bin)擴展了Open Model Zoo:
o 替代了2020.4中的模型:
-face-detection-0200
-face-detection-0202
-face-detection-0204
-face-detection-0205
-face-detection-0206
-person-detection-0200
-person-detection-0201
-person-detection-0202
-person-reidentification-retail-0277
-person-reidentification-retail-0286
-person-reidentification-retail-0287
-person-reidentification-retail-0288
o 增加了新的模型:
-bert-large-uncased-whole-word-masking-squad-emb-0001
-bert-small-uncased-whole-word-masking-squad-0002
-formula-recognition-medium-scan-0001-im2latex-decoder
-formula-recognition-medium-scan-0001-im2latex-encoder
-horizontal-text-detection-0001
-machine-translation-nar-en-ru-0001
-machine-translation-nar-ru-en-0001
-person-attributes-recognition-crossroad-0234
-person-attributes-recognition-crossroad-0238
-person-vehicle-bike-detection-2000
-person-vehicle-bike-detection-2001
-person-vehicle-bike-detection-2002
-person-vehicle-bike-detection-crossroad-yolov3-1020
-vehicle-detection-0200
-vehicle-detection-0201
-vehicle-detection-0202
o 生命周期結束了的模型:
-face-detection-adas-binary-0001
-pedestrian-detection-adas-binary-0001
-vehicle-detection-adas-binary-0001
增加了新的演示程序:
o bert_question_answering_embedding_demo, Python
o formula_recognition_demo, Python
o machine_translation_demo, Python
o sound_classification_demo, Python
o speech_recognition_demo, Python
Open Model Zoo工具:
o 增加了模型下載速度。
o 在每個模型的文件夾下增加了精度檢查的配置文件。
o 簡化了精度檢查配置文件,不再需要給出模型IR的路徑、目標硬件以及數(shù)據(jù)精度等配置信息。
o 通過推理引擎預處理API使得精度檢查工具支持優(yōu)化的預處理操作。
o 不需要將ONNX模型轉成IR格式就可以在精度檢查工具中進行ONNX模型評估。
深度學習流管道分析器(DL Streamer)
通過增加對音頻分析的支持,擴大了DL Streamer的使用范圍,不止限于視頻。增加了一個新的gvaaudiodetect元素用于音頻事件的檢測(AclNet模型)。在示例文件夾下增加了一個這個管道的示例。
增加了一個新的gvametaaggregate元素用于整合來自一個管道不同分支上的結果。這樣就可以支持創(chuàng)建復雜的管道,比如將一個管道分拆成多個分支進行并行處理,然后整合結果。
實現(xiàn)了GPU內(nèi)存共享,即zero-copy,使得數(shù)據(jù)在VAAPI解碼、大小調(diào)整、CSC以及DL Streamer的各推理元素間可以更高效的共享,達到整體管道性能的提升。
在gvatrack和gvawatermark元素的輸入和輸出處增加GPU內(nèi)存,這樣在GPU進行推理的時候,就可以不用調(diào)用gvaapipostproc元素顯示地將數(shù)據(jù)從GPU內(nèi)存轉移到CPU內(nèi)存。
[預覽]擴展DL Streamer支持 Ubuntu 20.4。
更多信息請參考開源代碼庫。
OpenVINO模型服務器
模型服務器是一種可擴展且高性能工具,用以提供經(jīng)OpenVINO工具套件優(yōu)化后的模型。它提供的基于gRPC或HTTP/REST端口的推理服務,可以幫助您快速將模型產(chǎn)品化。
主要功能和提升:
o 提升了單服務器示例的擴展性。通過新的C++實現(xiàn),您可以以線性擴展的效果充分利用已有資源,避免前端的性能瓶頸。
o 降低客戶端和服務器之間的時延。
o 降低資源占用。通過切換到C++實現(xiàn)或減少依賴,Docker鏡像大小可以降低到450MB。
o 增加對線上模型進行更新的支持。服務檢測器的配置文件可以根據(jù)需要而不需要重啟服務就可以更改或重新加載模型。
更多信息請參考開源代碼庫。
評論