国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

深度神經(jīng)網(wǎng)絡(luò)的仿生矩陣約簡與量化方法

2020-10-18 12:57朱倩倩
計算機應(yīng)用 2020年10期
關(guān)鍵詞:權(quán)值準確度重構(gòu)

朱倩倩,劉 淵,李 甫

(1.江南大學人工智能與計算機學院,江蘇無錫 214122;2.江蘇省媒體設(shè)計與軟件技術(shù)重點實驗室(江南大學),江蘇無錫 214122;3.無錫量子云數(shù)字新媒體科技有限公司,江蘇無錫 214122)

(*通信作者電子郵箱2848500799@qq.com)

0 引言

在計算機視覺領(lǐng)域中,目標檢測[1]依舊是一個活躍的研究方向[2]。隨著深度神經(jīng)網(wǎng)絡(luò)對存儲和計算需求的不斷增長,給嵌入式/移動端設(shè)備的部署帶來了挑戰(zhàn),網(wǎng)絡(luò)模型壓縮和加速的研究成為了深度學習領(lǐng)域的重要研究任務(wù)[3]。在過去幾十年內(nèi),計算機性能得到大幅增長,但隨著深度學習的發(fā)展、神經(jīng)網(wǎng)絡(luò)性能要求的不斷提高,伴隨著神經(jīng)網(wǎng)絡(luò)的參數(shù)量越來越大,需要更高的計算力[4],而高存儲量和計算力這兩個條件大大限制了人工智能(Artificial Intelligence,AI)在終端設(shè)備的使用,因為終端設(shè)備缺乏足夠的存儲空間以及較高要求的計算力[5]。但實際上深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)中權(quán)重參數(shù)的重要性和必要性[6]是各異的。神經(jīng)網(wǎng)絡(luò)是以生物神經(jīng)網(wǎng)絡(luò)為技術(shù)原型,以研究智能機理的實現(xiàn)[7]。因此本文從生物神經(jīng)網(wǎng)絡(luò)的角度來探索和發(fā)現(xiàn)深度神經(jīng)網(wǎng)絡(luò)中對目標識別所起到真正作用的參數(shù)信息。

文獻[8]指出在生物神經(jīng)學科的研究中發(fā)現(xiàn),人眼處理圖像數(shù)據(jù)時,眼睛所接受的視覺信息傳達到大腦時,兩者之間所連接的神經(jīng)元數(shù)量其實很少,這些少量連接的神經(jīng)元對于圖像的傳輸是遠遠不夠的,而我們的大腦就要在這少量神經(jīng)元的情況下看清世界[8]。卷積神經(jīng)網(wǎng)絡(luò)和人眼在處理圖像數(shù)據(jù)時采用的原理有著相似之處,共同之處就在于它們都簡化了圖像與處理過程之間的神經(jīng)元的連接。本文受到人眼與大腦之間的少量神經(jīng)元連接處理圖像的啟發(fā),研究了一種在神經(jīng)網(wǎng)絡(luò)模型中對已有的大量參數(shù)進行簡化的方法,該方法首先通過聚類算法找出具有主要信息價值的權(quán)重參數(shù),然后仿照網(wǎng)絡(luò)動力學[9]中振蕩網(wǎng)絡(luò)的周期性變化原理對近似的權(quán)重矩陣進行重構(gòu)得到近似模型,在保證模型測試準確度的同時可以有效縮小模型所占存儲空間。

已知神經(jīng)網(wǎng)絡(luò)目前在嵌入式設(shè)備上部署所存在的限制主要有兩方面:存儲和計算力。圍繞這兩大問題,已有的壓縮方法主要有四種:

1)基于參數(shù)剪枝和共享的方法。該方法主要應(yīng)用在卷積層和全連接層,能減少對網(wǎng)絡(luò)性能不敏感的冗余參數(shù)。

該類方法可再細分為量化[10]和二值化[11]、參數(shù)剪枝[12]和共享以及結(jié)構(gòu)化矩陣[13]三種子方法。其中量化和二值化主要通過減少深度網(wǎng)絡(luò)中表示每位權(quán)重所需的比特數(shù)來壓縮原始網(wǎng)絡(luò)。對于參數(shù)剪枝和共享方法,早期的偏差權(quán)重衰減方法就屬于該類方法,目前該方法的發(fā)展趨勢是在預先訓練的深度神經(jīng)網(wǎng)絡(luò)模型中修剪冗余的、無信息的權(quán)重[14],在大多的深度神經(jīng)網(wǎng)絡(luò)中雖然存在大量的參數(shù),但有很多的參數(shù)并不是重要的,真正起作用的往往只有少數(shù)參數(shù)。在神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中,全連接層往往是內(nèi)存消耗的瓶頸[15],針對這一問題結(jié)構(gòu)化矩陣方法被提出,神經(jīng)網(wǎng)絡(luò)的層通過非線性變換使得m-n階稠密矩陣只需要更少的參數(shù)來描述[6],該結(jié)構(gòu)通過快速的矩陣向量乘法和梯度運算,不僅降低內(nèi)存開銷,還大大加快了推理和訓練的速度,但在如何找到一個合適的結(jié)構(gòu)矩陣等方面還存在一些困難[16]。

2)基于低秩分解和稀疏的方法。該方法也應(yīng)用于卷積層和全連接層,是利用矩陣/張量分解來估計信息參數(shù)的方法。

在深度神經(jīng)網(wǎng)絡(luò)中卷積層占據(jù)了大部分的計算量,因此減少卷積層可以有效地提高壓縮率和整體的速度,已有的方法是采用低秩近似將稠密矩陣由若干小規(guī)模矩陣近似重構(gòu)[17]。另一種針對全連接層權(quán)重的方法是使用矩陣分解來降低權(quán)重矩陣參數(shù),如奇異值分解重構(gòu)權(quán)重。當前的低秩近似是針對各層進行的,不能執(zhí)行全局參數(shù)壓縮,因為不同的層包含的信息各不相同,且與原模型相比,因式分解需要大量的模型再訓練達到收斂,因為涉及分解操作,需要有大計算力的支撐。

3)基于遷移/緊湊卷積濾波器的方法。不同于前兩種方法,基于遷移/緊湊卷積濾波器的方法[15]只適用于卷積層使用,用遷移卷積層對CNN 模型壓縮受到Cohen 的等變?nèi)赫摰膯l(fā),即將輸入先進行矩陣變換再送至網(wǎng)絡(luò)或?qū)拥玫降慕Y(jié)果與先將輸入映射到網(wǎng)絡(luò)再變換映射后得到的表征結(jié)果一致。使用緊湊的卷積濾波器可以直接降低計算成本,但此方法對處理廣泛/平坦的網(wǎng)絡(luò)(如VGGNet)比較有效。

4)基于知識蒸餾(Knowledge Distillation,KD)的方法。原有的知識遷移(Knowledge Transfer,KT)[11,17]壓縮模型是訓練一個帶有偽數(shù)據(jù)標記的強分類器的壓縮/集成模型,并復制了原始較大網(wǎng)絡(luò)的輸出結(jié)果,但是這僅限于淺層模型。知識蒸餾[18]是采用知識遷移思想將深度較廣的網(wǎng)絡(luò)壓縮為較淺的網(wǎng)絡(luò),它的壓縮模型是模仿復雜模型學習的函數(shù)。設(shè)計思路是將大模型神經(jīng)網(wǎng)絡(luò)(教師網(wǎng)絡(luò))學習出來的知識作為先驗,再將先驗知識遷移到小規(guī)模的神經(jīng)網(wǎng)絡(luò)中訓練更小但性能仍較好的小型神經(jīng)網(wǎng)絡(luò)(學生網(wǎng)絡(luò))?;谥R蒸餾的方法可以使模型更薄,并顯著降低計算成本。本文方法對全連接層比較有效。

本文在以上工作的基礎(chǔ)之上,結(jié)合當前的研究進展和成果,提出模型參數(shù)結(jié)合生物神經(jīng)模型原理進行重構(gòu)模型的方法,從而對神經(jīng)網(wǎng)絡(luò)模型進行壓縮。首先通過k-means算法對模型去重后的權(quán)重參數(shù)作聚類;然后對權(quán)重參數(shù)的聚類結(jié)果進行參數(shù)重構(gòu),使其適應(yīng)模型框架;最后對重構(gòu)模型做壓縮,從而實現(xiàn)對模型作整體壓縮的目的。

1 模型重構(gòu)

本文基于Darknet 框架[19-21]對Darknet19、ResNet18、ResNet50 以及YOLOv3 這四種模型進行權(quán)重重構(gòu)。首先提取預先訓練的DNN 模型權(quán)重參數(shù),然后通過octave 軟件進行仿真實驗,對權(quán)重進行去重,并根據(jù)k-means算法進行權(quán)重聚類,接著根據(jù)每一類的聚類質(zhì)心將同一類的權(quán)重都替換為所屬類的質(zhì)心值,最后在所在簇的質(zhì)心值基礎(chǔ)上添加隨機數(shù),達到重構(gòu)模型的目的。模型重構(gòu)的方法框架如圖1所示。

圖1 模型重構(gòu)框架Fig.1 Framework of model reconstruction

1.1 參數(shù)聚類

1.1.1 權(quán)重參數(shù)提取

DNN 中的參數(shù)有很多,對于每一層只需要提取對應(yīng)的權(quán)重參數(shù)并寫入文件,對網(wǎng)絡(luò)模型中各層參數(shù)進行重構(gòu)。如圖2 顯示的是Darknet19 模型中權(quán)重參數(shù)的分布直方圖,可以明顯看出模型中的權(quán)重參數(shù)大部分分布在0 附近,權(quán)重數(shù)值較大的只占少數(shù),整體分布呈現(xiàn)正態(tài)分布。

1.1.2 權(quán)重聚類

在預先訓練的模型中提取權(quán)重參數(shù)后,對提取的權(quán)重參數(shù)進行去重,并記錄原模型權(quán)重參數(shù)中重復參數(shù)的位置,對重復的權(quán)值設(shè)置一個標量值mask 進行位置標記;再對去重后的權(quán)重作k-means聚類來識別已訓練的模型中的近似權(quán)重,以使得所有在同一簇中的權(quán)重可以共享相同的權(quán)值。近似權(quán)重可以實現(xiàn)跨層共享。將原始權(quán)重W分為k個簇,從而最小化類內(nèi)平方誤差和(within-cluster Sum of Squares Error,SSE):

其中:μ(j)表示屬于第j簇的參數(shù)質(zhì)心值;x(i)是屬于當前聚類中的各個權(quán)值。

圖2 權(quán)重參數(shù)分布直方圖Fig.2 Histogram of weight parameter distribution

1.2 參數(shù)重構(gòu)

在達爾文理論中提到,進化是一種機體經(jīng)過自然選擇強化后所產(chǎn)生的微小改變的結(jié)果,在自然選擇的過程中,具有優(yōu)勢特性的有機體則更有希望生存并繁衍,也自然而然會淘汰那些相對劣勢的有機體??v觀生物發(fā)展起源,當前所有的生物其實都是由早期極少數(shù)或者某種微生物發(fā)展而來,在生物的發(fā)展過程中也并非一成不變,總會依據(jù)不同的生存條件產(chǎn)生新的物種。遺傳算法表示進化初始階段通過隨機的形式實現(xiàn),以增加物種多樣性。生物多樣性的存在與穩(wěn)定發(fā)展對所有生物包括人類的生存都具有重要意義,這是維持生態(tài)系統(tǒng)平衡發(fā)展的一個重要的因素。綜上所述可知,物種的發(fā)展起源于某種微生物,經(jīng)過不受控制的、隨機的發(fā)展過程,從而衍生出整個生態(tài)系統(tǒng),在發(fā)展的過程中遵循“物競天擇,適者生存”的進化原理。

生物學的發(fā)展原理為現(xiàn)有的神經(jīng)網(wǎng)絡(luò)模型提供了相關(guān)的理論基礎(chǔ)?;谏飳W原理中“物競天擇”“漸進進化”的基本原理,本文針對具有一定準確率預測的現(xiàn)有模型,即具有一定的生存能力,根據(jù)生物進化的理念,對現(xiàn)有模型的參數(shù)進行挑選,通過聚類挑選出最具有代表性的、有價值的參數(shù),再利用隨機數(shù)對這些重要的參數(shù)進行優(yōu)化。

經(jīng)過聚類后的權(quán)重信息,對于屬于同一簇中的參數(shù)共享權(quán)重,在每一位共享權(quán)重的基礎(chǔ)上再添加微擾值δ,可表示為:

其中:rand()表示為均勻分布產(chǎn)生的隨機數(shù);var代表各類中權(quán)值方差之和的平均值?;谶x出的核心參數(shù)結(jié)合隨機數(shù)生成更具多樣性的參數(shù)值,在多樣性的前提下才更有機會獲得更優(yōu)的參數(shù),以實現(xiàn)對現(xiàn)有模型進行參數(shù)優(yōu)化。依據(jù)遺傳算法對每一代種群基于適應(yīng)度隨機選擇不同個體產(chǎn)生新種群的過程,在參數(shù)優(yōu)化的過程中,最終只保留優(yōu)于1 的陽性結(jié)果,以此增強參數(shù)的優(yōu)化效果。如式(2)所示,當微擾δ只使用均勻分布產(chǎn)生的隨機數(shù)時容易使權(quán)值掉入局部最優(yōu),對于權(quán)值收斂也會花費更多的時間。為解決這一問題,在均勻分布的隨機數(shù)基礎(chǔ)上添加方差均值,好處在于使權(quán)值參數(shù)在幅度上有所變化,在權(quán)值參數(shù)浮動比較大的地方δ值較大,以此增加權(quán)值跳出局部最優(yōu)的可能,對于權(quán)值浮動較小的地方,則加速收斂。此外,式(2)中的rand隨機數(shù)隨著聚類平均值的變化而變化,因此其方向的變化幅度也隨著優(yōu)化局部數(shù)值而變化,一定程度上避免了掉進局部最優(yōu)。權(quán)重重構(gòu)所采用的公式可表示為:

其中:W(i)表示屬于第i類中重構(gòu)后得到的權(quán)重;W(k)代表對應(yīng)類中的質(zhì)心值。設(shè)模型的權(quán)重為W(i),k-means 聚類后的權(quán)重質(zhì)心為W(k),在此基礎(chǔ)上增加微擾δ,得到重構(gòu)權(quán)值信息。對于同一模型,每次重構(gòu)的結(jié)果并不唯一,且或許并非每次重構(gòu)模型的測試準確度總是絕對的。從生物神經(jīng)學的角度講,這更符合人的行為學,也模擬了人腦的思維方式,如同對于同一問題不同人腦的思維反應(yīng)必然存在快慢之分,給出的答案也存在差異,這也正符合了類腦研究的理論,該理論認為通過認知、經(jīng)驗得知問題的結(jié)論,結(jié)果未必一定正確,但更符合正常人的思維判斷。本文遵循的類腦思想,不同于主張以統(tǒng)計和先驗知識為前提的貝葉斯方法,貝葉斯方法每次總是致力于尋找最正確的判斷,但發(fā)現(xiàn)新概率的難度很大。以生物神經(jīng)網(wǎng)絡(luò)為原型的神經(jīng)網(wǎng)絡(luò)在進行權(quán)重取值時可以仿照生物神經(jīng)網(wǎng)絡(luò)中的取值原理,在文獻[7]中提出基于生物神經(jīng)網(wǎng)絡(luò)中神經(jīng)元之間進行信息傳遞時突觸權(quán)值的計算方法,公式如下:

式(4)中的突觸權(quán)值處于網(wǎng)絡(luò)振蕩的模型中,神經(jīng)元的活動呈現(xiàn)周期性和振蕩性模式,網(wǎng)絡(luò)振蕩通常產(chǎn)生于細胞的興奮性和抑制性種群的動態(tài)相互作用中,抑制作用產(chǎn)生的影響要更為重要。式(4)中的參數(shù)ω決定移動的突起的傳播速度,相當于網(wǎng)絡(luò)中單個神經(jīng)元的振蕩頻率。

本文研究對神經(jīng)網(wǎng)絡(luò)模型進行重構(gòu)。通過k-means 聚類將近似大小的權(quán)重值歸為一類,屬于同一類中的權(quán)值替換為當前類中的質(zhì)心數(shù)值,并添加一個微擾值δ,通過質(zhì)心值與微擾值的相加重構(gòu)模型,使用公式如(3)所示。參數(shù)重構(gòu)的過程如圖3所示。

1.3 重構(gòu)模型穩(wěn)定性分析

重構(gòu)模型的穩(wěn)定性驗證可以通過實驗的累計誤差error驗證,即每一次實驗的誤差之和再取平均,得到模型的累計誤差,累計誤差值收斂于某一具體值即可判斷當前模型的穩(wěn)定性。累計誤差的公式可表示為:

其中:n表示實驗次數(shù);errori表示每次實驗計算得到的誤差值;error為n次實驗的誤差和均值。

2 實驗與結(jié)果分析

本文所使用的實驗設(shè)備是基于ubuntu16.04操作系統(tǒng),采用Intel Xeon CPU E5-1603 v3@ 2.80 GHz×4 處理器,8 GB 內(nèi)存,500 GB 硬盤,在octave 環(huán)境下進行仿真實驗,在Visual Studio Code 環(huán)境下使用Darknet 框架實現(xiàn)模型準確度和穩(wěn)定性驗證。

本文分別對Darknet19、ResNet18、ResNet50 以及YOLOv3這四種模型進行參數(shù)重構(gòu)實驗:前三種模型在ImageNet 數(shù)據(jù)集上對得到的重構(gòu)模型進行圖像分類準確度驗證,YOLOv3重構(gòu)模型在COCO 數(shù)據(jù)集上進行目標檢測準確度驗證。重構(gòu)后模型的網(wǎng)絡(luò)存儲節(jié)省了1/4~1/3的存儲空間,而幾乎不損失準確度。

2.1 模型壓縮結(jié)果與分析

對四種模型重構(gòu)后的準確度測試及穩(wěn)定性進行驗證,各模型分別進行17 次測試實驗,結(jié)果如圖4~5 所示(Baseline 和Reconstruct2 后的數(shù)字分別表示原模型的模型參數(shù)量和模型重構(gòu)后的參數(shù)量)。

圖3 權(quán)重共享(上)和加隨機數(shù)微調(diào)的權(quán)重(下)Fig.3 Weight sharing(top)and fine-tuning weights with random numbers(bottom)

圖4 重構(gòu)模型在ImageNet數(shù)據(jù)集上的準確度及穩(wěn)定性驗證Fig.4 Validation of accuracy and stability of reconstructed model on ImageNet dataset

根據(jù)實驗結(jié)果得知,四種重構(gòu)模型經(jīng)過幾次實驗后準確度都向基線模型的準確度收斂,逐漸趨于穩(wěn)定,并且模型重構(gòu)誤差不超1%。大數(shù)定律表明,在重復實驗過程中,隨著實驗次數(shù)的增加,事件發(fā)生的頻率會趨于一個穩(wěn)定值,這反映了一些隨機事件的均值在發(fā)展過程中具有長期穩(wěn)定性。本文算法通過對現(xiàn)有模型參數(shù)添加隨機數(shù)進行重構(gòu),從實驗結(jié)果可以看出,對現(xiàn)有模型重構(gòu)后隨著模型重構(gòu)實驗次數(shù)的增加,重構(gòu)模型的準確度趨向于一個穩(wěn)定值,這正符合大數(shù)定律的規(guī)律。圖4(b)、(d)、(f)以及圖5(b)的實驗結(jié)果也表明了在重構(gòu)模型多次實驗后,重構(gòu)的累計誤差是收斂的,驗證了重構(gòu)模型的穩(wěn)定性,驗證了本文方法的有效性。

2.2 重構(gòu)前后模型的準確度和壓縮比對比

表1 是Darknet19、ResNet18、ResNet50 以及YOLOv3 這四種模型與其對應(yīng)重構(gòu)模型前后準確度以及所占存儲空間大小的對比,其中各重構(gòu)模型的壓縮比均取自其17 次實驗的壓縮比均值。從表1 可以看出,四種重構(gòu)后的模型的存儲空間為原模型存儲空間的1/4~1/3,同時還提升了1%~3%的準確度,在模型參數(shù)重構(gòu)的同時,大大降低了模型參數(shù)的復雜度,模型參數(shù)中自由度的降低為之后更大程度地簡化網(wǎng)絡(luò)帶來了可能。

圖5 重構(gòu)模型在COCO數(shù)據(jù)集上的準確度及穩(wěn)定性驗證Fig.5 Validation of accuracy and stability of reconstructed model on COCO dataset

表1 四種模型重構(gòu)前后的準確率和存儲代價對比Tab.1 Comparison of accuracy and storage cost of four models before and after reconstruction

3 結(jié)語

針對深度神經(jīng)網(wǎng)絡(luò)模型占據(jù)存儲空間大、參數(shù)冗余的問題,本文模仿生物神經(jīng)的網(wǎng)絡(luò)結(jié)構(gòu),從模型的權(quán)重參數(shù)角度,基于“進化”+“隨機”+“選擇”的原理對現(xiàn)有模型參數(shù)進行優(yōu)化,通過對神經(jīng)網(wǎng)絡(luò)中的權(quán)重參數(shù)添加隨機微擾進行模型重構(gòu),降低模型占據(jù)終端設(shè)備的存儲空間。實驗結(jié)果表明,這種重構(gòu)方法可以有效地減少參數(shù)存儲空間,并保證模型準確度的穩(wěn)定性;實驗結(jié)果也驗證本文方法在理論上的合理性以及在模型壓縮的有效性。在今后的工作中,為實現(xiàn)壓縮模型在已有設(shè)備上的加速效果,需要進一步對重構(gòu)模型中的參數(shù)做合并,從而生成一個更小、更快的模型,進一步提高重構(gòu)模型的性能。

猜你喜歡
權(quán)值準確度重構(gòu)
一種融合時間權(quán)值和用戶行為序列的電影推薦模型
影響重力式自動裝料衡器準確度的因素分析
“雙減”能否重構(gòu)教育生態(tài)?
長城敘事的重構(gòu)
基于5G MR實現(xiàn)Massive MIMO權(quán)值智能尋優(yōu)的技術(shù)方案研究
高鹽肥胖心肌重構(gòu)防治有新策略
一種基于互連測試的綜合優(yōu)化算法?
用四維的理念重構(gòu)當代詩歌
論提高裝備故障預測準確度的方法途徑
Word中“郵件合并”功能及應(yīng)用
鄂伦春自治旗| 丰宁| 慈利县| 奎屯市| 册亨县| 加查县| 深圳市| 湖州市| 吴忠市| 台前县| 华阴市| 乌拉特中旗| 武功县| 宁夏| 伊川县| 海城市| 博兴县| 博爱县| 丘北县| 岐山县| 甘泉县| 翁牛特旗| 临邑县| 长汀县| 通州区| 大足县| 盖州市| 凤冈县| 即墨市| 襄垣县| 思茅市| 齐河县| 吉木萨尔县| 宾川县| 静安区| 兴文县| 历史| 通州区| 根河市| 昌黎县| 定州市|