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

?

基于Swin Transformer的交通信號(hào)燈圖像分類算法

2022-12-21 08:24張緒德李康
電子制作 2022年23期
關(guān)鍵詞:信號(hào)燈注意力交通

張緒德,李康

(凱里學(xué)院,貴州凱里,556011)

0 引言

隨著人工智能科學(xué)的發(fā)展,智慧交通逐漸影響人們的日常出行。信號(hào)燈是智慧交通的重要組成部分,基于交通信號(hào)燈的圖像分類識(shí)別是進(jìn)行研究的基礎(chǔ)[1-2]。圖像分類采用的算法主要有基于CNN 網(wǎng)絡(luò)模型[3],CNN 網(wǎng)絡(luò)模型是由簡(jiǎn)單神經(jīng)網(wǎng)絡(luò)發(fā)展改進(jìn)而來(lái),相比于神經(jīng)網(wǎng)絡(luò)主要采用卷積層和池化層替代全連接層結(jié)構(gòu),卷積層能夠有效地將圖像中的各種特征提取出并生成特征圖[4],但CNN 模型學(xué)習(xí)全局特征能力不強(qiáng),為更好實(shí)現(xiàn)對(duì)信號(hào)燈圖像分類可采用基于自注意機(jī)制的深度神經(jīng)網(wǎng)絡(luò)Transformer,Transformer 模型具有多頭自注意力機(jī)制,可以通過(guò)此機(jī)制進(jìn)行特征提取,使用自注意力機(jī)制相比于CNN 模型能學(xué)習(xí)到全局特征,可以減少對(duì)外部信息的依賴,能更好的捕獲數(shù)據(jù)或特征內(nèi)部的相關(guān)性,從而提取更強(qiáng)有力的特征。

1 Swin Transformer 算法模型

■1.1 Transformer 算法模型

Transformer 模型最早是Google 在論文Attention is All you need[5]中提出,模型起初是用在進(jìn)行自然語(yǔ)言處理,由于模型表現(xiàn)出強(qiáng)大能力,科學(xué)工作者嘗試將Transformer 應(yīng)用于CV 領(lǐng)域中進(jìn)行處理計(jì)算機(jī)視覺(jué)相關(guān)的任務(wù),Vision Transformer 的提出首次將Transformer模型架構(gòu)用于處理圖像中的相關(guān)信息,并且取得很不錯(cuò)的效果[6],在目標(biāo)檢測(cè)領(lǐng)域隨著DETR 模型出現(xiàn)首次應(yīng)用Transformer 模型[7], DETR 模型進(jìn)行檢測(cè)時(shí)采用卷積神經(jīng)網(wǎng)絡(luò)基礎(chǔ)上增加Transformer 模型的編碼器和解碼器。針對(duì)Vision Transformer 存在計(jì)算參數(shù)量大提出一種滑動(dòng)窗口自注意力機(jī)制,在局部窗口進(jìn)行自注意力機(jī)制有效降低參數(shù)量,同時(shí)采用卷積神經(jīng)網(wǎng)絡(luò)思想采用層次化構(gòu)建方式堆疊Transformer 模型,Swin Transformer 模型得到迅速發(fā)展。Transformer 模型的核心是使用Self-Attention 結(jié)構(gòu)。相比于CNN 模型每次在進(jìn)行特征提取時(shí)只能提取局部特征,Transformer 模型每次可提取全局特征,同時(shí)高效的進(jìn)行并行計(jì)算。

Transformer 模型進(jìn)行特征提取時(shí)采用多頭注意力機(jī)制,使用自注意力機(jī)制時(shí)可以提取圖像中的所有信息,可以減少對(duì)圖像中外部信息的依賴,更好捕獲圖像中相關(guān)聯(lián)信息。但對(duì)圖像分辨率比較高、像素點(diǎn)多時(shí)使用自注意力的計(jì)算會(huì)導(dǎo)致計(jì)算量較大,模型訓(xùn)練起來(lái)難度較大[8]。

■1.2 Swin Transformer 算法模型

針對(duì)Transformer 模型參數(shù)量大不易訓(xùn)練,Swin Tran sformer 算法[9]模型通過(guò)采用滑窗操作、層次化構(gòu)建方式構(gòu)建Transformer,極大減少模型參數(shù)量更好實(shí)現(xiàn)輕量化目標(biāo),該模型采用移動(dòng)窗口的形式計(jì)算模型的自注意力,允許進(jìn)行跨窗口連接,降低模型的復(fù)雜度提高模型的運(yùn)行效率。

Swin Transfomer模型由窗口多頭自注意力層(W-ΜSA)、滑動(dòng)窗口多頭自注意力層(SW-ΜSA)、標(biāo)準(zhǔn)化層(LN)、多層感知機(jī)(ΜLP)[10],圖1 為Swin Transfomer 的網(wǎng)絡(luò)結(jié)構(gòu)。

圖1 Swin Transfomer 網(wǎng)絡(luò)結(jié)構(gòu)

基于全局的自注意力計(jì)算會(huì)導(dǎo)致平方倍的復(fù)雜度,當(dāng)進(jìn)行視覺(jué)里的下游任務(wù)時(shí)尤其是密集預(yù)測(cè)型任務(wù)或者非常大尺寸的圖片時(shí),基于全局計(jì)算自注意力的復(fù)雜度會(huì)非常的高,而Swin Transformer 則采用了窗口計(jì)算自注意力。對(duì)于圖2 中的W-ΜSA 和SW-ΜSA 是Block 的核心,當(dāng)使用普通的Μulti-head Self-Attention(ΜSA)模塊時(shí)如圖3 左側(cè)圖時(shí)需要計(jì)算每個(gè)像素與所有像素進(jìn)行運(yùn)算,對(duì)于W-ΜSA模塊如圖3 右側(cè)計(jì)算時(shí)這是將feature map 分為Μ x Μ(圖中Μ 為2)劃分為小的窗口,然后對(duì)每個(gè)窗口單獨(dú)進(jìn)行計(jì)算。

圖2 Swin Transfomer Blocks

圖3 MSA 模塊轉(zhuǎn)變到W—MSA 模塊

對(duì)于采用Swin-Tiny 的結(jié)構(gòu)時(shí),交通信號(hào)燈圖片輸入Swin Transfomer 模型首先在Patch Partition 模塊中進(jìn)行分塊,設(shè)定每4×4 相鄰的像素為Patch,在channel方向進(jìn)行展平,然后圖像經(jīng)過(guò)四個(gè)Stage構(gòu)建特征圖,其中圖像在經(jīng)過(guò)時(shí) Stage1 中要先通過(guò)Linear Embeding 層,剩下三個(gè)stage 都要先經(jīng)過(guò)Patch Μerging 層,圖像經(jīng)過(guò)stage4 時(shí)后會(huì)經(jīng)過(guò)Layer Norm 層、全局池化層以及全連接層最后得到分類后的圖像,其中圖像經(jīng)過(guò)Swin Transfomer Block 如圖2 所示。

對(duì)于ΜSA 和W-ΜSA 的計(jì)算量公式分別如公式1 和公式2 所示。

h 為feature map 的高度、w 為feature map 的寬度、C 為feature map 的深度,Μ 為每個(gè)窗口的大小,通過(guò)公式對(duì)比發(fā)現(xiàn)W-ΜSA 計(jì)算量相對(duì)于ΜSA 大幅度減少。

引入W-ΜSA 模塊是為了減少計(jì)算量,但是采用W-ΜSA模塊時(shí),會(huì)存在像素只在每個(gè)窗口內(nèi)進(jìn)行自注意力計(jì)算,而窗口與窗口之間是無(wú)法進(jìn)行信息傳遞的。為了解決這個(gè)問(wèn)題,Shifted Windows Μulti-Head Self-Attention(SW-ΜSA)模塊,將W-ΜSA 進(jìn)行偏移如圖4 所示,當(dāng)窗口發(fā)生偏移,窗口之間能進(jìn)行信息交流,SW-ΜSA 模塊有效解決不同窗口之間無(wú)法進(jìn)行信息交流的問(wèn)題。

圖4 W—MSA 模塊轉(zhuǎn)變到SW—MSA 模塊

2 信號(hào)燈圖像分類實(shí)驗(yàn)與分析

■2.1 實(shí)驗(yàn)環(huán)境配置

基于Swin Transfomer 模型進(jìn)行交通信號(hào)燈圖像分類算法采用的實(shí)驗(yàn)環(huán)境Windows10,顯卡顯存為11GB,模型訓(xùn)練時(shí)GPU 采用NVIDIA GeForce RTX 2080Ti,軟件環(huán)境選擇 pycharm 腳本編輯器,學(xué)習(xí)框架為PyTorch。

■2.2 交通信號(hào)燈數(shù)據(jù)集

在進(jìn)行圖像分類識(shí)別的算法研究中,合適數(shù)據(jù)集的選取是進(jìn)行研究的基礎(chǔ),數(shù)據(jù)集選取選取應(yīng)該選取類別均衡、使用場(chǎng)景普及化、數(shù)據(jù)量大等優(yōu)點(diǎn)數(shù)據(jù)集選取不標(biāo)準(zhǔn)訓(xùn)練過(guò)程中容易出現(xiàn)飽和和過(guò)擬合的現(xiàn)象,會(huì)引起模型應(yīng)用范圍小,泛化能力不足等問(wèn)題。根據(jù)日常所見(jiàn)的交通信號(hào)燈,制作數(shù)據(jù)集圖片的標(biāo)志分別為green、red、 yellow,數(shù)據(jù)集在制作時(shí)采取隨機(jī)數(shù)據(jù)增強(qiáng)的方式,將部分圖像進(jìn)行旋轉(zhuǎn)、模糊以及裁剪等操作,使用數(shù)據(jù)增強(qiáng)后數(shù)據(jù)集包含訓(xùn)練照片2400 張,其中紅燈、綠燈、黃燈圖片各800 張。驗(yàn)證照片600 張,其中紅燈、綠燈、黃燈圖片各200 張,實(shí)驗(yàn)中部分?jǐn)?shù)據(jù)集圖片如圖5 所示。

圖5 交通信號(hào)燈圖

■2.3 模型訓(xùn)練

在模型訓(xùn)時(shí),選擇合適的學(xué)習(xí)率、優(yōu)化方式、損失函數(shù)進(jìn)行訓(xùn)練,借助不同的數(shù)據(jù)增強(qiáng)方式,可以增加模型對(duì)數(shù)據(jù)的敏感力。在進(jìn)行數(shù)據(jù)集訓(xùn)練時(shí)為加快模型收斂,需要先加載預(yù)訓(xùn)練權(quán)重,加載swin_tiny_patch4_window7_224預(yù)訓(xùn)練權(quán)重時(shí),如當(dāng)輸入圖片為224×224×3 圖片進(jìn)行前向傳播時(shí),圖片經(jīng)過(guò)Patch Partition 模塊后圖片變?yōu)?6×56×48,此時(shí)Patch Partition 模塊相當(dāng)于大小為4×4,步長(zhǎng)為4 卷積塊。56×56×48 的圖像繼續(xù)前向傳播通過(guò)Linear Embeding 層對(duì)每個(gè)像素的channel 數(shù)據(jù)做線性變換,此時(shí)圖像為56×56×96,經(jīng)過(guò)stage1 時(shí)圖像為56×56×96,經(jīng)過(guò)stage2 時(shí)圖像為28×28×192,經(jīng)過(guò)stage3 時(shí)圖像為14×14×384,經(jīng)過(guò)stage4 時(shí)圖像為7×7×768,stage4 輸出值經(jīng)過(guò)Layer Norm 層、全局池化層以及全連接層最后得到分類后的結(jié)果。

圖像在經(jīng)過(guò)四個(gè)Stage 時(shí),除Stage1 中先通過(guò)一個(gè)Linear Embeding 層外,剩下stage 都是直接經(jīng)過(guò)Patch Μerging 層然后進(jìn)行下采樣。Swin Transformer Block 包含兩種結(jié)構(gòu),分別是W-ΜSA 結(jié)構(gòu)和SW-ΜSA 結(jié)構(gòu),這兩個(gè)結(jié)構(gòu)是成對(duì)使用的,因此堆疊Swin Transformer Block的次數(shù)是偶數(shù)。

利用制作完成后交通信號(hào)燈數(shù)據(jù)集,進(jìn)行Swin Transfomer 模型圖像分類算法對(duì)數(shù)據(jù)集進(jìn)行模型訓(xùn)練。模型訓(xùn)練過(guò)程中分為30 個(gè) epoch 進(jìn)行訓(xùn)練,Batchsize 設(shè)置為8,Swin Transfomer 模型的參數(shù)如表1 所示。

訓(xùn)練時(shí)為加快模型收斂添加預(yù)訓(xùn)練權(quán)重。數(shù)據(jù)集訓(xùn)練時(shí)需要進(jìn)行不斷地調(diào)節(jié)參數(shù)是訓(xùn)練過(guò)程不斷進(jìn)行優(yōu)化,在訓(xùn)練的前期階段訓(xùn)練時(shí)采用學(xué)習(xí)率較大的量級(jí),當(dāng)訓(xùn)練過(guò)程后期可以采用相對(duì)之前學(xué)習(xí)率較小的量級(jí),其次當(dāng)考慮動(dòng)量對(duì)訓(xùn)練過(guò)程的影響,當(dāng)對(duì)數(shù)據(jù)集訓(xùn)練達(dá)到瓶頸時(shí)修改動(dòng)量以提高預(yù)測(cè)精度。在對(duì)訓(xùn)練集進(jìn)行30 次訓(xùn)練迭代后,取訓(xùn)練權(quán)重中最好的權(quán)重進(jìn)行模型的驗(yàn)證,獲得最優(yōu)的訓(xùn)練模型,訓(xùn)練過(guò)程如圖6 所示。

圖6 Swin Transfomer 訓(xùn)練過(guò)程

■2.4 結(jié)果與分析

本次研究訓(xùn)練結(jié)果的評(píng)價(jià)指標(biāo)是準(zhǔn)確率(Accuracy)進(jìn)行評(píng)價(jià),準(zhǔn)確率計(jì)算公式如下所示:

其中,TP為被劃分為正類且判斷正確的個(gè)數(shù),TN為被劃分為負(fù)類且判斷正確個(gè)數(shù),F(xiàn)P為被劃分為正類且判斷錯(cuò)誤的個(gè)數(shù),F(xiàn)N為被劃分為負(fù)類且判斷錯(cuò)誤個(gè)數(shù)。

在對(duì)交通信號(hào)燈進(jìn)行預(yù)測(cè)時(shí),選取圖片需要考慮不同光線、不同場(chǎng)景、不同時(shí)間、不同角度中實(shí)際情況。在選取圖片驗(yàn)證結(jié)果時(shí)選取沒(méi)有參與數(shù)據(jù)集訓(xùn)練圖片進(jìn)行驗(yàn)證,使用Swin Transfomer模型在交通信號(hào)燈數(shù)據(jù)集進(jìn)行訓(xùn)練驗(yàn)證,交通信號(hào)燈圖像分類測(cè)試如圖7 所示。

圖7 Swin Transfomer 圖像分類測(cè)試結(jié)果

從測(cè)試圖7 可以看出,圖像經(jīng)過(guò)Swin Transfomer 模型訓(xùn)練后可以達(dá)到較好的效果,隨機(jī)選取紅綠燈圖像進(jìn)行驗(yàn)證,模型能很好的進(jìn)行預(yù)測(cè)。

3 結(jié)語(yǔ)

Transformer 模型最開(kāi)始應(yīng)用于處理自然語(yǔ)言領(lǐng)域,Transformer 可以采集全集信息相比于CNN 減少對(duì)外部信息的依賴,Transfomer 模型得到極大關(guān)注。本研究基于Swin Transfomer 模型圖像分類算法,通過(guò)交通信號(hào)燈數(shù)據(jù)集選取與制作、數(shù)據(jù)集訓(xùn)練、測(cè)試結(jié)果驗(yàn)證Swin Transfomer 模型在圖像分類中有很好的應(yīng)用。但Swin Transfomer 模型在實(shí)際應(yīng)用中存在的諸多挑戰(zhàn),模型相比于CNN 更加復(fù)雜,參數(shù)量相比于CNN 中的輕量化網(wǎng)絡(luò)依然很大,部署在邊緣端任重而道遠(yuǎn)。

猜你喜歡
信號(hào)燈注意力交通
讓注意力“飛”回來(lái)
繁忙的交通
交通信號(hào)燈
小小交通勸導(dǎo)員
信號(hào)燈為什么選這三個(gè)顏色?
“揚(yáng)眼”APP:讓注意力“變現(xiàn)”
A Beautiful Way Of Looking At Things
安裝在路面的交通信號(hào)燈
閱讀理解三則