在AI測試過程中,Testin云測發(fā)現(xiàn),自動(dòng)化框架本身提供的控件輸入不穩(wěn)定。因此,Testin云測的AI測試方案傾向于使用更穩(wěn)定的手機(jī)截屏,做為控件定位的輸入,這就要求使用 OCR 技術(shù)來定位和解析屏幕截圖中的文本。由于 OCR 的效率與準(zhǔn)確度會(huì)對測試的效果與結(jié)果帶來不可忽視的影響,而模板匹配、特征提取等傳統(tǒng) OCR 方案又暴露出對于圖像清晰度要求高、抗背景干擾能力較差等缺陷,所以Testin云測決定使用深度學(xué)習(xí)方案來提升文本推理能力。
為了提升 OCR 深度學(xué)習(xí)的效率,Testin云測與英特爾進(jìn)行了深度合作,從軟件加速以及硬件兩個(gè)角度對于 OCR 方案進(jìn)行優(yōu)化。
至強(qiáng)+ OpenVINO? 將 OCR 效率提升6倍
在很多情況下,OCR 深度學(xué)習(xí)方案使用的都是 GPU,通過其強(qiáng)大的并行計(jì)算能力來提升文本推理能力。但是,GPU 方案也存在很多缺陷。特別是在較小規(guī)模、私有云用戶的深度學(xué)習(xí)應(yīng)用中,搭建專用于 OCR 深度學(xué)習(xí)的 GPU 平臺(tái)需要客戶同時(shí)升級硬件平臺(tái),這樣不僅耗費(fèi)時(shí)間成本,而且也會(huì)帶來相應(yīng)的硬件升級成本,更多用戶希望在現(xiàn)有的基礎(chǔ)設(shè)施平臺(tái)上運(yùn)行深度學(xué)習(xí)負(fù)載。而且,在大量推理負(fù)載中,基于 CPU 的推理性能并不弱于 GPU 平臺(tái),這也成為Testin云測進(jìn)行方案驗(yàn)證的重要?jiǎng)恿Α?/p>
在基礎(chǔ)設(shè)施平臺(tái)的搭建上,Testin云測最終選擇了英特爾至強(qiáng)金牌 6140處理器,該處理器是英特爾至強(qiáng)可擴(kuò)展處理器家族產(chǎn)品,不僅擁有強(qiáng)大的通用計(jì)算能力,還集成了增強(qiáng)單指令多數(shù)據(jù)流(Single Instruction Multiple Data,SIMD)、英特爾AVX-512等創(chuàng)新技術(shù),實(shí)現(xiàn)了對于通用計(jì)算能力和并行計(jì)算能力的兼顧,為深度學(xué)習(xí)訓(xùn)練提供了卓越的性能基礎(chǔ)。相比上一代產(chǎn)品,英特爾? 至強(qiáng)? 可擴(kuò)展處理器針對深度學(xué)習(xí)訓(xùn)練和推理可提供高達(dá)2.2倍的性能。結(jié)合可加快交付人工智能服務(wù)的軟件優(yōu)化,相比3年前未經(jīng)優(yōu)化的服務(wù)器系統(tǒng),全新的處理器可實(shí)現(xiàn)113倍的深度學(xué)習(xí)性能提升。
在軟件與算法層面上,Testin云測對深度學(xué)習(xí)框架、加速方案也進(jìn)行探索和選擇。為了加速 OCR 方案,Testin云測在初期使用的深度學(xué)習(xí)框架是Google* 開發(fā)的 TensorFlow*,TensorFlow將深度學(xué)習(xí)復(fù)雜的計(jì)算過程抽象成數(shù)據(jù)流圖,在深度學(xué)習(xí)中有著廣泛的應(yīng)用。但是,Testin云測發(fā)現(xiàn),無論是公開版本的 TensorFlow,還是優(yōu)化版本的 TensorFlow,在速度上都無法滿足需求。因此,Testin云測希望能夠找到一種全新的加速方案。
在英特爾的建議下,Testin云測嘗試使用英特爾OpenVINO工具套件分發(fā)版來進(jìn)行加速。該工具套件支持開發(fā)人員使用行業(yè)標(biāo)準(zhǔn)人工智能框架、標(biāo)準(zhǔn)或自定義層,將深度學(xué)習(xí)推理輕松集成到應(yīng)用中,開發(fā)人員只需編寫一次代碼,即可將其快速、無縫地部署在當(dāng)前和未來的英特爾硬件上,從而消除應(yīng)用重復(fù)開發(fā)問題。該工具套件基于卷積神經(jīng)網(wǎng)絡(luò) (CNN),可在英特爾硬件中擴(kuò)展工作負(fù)載。
OpenVINO 的采用帶來了立竿見影的效果,Testin云測針對公共 TensorFlow 與英特爾OpenVINO 實(shí)現(xiàn)的推理吞吐量進(jìn)行了測試,并發(fā)現(xiàn),基于公共 TensorFlow 的解決方案的推理吞吐量為 23.26 (FPS) ,基于英特爾OpenVINO的解決方案的推理吞吐量為 151.29 (FPS) ,后者比前者的吞吐量提升650%左右(對比結(jié)果如圖1),而且基本沒有精度損失。
此外,Testin云測還基于第二代英特爾至強(qiáng)可擴(kuò)展處理器進(jìn)行了測試,該處理器集成了英特爾深度學(xué)習(xí)加速(英特爾Deep Learning Boost)技術(shù)、DL Boost(VNNI)技術(shù),以加速數(shù)據(jù)中心、企業(yè)和智能邊緣計(jì)算環(huán)境中的人工智能推理工作負(fù)載。特別是在搭配支持低精度的INT8加速的 OpenVINO? 新版本之后,有望將推理速度在提升3倍左右。
以AI賦能測試服務(wù)
目前,Testin云測的業(yè)務(wù)范疇,不僅包括測試服務(wù),還包括安全、推廣,以及AI數(shù)據(jù)標(biāo)注等服務(wù)。通過開發(fā)基于人工智能 (AI)、深度學(xué)習(xí)技術(shù)的數(shù)據(jù)標(biāo)注、OCR 識別等相關(guān)AI測試工具,Testin云測可以幫助企業(yè)客戶完成自動(dòng)化應(yīng)用測試,大幅降低勞動(dòng)密集度。
通過將 AI 與自動(dòng)化測試解決方案結(jié)合,能夠有助于自動(dòng)化、全路徑探索應(yīng)用的各種顯在或是潛在問題,提取特征訓(xùn)練進(jìn)行業(yè)務(wù)功能的識別,并智能生成測試報(bào)告。AI 的加入還有助于實(shí)現(xiàn)對功能模塊的自動(dòng)探索,并實(shí)現(xiàn)執(zhí)行過程的可視化,使得測試環(huán)節(jié)定位更加迅速準(zhǔn)確。對于用戶來說,自動(dòng)化的測試管理和測試用例創(chuàng)建能夠顯著降低測試時(shí)間與資源的浪費(fèi),加快應(yīng)用上市進(jìn)程。
Testin云測的測試實(shí)例證明,英特爾至強(qiáng)可擴(kuò)展處理器+英特爾OpenVINO 的融合解決方案有助于在具體應(yīng)用場景中加快推理的速度。而且,該解決方案還展現(xiàn)了其它自動(dòng)化測試場景的應(yīng)用潛力,為用戶搭建基礎(chǔ)平臺(tái)提供了重要的方案選擇。