機(jī)器學(xué)習(xí)是推動(dòng)人工智能(AI)向前發(fā)展的核心技術(shù),過往,AI領(lǐng)域的主要發(fā)展聚焦于拓展機(jī)器的能力,隨著AI從早期的野蠻發(fā)展階段步入落地應(yīng)用階段,在與各個(gè)行業(yè)的實(shí)際結(jié)合過程當(dāng)中,如何能將人類經(jīng)驗(yàn)與機(jī)器學(xué)習(xí)規(guī)則充分結(jié)合,使機(jī)器更高效地學(xué)習(xí),成為了AI發(fā)展所亟須解決的關(guān)鍵問題。
要使機(jī)器具備人類的經(jīng)驗(yàn),少不了人工的參與。以往的機(jī)器學(xué)習(xí),往往需要大量的數(shù)據(jù)信息以及較高的人工參與(如對(duì)數(shù)據(jù)的標(biāo)注等)程度,這使AI在行業(yè)中的應(yīng)用也面臨著耗時(shí)、耗力的問題,而由人工參與導(dǎo)致的數(shù)據(jù)標(biāo)注錯(cuò)誤更容易影響訓(xùn)練的效果。
日前,特斯聯(lián)的首間人工智能開放創(chuàng)新中心(下稱:科創(chuàng)中心)已宣布在德陽AI PARK落地運(yùn)營。科創(chuàng)中心同時(shí)兼?zhèn)渲惴ǚ趸⒖蒲泄蚕怼⒓叭瞬排囵B(yǎng)的使命。據(jù)特斯聯(lián)介紹,為解決前述問題而打造的弱監(jiān)督大模型訓(xùn)練體系及聯(lián)邦學(xué)習(xí)安全訓(xùn)練體系,即為科創(chuàng)中心最核心的技術(shù)亮點(diǎn)。
特斯聯(lián)德陽AI PARK內(nèi)景
特斯聯(lián)科創(chuàng)中心致力于通過九章算法賦能平臺(tái)向不具備AI能力或弱AI能力的用戶提供AI算法孵化服務(wù)能力,因而弱化機(jī)器學(xué)習(xí)對(duì)標(biāo)簽數(shù)據(jù)的依賴、弱化人工參與算法訓(xùn)練為重中之重。目前針對(duì)計(jì)算機(jī)視覺、自然語言處理、推薦預(yù)測(cè)、知識(shí)圖譜四個(gè)方向共十三個(gè)細(xì)分項(xiàng),特斯聯(lián)與學(xué)術(shù)生態(tài)及產(chǎn)業(yè)合作伙伴已展開深入合作,并打造了弱監(jiān)督體系訓(xùn)練平臺(tái)。其中,在計(jì)算機(jī)視覺領(lǐng)域,基于對(duì)比式自監(jiān)督學(xué)習(xí)(Momentum Contrast,下稱:MoCo)框架,特斯聯(lián)構(gòu)建了CV弱監(jiān)督自訓(xùn)練引擎,在圖像分類、目標(biāo)檢測(cè)、實(shí)例分割三個(gè)領(lǐng)域,實(shí)現(xiàn)最優(yōu)性能。
優(yōu)化MoCo自監(jiān)督學(xué)習(xí)框架,構(gòu)建CV弱監(jiān)督自訓(xùn)練引擎
在計(jì)算機(jī)視覺現(xiàn)有的弱監(jiān)督學(xué)習(xí)框架中,由于memory bank思路易于實(shí)現(xiàn),其應(yīng)用最廣也最為成熟。然而這一思路也存在著明顯的缺點(diǎn):
1.首先,每一輪訓(xùn)練需要對(duì)所有樣本特征進(jìn)行存儲(chǔ),其內(nèi)存空間消耗巨大;
2.此外,所有樣本特征僅在每輪訓(xùn)練結(jié)束后方可更新,導(dǎo)致更新延遲,實(shí)驗(yàn)效果并不理想。
據(jù)此,特斯聯(lián)研發(fā)團(tuán)隊(duì)選擇采用MoCo系列自監(jiān)督學(xué)習(xí)框架作為基礎(chǔ)學(xué)習(xí)框架進(jìn)行優(yōu)化,研發(fā)出了自訓(xùn)練引擎及相關(guān)算法。
MoCo是一種在高維連續(xù)輸入中建立離散字典的方法,字典是動(dòng)態(tài)的,鍵值(keys)是隨機(jī)采樣得到的,編碼器(key encoder)在訓(xùn)練中進(jìn)行更新。假設(shè)好的特征可以從包含大量負(fù)樣本的字典中學(xué)習(xí)而來,而編碼器能夠在更新中盡可能保持一致。在MoCo框架的訓(xùn)練過程中,每一步訓(xùn)練均會(huì)以“批次(batch)”為單位,將當(dāng)前批次樣本特征更新至隊(duì)列,并將最舊的批次樣本特征從隊(duì)列剔除,實(shí)現(xiàn)動(dòng)態(tài)存儲(chǔ),將memory bank的樣本特征可存儲(chǔ)數(shù)量與批次大小(batch size)分離,提升訓(xùn)練效率。
特斯聯(lián)CV弱監(jiān)督自訓(xùn)練引擎技術(shù)在傳統(tǒng)的MoCo系列自監(jiān)督學(xué)習(xí)框架上,做出了五個(gè)方面的創(chuàng)新:
1.特斯聯(lián)將MoCo中采用動(dòng)量編碼器的方式改為指數(shù)加權(quán)移動(dòng)平均(EMA)算法更新,其公式如下:
各數(shù)值的加權(quán)影響力隨時(shí)間呈指數(shù)式遞減,時(shí)間越靠近當(dāng)前時(shí)刻的數(shù)據(jù)加權(quán)影響力越大,以此來提高當(dāng)前和較早期鍵值之間表示的一致性。
2.Transformer模型結(jié)構(gòu)首次推出是在NLP(自然語言處理)領(lǐng)域,最近兩年開始引進(jìn)計(jì)算機(jī)視覺領(lǐng)域且呈主流發(fā)展趨勢(shì),為了更好地支持基于Transformer結(jié)構(gòu)的模型算法,特斯聯(lián)吸納由清華大學(xué)、西安交通大學(xué)以及微軟亞洲研究院的研究者提出的 MoBY 自監(jiān)督學(xué)習(xí)方法的優(yōu)化思路,將BYOL(由Google DeepMind提出的算法)中的非對(duì)稱編碼器、非對(duì)稱數(shù)據(jù)擴(kuò)充、動(dòng)量調(diào)度,與MoCo中的動(dòng)量設(shè)計(jì)、鍵隊(duì)列、對(duì)比損失相互結(jié)合。由此,可借助BYOL先進(jìn)的算法架構(gòu),以出色的性能支持基于Transformer結(jié)構(gòu)的模型算法,進(jìn)而豐富弱監(jiān)督訓(xùn)練引擎所支持的模型種類,提高引擎的模型多元性。
3.事物形態(tài)的變化不會(huì)脫離其核心,圖像風(fēng)格的改變亦不會(huì)影響其核心內(nèi)涵。基于此前提,特斯聯(lián)吸納了由Google DeepMind研究者所提出的ReLIC自監(jiān)督學(xué)習(xí)算法思想,將因果框架引入MoCo,通過因果不變性原理,在主流的InfoNCE損失函數(shù)上進(jìn)行優(yōu)化,顯性約束模型的學(xué)習(xí)目標(biāo),鼓勵(lì)模型學(xué)習(xí)到圖像中的核心內(nèi)容。由此,模型可最大程度挖掘到圖像中真正有用的內(nèi)容信息,降低對(duì)圖像風(fēng)格改變的敏感度,從而整體上使模型具備更高魯棒性,性能更穩(wěn)定。
4.參考強(qiáng)化學(xué)習(xí)的Prioritized Experience Replay算法思路,特斯聯(lián)以對(duì)比損失值作為優(yōu)先級(jí),引入sum-tree數(shù)據(jù)結(jié)構(gòu)代替隊(duì)列結(jié)構(gòu),實(shí)現(xiàn)高效的優(yōu)先級(jí)存儲(chǔ),完善“樣本特征淘汰機(jī)制”,由此,訓(xùn)練可最大程度保留信息熵較大的特征,進(jìn)一步提高模型的訓(xùn)練效率以及學(xué)習(xí)效果。
5.針對(duì)目標(biāo)檢測(cè)及實(shí)例分割下游任務(wù),由于采用SGD優(yōu)化器優(yōu)化Transformer結(jié)構(gòu)模型,會(huì)存在精度大幅下降,超參數(shù)魯棒性差等問題,特斯聯(lián)研發(fā)團(tuán)隊(duì)將Transformer中的convolutional stem替換為patchify stem,在穩(wěn)定訓(xùn)練的同時(shí)提高訓(xùn)練效率,降低超參數(shù)的影響。
降低人工參與成本,CV弱監(jiān)督自訓(xùn)練引擎助力工業(yè)智慧化轉(zhuǎn)型
特斯聯(lián)的CV弱監(jiān)督自訓(xùn)練引擎在工業(yè)場(chǎng)景中尤其有著不可替代的價(jià)值。
在工業(yè)互聯(lián)網(wǎng)實(shí)踐中,大量工業(yè)算法的研發(fā)以缺陷檢查為目標(biāo)。然而壞件本身是個(gè)小樣本事件,且壞件形態(tài)各異,因而在數(shù)據(jù)收集層面以及數(shù)據(jù)人工標(biāo)注層面,使用標(biāo)準(zhǔn)的大量有標(biāo)簽的壞件數(shù)據(jù)對(duì)檢測(cè)模型進(jìn)行訓(xùn)練,在產(chǎn)業(yè)中的實(shí)現(xiàn)難度極高。
特斯聯(lián)CV弱監(jiān)督自訓(xùn)練引擎及優(yōu)化后的MoCo框架則可幫助廠家將此產(chǎn)業(yè)難題分解成多個(gè)簡單的子問題一一解決。廠家可先從工業(yè)生產(chǎn)環(huán)境收集大量零件圖像樣本并對(duì)少量壞件數(shù)據(jù)進(jìn)行標(biāo)注,然后根據(jù)平臺(tái)提供的評(píng)估指標(biāo)選定模型,即可在無需標(biāo)注的情況下直接使用零件圖像樣本開啟訓(xùn)練。
在開啟預(yù)訓(xùn)練流程后,CV弱監(jiān)督自訓(xùn)練引擎首先會(huì)結(jié)合數(shù)據(jù)以及下游任務(wù)目標(biāo)進(jìn)行分析,為模型自構(gòu)一個(gè)或多個(gè)自學(xué)習(xí)子任務(wù),然后借助優(yōu)化后的MoCo框架,幫助模型不斷學(xué)習(xí)和挖掘零件圖像樣本中的有效信息,例如正常零件紋路,正常零件外觀,正常零件隱性特征等等。完成預(yù)訓(xùn)練流程后,引擎將進(jìn)入下游任務(wù)訓(xùn)練流程,配合半監(jiān)督技術(shù)和少量壞件數(shù)據(jù)再次訓(xùn)練。待訓(xùn)練完成,即可得到最終的檢測(cè)模型,幫助廠家完成大規(guī)模缺陷檢查任務(wù)。
不難發(fā)現(xiàn),CV弱監(jiān)督自訓(xùn)練引擎的應(yīng)用可以充分利用現(xiàn)有的沉默數(shù)據(jù),極大降低數(shù)據(jù)標(biāo)注的人力成本及時(shí)間成本,而優(yōu)化后的MoCo框架不僅僅提高了精度,也在一定程度上降低了計(jì)算資源的消耗,提升了計(jì)算的效率。這都幫助降低了AI在產(chǎn)業(yè)界應(yīng)用的門檻。
實(shí)驗(yàn)效果出眾,CV弱監(jiān)督自訓(xùn)練引擎促AI應(yīng)用落地
為驗(yàn)證CV弱監(jiān)督自訓(xùn)練引擎改進(jìn)算法的有效性,特斯聯(lián)研發(fā)團(tuán)隊(duì)分別按照MoCo V2,MoCo V3,MoBY三篇論文的實(shí)驗(yàn)?zāi)P瓦x型、制定參數(shù)配置及訓(xùn)練策略,將相應(yīng)的模型在特斯聯(lián)的自訓(xùn)練引擎上重新訓(xùn)練。實(shí)驗(yàn)結(jié)果顯示,CV弱監(jiān)督自訓(xùn)練引擎所訓(xùn)練出的大部分模型在主流的Linear Probing性能評(píng)估上超過了前述三篇論文的實(shí)驗(yàn)結(jié)果,如下圖所示:
ImageNet-1K Linear Probing性能對(duì)比實(shí)驗(yàn)結(jié)果
不光如此,特斯聯(lián)所打造的CV弱監(jiān)督自訓(xùn)練引擎還在2021年度ICCV(國際計(jì)算機(jī)視覺大會(huì))的賽事中躋身前十名。將特斯聯(lián)CV弱監(jiān)督自訓(xùn)練引擎技術(shù)導(dǎo)入特斯聯(lián)的弱監(jiān)督訓(xùn)練體系,將提高平臺(tái)大部分CV訓(xùn)練模型性能。而用戶亦可在科創(chuàng)中心,基于九章算法賦能平臺(tái),通過零門檻的訓(xùn)練,生成自有知識(shí)產(chǎn)權(quán)的高性能CV算法。
在特斯聯(lián)看來,降低機(jī)器學(xué)習(xí)過程中的人工參與,即可在一定程度上讓更大范圍的企業(yè)有機(jī)會(huì)參與到人工智能的研發(fā)當(dāng)中,也推動(dòng)AI向更為細(xì)分的領(lǐng)域滲透。特斯聯(lián)創(chuàng)始人兼CEO艾渝對(duì)此表示:“就像是AI產(chǎn)業(yè)發(fā)展的木桶原理,如果細(xì)分市場(chǎng)的發(fā)展相對(duì)較慢,那么整個(gè)AI產(chǎn)業(yè)的推進(jìn)也會(huì)有困難。我們希望通過科創(chuàng)中心以及特斯聯(lián)自身的技術(shù)專長,幫助中小微企業(yè)緩解AI研發(fā)中的問題,找到AI有效應(yīng)用落地的路徑,也帶動(dòng)整個(gè)AI產(chǎn)業(yè),再向前走一步。”