軟硬結(jié)合,CDS首云AI云服務(wù)的技術(shù)實(shí)踐
人工智能正在引領(lǐng)新一輪變革,最近幾年人工智能從科技行業(yè)開(kāi)始,快速滲透到各行各業(yè),我們的生活中已經(jīng)充滿(mǎn)了AI的氣息。當(dāng)前,全行業(yè)對(duì)人工智能技術(shù)的采用普遍使用云的方式落地,人工智能云服務(wù)AIaaS(AI as a Service)成為云服務(wù)商新的增長(zhǎng)點(diǎn)。人工智能的深度學(xué)習(xí)算法已經(jīng)比較成熟,如何提升效率成為關(guān)鍵。作為業(yè)界知名的云服務(wù)提供商,CDS首云軟硬結(jié)合的AI云服務(wù)技術(shù)探索給出了方向。
一、AI云化是明確趨勢(shì),
軟硬結(jié)合是關(guān)鍵
人工智能正在從技術(shù)探索轉(zhuǎn)為大規(guī)模應(yīng)用,人工智能已經(jīng)成為基礎(chǔ)設(shè)施,這就決定了AI云化是明確趨勢(shì)。
首先是用戶(hù)需求,對(duì)于企業(yè)來(lái)講,必須不斷增加競(jìng)爭(zhēng)力深化數(shù)字化轉(zhuǎn)型,人工智能成為必然的選擇,從而帶來(lái)大量需求。隨著對(duì)云的深度使用,企業(yè)希望人工智能能夠像云一樣易用,好用,并且按量計(jì)費(fèi)。
第二是云廠(chǎng)商的增長(zhǎng)點(diǎn),對(duì)于云廠(chǎng)商來(lái)講,增強(qiáng)人工智能能力,為企業(yè)賦能,是新的增長(zhǎng)點(diǎn),這也是為什么許多云廠(chǎng)商給名字加上“智能”的原因。
第三是人工智能涉及硬件、軟件,技術(shù)復(fù)雜,需要持續(xù)優(yōu)化,只有云廠(chǎng)商有這方面的資源和技術(shù)實(shí)力。
如同IaaS的底層是虛擬化技術(shù)一樣,AI云服務(wù)依賴(lài)深度神經(jīng)網(wǎng)絡(luò)的算法和軟硬結(jié)合的算力。算法的實(shí)現(xiàn)依賴(lài)于軟件,人工智能開(kāi)源軟件是趨勢(shì),而算力取決于軟硬結(jié)合的能力。
二、開(kāi)源、軟硬結(jié)合是AI技術(shù)趨勢(shì),
OpenVINO™二者兼具
人工智能技術(shù)方面,一方面開(kāi)源是主流,比如知名的TensorFlow、Caffe、MXNet、Kaldi等深度學(xué)習(xí)框架。另外一方面,算力非常重要,算力決定了人工智能應(yīng)用的速度。所以人工智能的效果取決軟硬結(jié)合。但是由于開(kāi)源框架很多,對(duì)于用戶(hù)來(lái)說(shuō),如果使用不同的深度學(xué)習(xí)框架,不同的硬件,需要一一進(jìn)行優(yōu)化,工作量繁重。
OpenVINO™工具套件的出現(xiàn),解決了這一問(wèn)題,OpenVINO™工具套件開(kāi)源,支持主流深度學(xué)習(xí)框架,支持英特爾架構(gòu)內(nèi)不同硬件,提供統(tǒng)一接口,兼具了開(kāi)源、軟硬結(jié)合的趨勢(shì)。
OpenVINO™工具套件介紹
OpenVINO™工具套件是英特爾基于自身現(xiàn)有的硬件平臺(tái)開(kāi)發(fā)的可以加快高性能計(jì)算和深度學(xué)習(xí)應(yīng)用開(kāi)發(fā)速度工具套件,是用于快速開(kāi)發(fā)應(yīng)用程序和解決方案,以解決各種任務(wù)(包括人類(lèi)視覺(jué)模擬、自動(dòng)語(yǔ)音識(shí)別、自然語(yǔ)言處理和推薦系統(tǒng)等)的綜合工具套件。
該工具套件基于最新一代的人工神經(jīng)網(wǎng)絡(luò),包括卷積神經(jīng)網(wǎng)絡(luò)(CNN)、遞歸網(wǎng)絡(luò)和基于注意力的網(wǎng)絡(luò),可擴(kuò)展跨英特爾硬件的計(jì)算機(jī)視覺(jué)和非視覺(jué)工作負(fù)載,從而最大限度地提高性能。它通過(guò)從邊緣到云部署的高性能、人工智能和深度學(xué)習(xí)推理來(lái)為應(yīng)用程序加速。
OpenVINO™工具套件優(yōu)勢(shì)
OpenVINO™ 工具套件的有四大優(yōu)勢(shì):
支持基于卷積神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)推理;
支持跨英特爾CPU、英特爾顯卡、英特爾神經(jīng)電腦棒和英特爾Movidius™視覺(jué)處理器運(yùn)行;
通過(guò)一套易用的計(jì)算機(jī)視覺(jué)功能庫(kù)和預(yù)優(yōu)化內(nèi)核庫(kù)來(lái)加速上市時(shí)間;
針對(duì)計(jì)算機(jī)視覺(jué)標(biāo)準(zhǔn)進(jìn)行優(yōu)化的調(diào)用,包括OpenCV*和OpenCL™。
下圖表顯示了典型的 OpenVINO™ 工作流程
圖 OpenVINO™ 工作流程
英特爾OpenVINO™工具套件發(fā)行版包含以下主要組件:
- 深度學(xué)習(xí)模型優(yōu)化器:跨平臺(tái)的命令行工具,用于導(dǎo)入模型并為推理引擎的優(yōu)化執(zhí)行準(zhǔn)備模型。模型優(yōu)化器會(huì)導(dǎo)入、轉(zhuǎn)換、優(yōu)化模型,這些模型在流行的框架中訓(xùn)練,比如Caffe、TensorFlow、MXNet、Kaldi和ONNX;
- 深度學(xué)習(xí)推理引擎:統(tǒng)一的API,可在多種硬件類(lèi)型上進(jìn)行高性能推理;
- 推理引擎樣本:一套簡(jiǎn)單的控制臺(tái)應(yīng)用程序,展示了如何在應(yīng)用程序中使用推理引擎;
- 附加工具:一套模型協(xié)作的工具,包括準(zhǔn)確度檢查器實(shí)用程序、訓(xùn)練后優(yōu)化工具指南、模型下載器等。
OpenVINO™工具套件開(kāi)源,深受人工智能開(kāi)發(fā)者喜愛(ài),在Github上目前獲得了1.9k的Star,787個(gè)Fork。
圖 OpenVINO™ Github界面
下面讓我們來(lái)看看知名云服務(wù)商CDS首云,如何利用OpenVINO™提升AI云服務(wù)能力的案例。
三、CDS首云案例
技術(shù)解析
作為AI能力輸出的關(guān)鍵環(huán)節(jié),AI模型的部署和推理效率會(huì)對(duì)整體性能表現(xiàn)產(chǎn)生直接影響,CDS首云與英特爾一起,在其高性能K8S容器平臺(tái)上導(dǎo)入了OpenVINO™ Model Server,為 AI模型的快速部署及推理效率的提升助力。
目前這一全新方案已在CDS首云內(nèi)部的AI應(yīng)用場(chǎng)景中進(jìn)行了初步部署和驗(yàn)證,實(shí)踐結(jié)果表明基于OpenVINO™ Model Server的新方案不僅在用戶(hù)并發(fā)接入能力上遠(yuǎn)優(yōu)于傳統(tǒng)AI模型部署工具,同時(shí)在檢測(cè)時(shí)延等關(guān)鍵性能指標(biāo)上也有更為出色的表現(xiàn)。
首云AI云服務(wù)方案架構(gòu)
AI云服務(wù)不能僅僅限于提供面向AI應(yīng)用加速的硬件基礎(chǔ)設(shè)施,一定要在其上部署能夠高效分配、調(diào)度底層基礎(chǔ)設(shè)施資源的云平臺(tái),以及能在這一云平臺(tái)上為AI應(yīng)用和模型提供完備運(yùn)行環(huán)境的中間件或框架,云平臺(tái)和AI運(yùn)行環(huán)境的搭配越合理、協(xié)作越高效,AI云服務(wù)的整體表現(xiàn)就越出色。CDS首云打造AI云服務(wù)方案的過(guò)程,就秉承了這一原則,其架構(gòu)如圖所示:
圖 CDS首云AI云服務(wù)方案架構(gòu)
- 在基礎(chǔ)設(shè)施架構(gòu)層,由英特爾提供的一系列先進(jìn)計(jì)算、存儲(chǔ)與網(wǎng)絡(luò)產(chǎn)品,輸出了強(qiáng)大的數(shù)據(jù)處理、存儲(chǔ)與傳輸能力;
- K8S虛擬化層,則負(fù)責(zé)為底層架構(gòu)提供節(jié)點(diǎn)管理和擴(kuò)展服務(wù),在將基礎(chǔ)設(shè)施層的能力物盡其用的同時(shí),也讓方案擁有良好的可擴(kuò)展性;
- 方案提供的AI服務(wù)將通過(guò)容器,為上層的多樣化應(yīng)用場(chǎng)景輸出AI能力。
基于這一架構(gòu),CDS首云的AI云服務(wù)能力既能通過(guò)解決方案的形式,為選擇云平臺(tái)或裸金屬平臺(tái)的用戶(hù)提供附加本地服務(wù)能力,也能以服務(wù)API的形式,為用戶(hù)提供遠(yuǎn)程AI能力輸出。
OpenVINO™ Model Server是方案核心
OpenVINO™ Model Server是OpenVINO™工具套件的重要組件,OpenVINO™工具套件的作用是幫助用戶(hù)實(shí)現(xiàn)模型優(yōu)化和加速,以達(dá)到降本增效的目的,OpenVINO™ Model Server則是基于和利用英特爾®️架構(gòu)基礎(chǔ)設(shè)施提供的算力,來(lái)幫助CDS首云新方案大幅簡(jiǎn)化模型部署流程,從而能更高效、便捷地將AI模型部署到生產(chǎn)環(huán)境,并有效提升推理性能。
圖OpenVINO™ Model Server 架構(gòu)
如圖所示,OpenVINO™ Model Server對(duì)外提供了gRPC和REST兩種標(biāo)準(zhǔn)的網(wǎng)絡(luò)API接口,供用戶(hù)在不同場(chǎng)景下調(diào)用,不論用戶(hù)是在本地,還是在遠(yuǎn)程啟動(dòng)AI工作任務(wù),這些任務(wù)都將被接入到部署在容器內(nèi)的OpenVINO™ Model Server服務(wù)。
上述架構(gòu)設(shè)計(jì)及工作流程,讓OpenVINO™ Model Server具備了以下四大AI云服務(wù)部署和應(yīng)用優(yōu)勢(shì):
- 面向英特爾架構(gòu)內(nèi)不同類(lèi)別硬件基礎(chǔ)設(shè)施實(shí)施性能優(yōu)化,這一優(yōu)勢(shì)可以讓用戶(hù)完成模型訓(xùn)練后,即可將模型部署于不同場(chǎng)景中實(shí)施快速推理,有效降低部署和運(yùn)維成本;
- 與K8S良好的集成,OpenVINO™ Model Server能通過(guò)鏡像方式便捷地實(shí)現(xiàn)模型快速部署、維護(hù)和擴(kuò)展,并具有更優(yōu)的橫向可擴(kuò)展性,便于為用戶(hù)提供密集型計(jì)算托管服務(wù);
- 對(duì)常見(jiàn)的主流深度學(xué)習(xí)框架均有良好支持,可幫助用戶(hù)在設(shè)計(jì)、部署AI方案時(shí)擺脫框架束縛,根據(jù)需求引入最優(yōu)框架,增強(qiáng)AI服務(wù)能力;
- 統(tǒng)一網(wǎng)絡(luò)API訪(fǎng)問(wèn)能力,允許最終用戶(hù)基于CDS首云的云平臺(tái)或裸金屬平臺(tái)部署本地化的AI能力,也可以采用遠(yuǎn)端網(wǎng)絡(luò)調(diào)用該能力。對(duì)gRPC和REST等不同API接口模式的支持,也使方案的可用性大為增強(qiáng)。
實(shí)戰(zhàn):助不良內(nèi)容檢測(cè)兼顧高性能和低成本
在全新AI云服務(wù)方案成形后,CDS首云啟動(dòng)了有針對(duì)性的實(shí)踐驗(yàn)證工作,并優(yōu)先選擇內(nèi)部應(yīng)用需求較為迫切的不良內(nèi)容檢測(cè)場(chǎng)景作為“實(shí)驗(yàn)田”。
圖 CDS首云AI不良內(nèi)容檢測(cè)流程
之前,CDS首云主要采用TensorFlow Serving服務(wù)框架等開(kāi)源工具,來(lái)將深度學(xué)習(xí)模型部署到生產(chǎn)環(huán)境進(jìn)行推理,但這一過(guò)程中,用戶(hù)經(jīng)常會(huì)面臨以下幾個(gè)方面的挑戰(zhàn):
- 首先是模型在訓(xùn)練和推理的不同過(guò)程中,不論采用什么工具,性能和精度都可能存在差異,如果不進(jìn)行適當(dāng)調(diào)優(yōu),就無(wú)法更為充分地發(fā)揮出工作效能;
- 其次是針對(duì)應(yīng)用場(chǎng)景的變化,用戶(hù)可能需要選擇不同的深度學(xué)習(xí)框架;
- 尤為重要的是,AI模型在不同架構(gòu)硬件基礎(chǔ)設(shè)施上構(gòu)建的生產(chǎn)環(huán)境中,推理性能會(huì)有明顯的差異,而方案使用者如果要針對(duì)每一種硬件環(huán)境進(jìn)行重復(fù)且繁瑣的配置和調(diào)試,勢(shì)必會(huì)消耗大量時(shí)間,且會(huì)對(duì)工作效率造成負(fù)面影響。
所有這些問(wèn)題,在CDS首云打造的全新AI云服務(wù)方案中均得到了妥善的解決。得益于OpenVINO™ Model Server的部署和應(yīng)用優(yōu)勢(shì),新方案不僅能讓用戶(hù)獲得高可用、易維護(hù)且一鍵部署AI應(yīng)用的能力,在推理性能上也得到了明顯的提升,同時(shí)還可幫助用戶(hù)降低TCO。
圖 CDS首云針對(duì)不良視頻內(nèi)容檢測(cè)場(chǎng)景的驗(yàn)證測(cè)試結(jié)果
測(cè)試結(jié)果如圖所示,使用OpenVINO™ Model Server的方案在所支持的用戶(hù)并發(fā)數(shù)量上遠(yuǎn)超對(duì)比組,相比采用TensorFlow Serving的方案提升了2.4倍,同時(shí)每個(gè)并發(fā)客戶(hù)端的延時(shí)也控制在了30毫秒以?xún)?nèi),意味著整個(gè)檢測(cè)流程能夠跟上視頻播放的速度,達(dá)到了實(shí)時(shí)檢測(cè)的效果。
未來(lái),OpenVINO™ Model Server方案帶來(lái)的應(yīng)用優(yōu)勢(shì),也會(huì)在CDS首云全面走向公有云市場(chǎng)時(shí)轉(zhuǎn)化成為競(jìng)爭(zhēng)優(yōu)勢(shì)。接下來(lái),除要在更多應(yīng)用場(chǎng)景中進(jìn)一步優(yōu)化新方案的效能外,CDS首云還計(jì)劃與英特爾一道,探索將基于 OpenVINO™ Model Server的AI云服務(wù)與邊緣計(jì)算融合的解決方案。這類(lèi)方案可將AI云服務(wù)的應(yīng)用范圍進(jìn)一步擴(kuò)展到安防、自動(dòng)檢測(cè)、門(mén)禁系統(tǒng)等應(yīng)用場(chǎng)景中,為用戶(hù)提供更具多樣化、差異化優(yōu)勢(shì)的云服務(wù)能力。
四、總結(jié),OpenVINO™是AI云服務(wù)未來(lái)
演進(jìn)方向
作為業(yè)界知名的云服務(wù)提供商,CDS首云及時(shí)捕捉到用戶(hù)對(duì)于AI云服務(wù)的迫切需求,攜手英特爾,使用OpenVINO™ Model Server為用戶(hù)打造更加高效、便捷和完善的AI云服務(wù)能力,增強(qiáng)了競(jìng)爭(zhēng)力。
AI能力是云服務(wù)的新領(lǐng)地,OpenVINO™套件是構(gòu)筑AI云服務(wù)的利器。基于OpenVINO™的云服務(wù),可以支持英特爾架構(gòu)內(nèi)不同硬件,支持K8S,支持主流的開(kāi)源深度學(xué)習(xí)框架,提供統(tǒng)一的API。相信基于OpenVINO™的AI云服務(wù)將是未來(lái)演進(jìn)方向,用戶(hù)選擇這樣的AI云服務(wù),是對(duì)投入很好的保障。