靳丹 周建宏 陳佐虎 李寧
國網(wǎng)甘肅省電力公司 甘肅 蘭州 730030
在音頻﹑視頻﹑文本識(shí)別應(yīng)用領(lǐng)域,基于深度學(xué)習(xí)的人工智能技術(shù)已經(jīng)成為工程界的主流[1],如何提升模型準(zhǔn)確度是一個(gè)不可避免的工程問題。以圖像識(shí)別為例,針對(duì)深度學(xué)習(xí)技術(shù)路線而言,提升圖像識(shí)別準(zhǔn)確率主要有以下幾種辦法:
這是最簡(jiǎn)單也最可靠的解決辦法,深度學(xué)習(xí)模型的準(zhǔn)確程度主要取決于樣本數(shù)據(jù)。增加驗(yàn)證準(zhǔn)確性的最簡(jiǎn)單方法就是添加更多數(shù)據(jù)。除增加原始樣本外,一般可以通過圖像增強(qiáng)或者生成對(duì)抗網(wǎng)絡(luò)補(bǔ)充樣本。
向模型中添加更多層可以增強(qiáng)它更深入地學(xué)習(xí)數(shù)據(jù)集特性的能力,因此它將能夠識(shí)別出細(xì)微差異。增加訓(xùn)練輪次也可以提升模型準(zhǔn)確度,但當(dāng)訓(xùn)練輪次增加到一定程度后,模型準(zhǔn)確度提升將變得極為緩慢甚至可能降低。
使用預(yù)訓(xùn)練的模型,并進(jìn)行參數(shù)調(diào)諧。
現(xiàn)有人工智能模型的準(zhǔn)確度以及樣本獲取需要通過技術(shù)人員主動(dòng)去發(fā)現(xiàn),這不屬于自動(dòng)化的工業(yè)方式。因而,本文提出一種模型準(zhǔn)確度提升方法,自動(dòng)捕捉樣本,供后臺(tái)訓(xùn)練﹑評(píng)估用,進(jìn)而生產(chǎn)出新的模型,進(jìn)而實(shí)現(xiàn)不斷改進(jìn)模型識(shí)別準(zhǔn)確度的目標(biāo)。
對(duì)集團(tuán)企業(yè)而言,云端人工智能平臺(tái)并不能解決所有問題。受限于網(wǎng)絡(luò)通信條件,許多應(yīng)用需要采用云邊協(xié)同方式解決。以最常見辦公領(lǐng)域?yàn)槔?。音頻識(shí)別﹑圖像識(shí)別﹑OCR識(shí)別以及文本識(shí)別均得到了廣泛應(yīng)用。典型場(chǎng)景包括會(huì)議語音識(shí)別﹑話音轉(zhuǎn)文本﹑參會(huì)人員識(shí)別﹑文件材料OCR讀取。集團(tuán)總部一般通過云中心進(jìn)行人工智能計(jì)算支撐,而分支機(jī)構(gòu)受限于網(wǎng)絡(luò)條件,通常需要云邊協(xié)同架構(gòu)達(dá)成目的。
電力行業(yè)是數(shù)字化信息化較快的領(lǐng)域,隨著基層大量的人工智能應(yīng)用接入,難免會(huì)遇到數(shù)據(jù)處理的反鎖問題。特別是在圖像﹑音頻以及文本識(shí)別等融合應(yīng)用普及后,海量的數(shù)據(jù)和運(yùn)算大大增加了成本和云端服務(wù)器負(fù)荷。在此背景下,新的邊緣智能計(jì)算技術(shù)需求應(yīng)運(yùn)而生。
所謂邊緣計(jì)算,就是把計(jì)算前置,更靠近計(jì)算場(chǎng)地做實(shí)時(shí)處理,直接在邊緣側(cè)智能分析,只把處理后的結(jié)構(gòu)化數(shù)據(jù)和少量樣本數(shù)據(jù)上傳云。邊緣計(jì)算設(shè)備與云端互動(dòng)管理設(shè)備協(xié)同完成應(yīng)用支撐,極大提升了設(shè)備和網(wǎng)絡(luò)利用率,提高了響應(yīng)的實(shí)時(shí)性,對(duì)數(shù)據(jù)的安全性與準(zhǔn)確性也有了更近一層的保障。在云邊協(xié)同模式下,云端一般完成模型訓(xùn)練﹑模型評(píng)估﹑模型下發(fā)﹑模型版本管理以及樣本庫管理工作。邊緣設(shè)備接收云端下發(fā)的人工智能模型,利用自身計(jì)算能力承擔(dān)工程計(jì)算任務(wù),同時(shí)上傳處理結(jié)果以及某些特定樣本數(shù)據(jù)。
方案面向兩級(jí)部署應(yīng)用,邏輯上可分為三個(gè)主要部分:①集團(tuán)-平臺(tái)側(cè)(云端);②軟件/模型/樣本分發(fā)機(jī)制;③邊側(cè)應(yīng)用。
①針對(duì)邊側(cè)應(yīng)用建設(shè)樣本倉庫﹑模型庫,管理邊側(cè)應(yīng)用的個(gè)性化樣本﹑模型;②建立評(píng)估標(biāo)準(zhǔn),從樣本中按統(tǒng)計(jì)方法選取模型評(píng)估集,建立模型評(píng)價(jià)指標(biāo)體系;③從集團(tuán)樣本庫和邊側(cè)樣本倉庫中按M︰N比例提取樣本,訓(xùn)練邊側(cè)模型。M﹑N數(shù)值按工程需要調(diào)整。
圖1 整體部署架構(gòu)
工作包括[2]:①數(shù)據(jù)收集:獲取什么類型的數(shù)據(jù),數(shù)據(jù)可以通過那些途徑獲取。常見的數(shù)據(jù)來源是采集﹑購買或其他方式獲取現(xiàn)有數(shù)據(jù);②數(shù)據(jù)理解:獲取到原始數(shù)據(jù)之后,分析數(shù)據(jù)里面有什么內(nèi)容﹑數(shù)據(jù)準(zhǔn)確性如何,為下一步的預(yù)處理做準(zhǔn)備;③數(shù)據(jù)預(yù)處理:原始數(shù)據(jù)可能會(huì)有環(huán)境影響或者干擾因素,所以為了保證預(yù)測(cè)的準(zhǔn)確性和有效性,需要進(jìn)行數(shù)據(jù)增強(qiáng)。常見的比如調(diào)整照片亮度﹑對(duì)比度﹑銳化等等;④特征提?。簩?shù)據(jù)里有用的,有典型特征的抽取出來;⑤模型構(gòu)建:依托常用框架(Tensorflow﹑Pytorch﹑Darknet(yolov4)﹑百度飛槳),使用適當(dāng)?shù)乃惴?,獲取預(yù)期準(zhǔn)確的值。⑥模型評(píng)估:通常對(duì)一個(gè)模型進(jìn)行評(píng)估的標(biāo)準(zhǔn)有準(zhǔn)確率﹑查全率;⑦模型訓(xùn)練:根據(jù)模型評(píng)估的結(jié)果,對(duì)模型進(jìn)行不斷的訓(xùn)練甚至是調(diào)整,以達(dá)到更好的效果;⑧生成可下發(fā)的模型:將模型部署﹑應(yīng)用到邊側(cè)實(shí)際場(chǎng)景中。
所采用DOCKER倉庫使用流程如下:①云端搭建Harbor倉庫;推理模型鏡像上傳至Harbor;云端安裝Portainer管理工具;②利用Portainer代理將邊端注冊(cè)到云端;③邊端定期拉取/更新AI識(shí)別模型鏡像;④邊端創(chuàng)建數(shù)據(jù)卷容器;⑤掛載數(shù)據(jù)卷容器,建立模型數(shù)據(jù)的映射關(guān)系,啟動(dòng)推理模型容器;⑥實(shí)現(xiàn)AI識(shí)別模型同步至邊端數(shù)據(jù)卷容器中,邊端啟動(dòng)應(yīng)用程序容器,掛載含有AI識(shí)別模型的數(shù)據(jù)卷容器,實(shí)現(xiàn)AI識(shí)別模型同步至應(yīng)用系統(tǒng)容器中,應(yīng)用系統(tǒng)便可實(shí)現(xiàn)AI識(shí)別工作。
邊側(cè)模型同步機(jī)制如下:①模型和樣本采用Public /subscribe模式;②模型描述依據(jù)基準(zhǔn)測(cè)試集建立指標(biāo)體系;③樣本上傳通過數(shù)據(jù)中臺(tái)通道。
圖2 邊側(cè)設(shè)備部署
該模型準(zhǔn)確度提升方法包含以下步驟[3]:①在現(xiàn)有多種開源﹑開放的模型中選取兩個(gè)作為遷移學(xué)習(xí)基礎(chǔ)模型,并在基礎(chǔ)樣本集﹑測(cè)試集上進(jìn)行圖像識(shí)別訓(xùn)練﹑評(píng)估,得出精度和召回率;②權(quán)衡精度和召回率,使用F1分?jǐn)?shù)作為信度函數(shù)
③針對(duì)同一目標(biāo)問題,采用不同樣本集訓(xùn)練兩個(gè)人工智能識(shí)別模型,不失一般性,模型a,模型b;④根據(jù)模型a,模型b在測(cè)試集的表現(xiàn),即F1(a),F(xiàn)1(b)定義優(yōu)先級(jí);⑤模型a,模型b均部署在邊端設(shè)備上;⑥在邊端目標(biāo)識(shí)別過程中,當(dāng)模型a,模型b結(jié)果出現(xiàn)差異,將差異圖像上傳云端人工確認(rèn),確認(rèn)的結(jié)果作為模型a,模型b的評(píng)價(jià),并累計(jì)。同時(shí),將差異圖像保存到樣本庫。⑦當(dāng)差異信度函數(shù)大于閾值設(shè)定時(shí),Abs(F1(a)-F1(b))>閾值T,則更新評(píng)價(jià)分值F1較低的模型。⑧因?yàn)橹桓乱粋€(gè)模型,所以邊端設(shè)備上的模型始終存在差異,形成更新驅(qū)動(dòng)力。
在某邊端實(shí)際應(yīng)用場(chǎng)景中,我們使用了1塊FPGA和6塊NPU(17Tflops),可以支持128路1080P視頻,模型平均更新周期約為2個(gè)月。接下來的工作是重點(diǎn)提升邊緣設(shè)備設(shè)備的可靠性。
AI技術(shù)相對(duì)開放,但入門的門檻也比較高。未來幾年內(nèi),信創(chuàng)方向有望與AI技術(shù)深度融合,率先在業(yè)務(wù)應(yīng)用中實(shí)現(xiàn)全國產(chǎn)化。因而,以邊端識(shí)別等輕量級(jí)應(yīng)用為切入點(diǎn),可以快速積累人工智能應(yīng)用經(jīng)驗(yàn)。