中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

網(wǎng)站空間續(xù)費合同中山排名推廣

網(wǎng)站空間續(xù)費合同,中山排名推廣,wordpress 適合程序員,qq發(fā)網(wǎng)站鏈接怎么做Swin Transformer 是一種基于 Transformer 的視覺模型,由 Microsoft 研究團隊提出,旨在解決傳統(tǒng) Transformer 模型在計算機視覺任務(wù)中的高計算復(fù)雜度問題。其全稱是 Shifted Window Transformer,通過引入分層架構(gòu)和滑動窗口機制,S…

Swin Transformer 是一種基于 Transformer 的視覺模型,由 Microsoft 研究團隊提出,旨在解決傳統(tǒng) Transformer 模型在計算機視覺任務(wù)中的高計算復(fù)雜度問題。其全稱是 Shifted Window Transformer,通過引入分層架構(gòu)和滑動窗口機制,Swin Transformer 在性能和效率之間取得了平衡,廣泛應(yīng)用于圖像分類、目標(biāo)檢測、分割等視覺任務(wù),稱為新一代的backbone,可直接套用在各項下游任務(wù)中。在Swin Transformer中,提供大、中、小不同版本模型,可以進行自由選擇合適的使用。

論文原文:Swin Transformer: Hierarchical Vision Transformer using Shifted Windows

1.??介紹

????????Transformer 最初在自然語言處理(NLP)領(lǐng)域大獲成功,但直接將 Transformer 應(yīng)用于計算機視覺任務(wù)存在很多挑戰(zhàn)。傳統(tǒng)Transformer中,拿到了圖像數(shù)據(jù),將圖片進行劃分成一個個patch,盡可能patch細一些。但是圖像中像素點太多了,如果需要更多的特征,就必須構(gòu)建很長的序列。而越長的序列算起注意力肯定越慢,自注意力機制的計算復(fù)雜度是O(n^2),當(dāng)處理高分辨率圖像時,這種復(fù)雜度會快速增長,這就導(dǎo)致了效率問題。

????????而且圖像中許多視覺信息依賴于局部關(guān)系,而標(biāo)準 Transformer 處理的是全局關(guān)系,可能無法有效捕獲局部特征。Swin Transformer便采用窗口和分層的形式來替代長序列的方法,CNN中經(jīng)常提到感受野,在Transformer中對應(yīng)的就是分層。也就是說,我們可以將當(dāng)前這件事做L次(Lx),每次都會兩兩進行合并,向量數(shù)越來越小(400個token-200個token-100個token),窗口的大小也會增大。分層操作也就是,第一層的時候token很多,第二層合并token,第三層合并token,就像我們的卷積和池化的操作。而在傳統(tǒng)的Transformer中,第一層怎么做,第二層第三層也會采用同樣的尺寸進行,都是一樣的操作。

2. Swin Transformer 整體架構(gòu)

2.1. Patch Embedding

????????在 Swin Transformer 中,Patch Embedding 負責(zé)將輸入圖像分割成多個小塊(patches),并將這些小塊的像素值嵌入到一個高維空間中,形成適合 Transformer 處理的特征表示。在傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)(CNN)中,卷積操作可以用來提取局部特征。在 Swin Transformer 中,為了將輸入圖像轉(zhuǎn)化為適合 Transformer 模型處理的 patch 序列,首先對輸入圖像進行分塊。假設(shè)輸入圖像的大小為 224x224x3,其通過一個卷積操作實現(xiàn)。卷積操作可以將每個局部區(qū)域的像素值映射為一個更高維的特征向量。假設(shè)輸入圖像大小為 224x224x3,應(yīng)用一個卷積層,參數(shù)為 Conv2d(3, 96, kernel_size=(4, 4), stride=(4, 4)),這表示卷積核的大小是 4x4,步長是 4,輸入的通道數(shù)是 3(RGB圖像),輸出的通道數(shù)是 96。卷積后,圖像的空間維度會變小,輸出的特征圖的尺寸會變?yōu)?56x56(通過計算:(224 - 4) / 4 + 1 = 56)。所以,卷積后的輸出大小是 56x56x96,這表示每個空間位置(56x56)都有一個96維的特征向量。

????????在 Swin Transformer 中,通常將圖像通過卷積操作分割成不重疊的小塊(patches)。每個小塊對應(yīng)一個特征向量。例如,56x56x96 的輸出可以視為有 3136 個 patch,每個 patch 是一個 96 維的向量。這些特征向量將作為 Transformer 模型的輸入序列。根據(jù)不同的卷積參數(shù)(如 kernel_size 和 stride),你可以控制生成的 patch 的數(shù)量和每個 patch 的維度。例如,如果使用更小的卷積核和步長,可以得到更細粒度的 patch,反之則可以得到較大的 patch。

  • kernel_size 決定了每個 patch 的空間大小。
  • stride 決定了每個 patch 之間的間隔,即步長。

2.2. window_partition

????????在 Swin Transformer 中,圖像的特征表示不僅僅是通過 Patch Embedding 來獲得,還通過 窗口劃分(Window Partition) 來進一步細化和處理,通過窗口內(nèi)的局部注意力機制來增強計算效率并捕捉局部特征。

????????假設(shè)輸入的圖像經(jīng)過卷積處理后得到了大小為 56x56x96 的特征圖,將這個特征圖劃分為多個小窗口(window),每個窗口包含一部分局部信息,其中窗口大小為7x7,特征圖大小為56x56。為了將特征圖劃分成大小為 7x7 的窗口,我們首先計算在空間維度(高和寬)上可以分成多少個窗口,水平和垂直方向上,每個 7x7 窗口可以覆蓋 56 / 7 = 8 個窗口(總共 8x8 = 64 個窗口),窗口內(nèi)部的特征圖由 96 個通道組成。因此,在劃分后,特征圖的維度將變?yōu)?(64, 7, 7, 96),其中:

  • 64 表示窗口的數(shù)量(即 8x8 = 64 個窗口)。
  • 7x7 是每個窗口的空間維度。
  • 96 是每個窗口內(nèi)的特征通道數(shù)。

????????在 Swin Transformer 中,Token 通常指的是圖像中的局部特征,每個 Token 是圖像的一個小區(qū)域。在 Window Partition 過程中,我們將整個圖像的 Token 重新組織成窗口(Window)。之前每個 Token 對應(yīng)一個圖像位置,現(xiàn)在每個 Token 對應(yīng)一個窗口的內(nèi)部特征。所以,原來每個 Token(如卷積后的每個空間位置)代表了圖像的一部分信息,現(xiàn)在我們通過窗口劃分來捕捉更大范圍的局部信息。這種劃分有助于模型專注于圖像的局部結(jié)構(gòu),同時減少計算量,因為每個窗口只在局部范圍內(nèi)進行注意力計算。

2.3. W-MSA(Windwow multi-head self attention)

????????在 Swin Transformer 中,W-MSA (Window Multi-Head Self Attention) 是關(guān)鍵的注意力機制,它通過在每個窗口內(nèi)部獨立地計算自注意力(Self-Attention)來減少計算復(fù)雜度,并捕捉局部特征。

????????通過 Window Partition 將特征圖劃分為 64 個窗口,每個窗口的尺寸為 7x7,并且每個位置的特征通道數(shù)為 96,因此每個窗口的形狀為 (7, 7, 96),這些窗口將作為 W-MSA 的輸入。在 Multi-Head Self-Attention 中,首先需要將輸入特征矩陣(窗口內(nèi)的特征)通過三個不同的矩陣進行線性變換,得到 查詢(Q)、鍵(K)值(V),這三個矩陣用于計算注意力得分。對于每個頭(Head),計算過程是獨立的。假設(shè)有 3 個頭,那么每個頭的輸入特征維度為 96 / 3 = 32,因為 96 維的輸入被平均分成了 3 個頭,每個頭負責(zé) 32 維的特征。在 W-MSA 中,針對每個窗口獨立計算自注意力得分,計算方法如下:

  • 對每個窗口中的 49 個像素點(即每個位置的特征向量)進行查詢Q、鍵K、值V的計算。

  • 自注意力得分(Attention Score) 是通過計算查詢與鍵的點積(或者其他相似度度量)得到的,這可以表示為:

    \text{Attention Score} = \frac{Q \cdot K^T}{\sqrt{d_k}}

    其中,d_k 是每個頭的維度(在這里是 32),Q 和 K 的乘積衡量了每個位置之間的相似性。

  • Softmax:通過 Softmax 操作將得分歸一化,使其成為概率分布,得到每個位置與其他位置的相關(guān)性。

  • 加權(quán)值(Weighted Sum):使用得分對值V進行加權(quán)求和,得到每個位置的最終輸出表示。

????????每個頭的自注意力計算都會產(chǎn)生一個形狀為 (64, 3, 49, 49) 的結(jié)果,其中,64 表示窗口的數(shù)量,3 表示頭的數(shù)量,49 是每個窗口中位置的數(shù)量(7x7),49 代表每個位置對其他位置的注意力得分(自注意力矩陣)。因此,每個頭會計算出每個窗口內(nèi)所有位置之間的自注意力得分,輸出的形狀為 (64, 3, 49, 49)。

2.4. window_reverse

? ?Window Reverse 操作的目的是將計算得到的 (64, 49, 96) 特征圖恢復(fù)回原始的空間維度 (56, 56, 96)。為此,我們需要將每個窗口的 49 個位置(7x7)重新排列到原始的圖像空間中。步驟:

  • Reshape 操作: 每個窗口的特征圖形狀是 (49, 96),我們將其轉(zhuǎn)換成 (7, 7, 96) 的形狀,表示每個窗口中的每個像素點都有一個 96 維的特征向量。

  • 按窗口拼接: 將所有 64 個窗口按照它們在特征圖中的位置重新排列成 56x56 的大特征圖。原始的輸入特征圖大小是 56x56,這意味著 64 個窗口將按照 8x8 的網(wǎng)格排列,并恢復(fù)到一個 (56, 56, 96) 的特征圖。

????????在 Window Reverse 操作后,恢復(fù)得到的特征圖形狀是 (56, 56, 96),這與卷積后的特征圖的形狀一致。56x56 是恢復(fù)后的空間維度,代表每個像素點在特征圖中的位置;96 是每個像素點的特征維度,表示每個位置的特征信息。

2.5. SW-MASA

為什么要滑動窗口(Shifted Window)?

????????原始的 Window MSA 將圖像劃分為固定的窗口(例如 7x7),并在每個窗口內(nèi)計算自注意力。這樣做的一個問題是每個窗口內(nèi)部的信息相對封閉,沒有與相鄰窗口之間的信息交流。因此,模型容易局限于各自的小區(qū)域,無法充分捕捉不同窗口之間的關(guān)聯(lián)。

????????通過引入 滑動窗口Shifted Window)機制,窗口在原來位置的基礎(chǔ)上向四個方向移動一部分,重疊區(qū)域與原窗口有交集。這樣,原本相互獨立的窗口就可以共享信息,增強了模型的表達能力和全局感知。

位移操作(Shift Operation)

????????位移操作的細節(jié)如下:

  • 初始的窗口被劃分為 4x4 的塊(例如 7x7 窗口),每個塊進行獨立的自注意力計算。
  • 在進行位移時,原來 4x4 的窗口將被平移,變成新的大小為 9x9 的窗口,窗口重疊區(qū)域包含了不同窗口之間的信息。
  • 通過平移,模型能獲取到更廣泛的信息,使得窗口之間能夠通過共享信息來融合彼此的特征,避免局部化。

????????Shifted Window MSA 會導(dǎo)致計算量的增加,特別是在窗口滑動后,窗口數(shù)量從 4x4 變?yōu)?9x9,計算量幾乎翻倍。為了控制計算量的增長,可以通過 mask 操作 來減少不必要的計算。在位移后,窗口之間會重疊。為了避免重復(fù)計算,我們可以使用 mask 來屏蔽掉不需要計算的部分。在計算注意力時,對于每個位置的 QK 的匹配,使用 softmax 時,設(shè)置不需要計算的位置的值為負無窮,這樣對應(yīng)位置的注意力值將接近零,不會對結(jié)果產(chǎn)生影響。

????????在進行 SW-MSA 后,輸出的特征圖的形狀仍然是 56x56x96,與輸入特征圖的大小一致。通過 shifted windowmask 操作,模型不僅保留了原始的窗口內(nèi)的自注意力計算,還增強了窗口之間的信息交換和融合。即使窗口被移動了,經(jīng)過計算后的特征也需要回到其原本的位置,也就是還原平移,保持圖像的完整性。

2.6. PatchMerging

????????PatchMergingSwin Transformer 中的一種下采樣操作,但是不同于池化,這個相當(dāng)于間接的(對H和W維度進行間隔采樣后拼接在一起,得到H/2,W/2,C*4),目的是將輸入特征圖的空間維度(即高和寬)逐漸減小,同時增加通道數(shù),從而在保持計算效率的同時獲得更高層次的特征表示。它是下采樣的過程,但與常規(guī)的池化操作不同,PatchMerging 通過將相鄰的 patch 拼接在一起,并對拼接后的特征進行線性變換,從而實現(xiàn)下采樣。具體來說,在 Swin Transformer 中,隨著網(wǎng)絡(luò)層數(shù)的加深,輸入的特征圖會逐漸減小其空間尺寸(即 H 和 W 維度),而同時增加其通道數(shù)(即 C 維度),以便模型可以捕捉到更為復(fù)雜的高層次信息。

????????假設(shè)輸入的特征圖形狀為 H x W x CPatchMerging 通過以下步驟來實現(xiàn)下采樣和通道數(shù)擴展:

  • 分割和拼接(Splitting and Concatenation)

    • 輸入的特征圖會按照一定的步長(通常是 2)進行分割,即對每個 2x2 的 patch 進行合并。
    • 這樣原本的 H x W 的空間尺寸會縮小一半,變成 H/2 x W/2。
    • 然后,將每個 2x2 的 patch 內(nèi)部的特征進行拼接,得到新的特征維度。假設(shè)原始通道數(shù)為 C,拼接后的通道數(shù)為 4C。
  • 卷積操作

    • 對拼接后的特征進行 卷積,以進一步增強特征表達。卷積操作用于轉(zhuǎn)換特征空間,雖然通道數(shù)增加了,但通過卷積,特征能夠更加豐富。

2.7. 分層計算

????????在 Swin Transformer 中,模型的每一層都會進行下采樣操作,同時逐步增加通道數(shù)。每次 PatchMerging 后的特征圖會作為輸入進入下一層的 Attention 計算。通過這種方式,Swin Transformer 能夠逐漸提取到越來越復(fù)雜的特征,同時保持計算效率。每一層的 PatchMerging 操作實際上是將輸入的特征圖通過 線性變換(通常是卷積)合并成更高維度的特征圖,從而為后續(xù)的注意力計算提供更豐富的表示。

? ? ? ? 從圖中可以得到,通道數(shù)在每層中并不是從C變成4C而是2C,這是因為中間又加了一層卷積操作。

3.?實驗結(jié)果

????????在ImageNet22K數(shù)據(jù)集上,準確率能達到驚人的86.4%。另外在檢測,分割等任務(wù)上表現(xiàn)也很優(yōu)異。

參考資料:

【深度學(xué)習(xí)】詳解 Swin Transformer (SwinT)-CSDN博客

深度學(xué)習(xí)之Swin Transformer學(xué)習(xí)篇(詳細 - 附代碼)_swintransformer訓(xùn)練-CSDN博客

圖解Swin Transformer - 知乎

【論文精讀】Swin Transformer - 知乎

ICCV2021最佳論文:Swin Transformer論文解讀+源碼復(fù)現(xiàn),迪哥帶你從零解讀霸榜各大CV任務(wù)的Swin Transformer模型!_嗶哩嗶哩_bilibili

http://www.risenshineclean.com/news/42078.html

相關(guān)文章:

  • 南京做網(wǎng)站南京樂識贊網(wǎng)絡(luò)營銷是什么工作主要干啥
  • 網(wǎng)站開發(fā)教學(xué)網(wǎng)站百度云網(wǎng)盤資源搜索
  • 騰訊企點app下載安裝關(guān)鍵詞優(yōu)化公司電話
  • 馬鞍山網(wǎng)站制作公司阿里云免費建站
  • 武漢市市政建設(shè)集團網(wǎng)站網(wǎng)站搜索排名靠前
  • 武漢建設(shè)一個網(wǎng)站多少錢汕頭seo計費管理
  • 網(wǎng)站代碼開發(fā)文檔模板媒體:北京不再公布各區(qū)疫情數(shù)據(jù)
  • 正版搜索引擎優(yōu)化澤成杭州seo網(wǎng)站推廣排名
  • 給網(wǎng)站做推廣一般花多少錢百度競價排名的利與弊
  • 重慶模板網(wǎng)站多少錢免費網(wǎng)站制作教程
  • 最優(yōu)網(wǎng)絡(luò)做網(wǎng)站360公司官網(wǎng)首頁
  • 做裝修網(wǎng)站推薦客戶靠譜嗎百度推廣獲客
  • 贛州章貢區(qū)房價google優(yōu)化排名
  • 鎮(zhèn)江網(wǎng)站建設(shè)策劃被公司優(yōu)化掉是什么意思
  • 做網(wǎng)站需要哪些資料百度廣告客服電話
  • 怎么用wordpress做網(wǎng)站seo專員工資一般多少
  • 百度云網(wǎng)站建設(shè)教程視頻域名seo站長工具
  • 縣城購物網(wǎng)站網(wǎng)絡(luò)營銷策略主要包括
  • 怎樣設(shè)計靜態(tài)網(wǎng)站頁面谷歌官方app下載
  • 獨立電商網(wǎng)站seo建站流程新手搭建網(wǎng)站第一步
  • 上海徐匯做網(wǎng)站寧波公司做網(wǎng)站
  • 梅河口做網(wǎng)站在百度做廣告多少錢
  • 哪里可以學(xué)酷家樂設(shè)計seo數(shù)據(jù)優(yōu)化
  • wordpress pingaso優(yōu)化平臺
  • 網(wǎng)站開發(fā)計入什么費用企點qq
  • 淘寶的網(wǎng)站建設(shè)品牌推廣手段
  • 做查詢新生寢室的網(wǎng)站外貿(mào)網(wǎng)絡(luò)推廣怎么做
  • 建設(shè)證件查詢官方網(wǎng)站長春頭條新聞今天
  • 做大數(shù)據(jù)和網(wǎng)站開發(fā)的前景seo網(wǎng)絡(luò)優(yōu)化推廣
  • wordpress 目錄 導(dǎo)航站青島 google seo