因為教授可能想讓我做 partial & segmentation,
因為教授可能想讓我做 partial & segmentation,
因為前陣子在審視架構的時候,亂報(X)沒讀熟(O),
所以架構被老師質疑,被遣送回實驗室重讀一遍 DGCNN 怎麼刻 KNN 的部分?
以下的 KNN 程式碼 都是 base on DGCNN 的 model.py 裡面的 KNN function。
前情提要:
1. KNN 要幹嘛?
:拿到兩點的歐式距離。
2. 歐式距離是什麼?
吃公式:
我們塞進 KNN function 的資料 x 會長得像是:
[ Batch_size, Channel, Number_of_point ]
其中 Channel 是資料維度的意思,如果是三維的 x, y ,z 座標,
Channel 就會等於 3。
接下來來看程式碼:
inner = -2*torch.matmul(x.transpose(2, 1), x)
因為 torch.matmul 代表矩陣相乘
ineer 出來的資料尺寸就會是
[ Batch_size, Number_of_point , Number_of_point ]
令 P1 = [ x1, y1, z1], P2 =[ x2, y2, z2]
ineer 所代表的數學意義為
[ x1*x2 + y1*y2 + z1*z2]
再來看第二行程式碼:
xx = torch.sum(x**2, dim=1, keepdim=True)
xx 出來的資料尺寸為
[ Batch_size, 1 , Number_of_point ]
因為 keepdim=True 的關係,所有 sum 起來的資料會存到第一格。
xx 所代表的數學意義為
[x1^2 + y1^2 + z1^2, … , xn^2 + yn^2 + zn^2]
最後一行程式碼就是組合起來,變成歐式距離的平方:
pairwise_distance = -xx - inner - xx.transpose(2, 1)
會變成:
我為什麼要讀這篇論文?
這篇論文可以做什麼?
這篇論文怎麼做?
首先,因為我的 DGCNN 模型遭遇到了訓練瓶頸,
所以我到處找論文來 inprove 模型的準確度。
這篇論文可以加強模型的準確度,前提是 base on ResNet-50。
裡面提到這種架構可以插在任意的 convolution 層中間,
是不會消耗太多計算量的輕量型架構。
這篇論文是從 SE-Net 加強而來,
最主要的差別在於 SE-Net 只對 Channel 做 Attention Module,
而 CBAM 對 Spatial 也做了 Attention Module 並且把它加進來。
整個核心觀念就是用 attention Module 對 CNN 去優化,
至於 Attention Module 是什麼概念可以參考上一篇 SE-Net。
整個架構會長這樣:
![]() |
圖一:CBAM整體架構 |
至於最重要的,為什麼要做 Maxpooling + Avgpooling?
原作者表示:啊這樣可以更精確地分別每個通道的權重…(幹話。
我自己的觀察:
從 PointConv 這篇論文提到 PointNet 的問題在於 Maxpooling 只能提供 global 或是 local 的 Feature。
又 SE-Net 使用 Avgpooling 能夠促進模型的性能。
所以小孩子才做選擇,我們兩種混在一起做撒尿牛丸!
Channel-wise
之前在 【論文筆記】Squeeze-and-Excitation Networks 那篇 遇到過,
這次來很淺的解釋一下 Channel-wise 大概在做什麼?
就我的解釋來看:
Channel-wise 在做 "base on Channel 的分組連接",
目的是減少計算量。
以 【論文筆記】Squeeze-and-Excitation Networks 那篇 來說
我們要使用一顆 H x W x C 的 Feature 來做 Channel-wise,
總共有 C 個 Channel 每個 Channel 自己一組。
分組後的 Channel 再去做 Cov。
大概就是這樣<3
簡介:
Squeeze-and-Excitation Networks(以下簡稱 SENet)是一種類似於 plugin 的概念,
獲得對於 C 個特徵(frature)間的關係,進而提升整體模型的準確率。
方法概要:
Step1
先拿一組 H’ x W’ x C’ 的 feature ,經過 Ftr 後 得到標準輸入 U 。
Step2
想像一下把 U 這顆像生吐司的東西整個壓縮,經過 Fsq 後 變成 1 x 1 x C 的濃縮生吐司資料。
然後這裡做了 channel-wise 的運算,也就是分組 base on C 的概念。
做了以後會得到 C 組的 1 x 1 資料
channel-wise 的概念請點這篇
Step3
因為濃縮生吐司資料的尺寸是 1 x 1 x C ,所以可以想像成有 C 片小土司。
為了減少計算量 + 得到每片吐司 裡面模型的互相關係,所以做 Fex。
得到權重序列 S (1 x 1 x C)
其中 W1,W2 的維度變換是因為 Activation Function 的緣故。
Step4
把權重序列 S 乘上生吐司 U (標準輸入 feature),
讓你的生吐司成為威力加強版!
想像一下,如果拿去做二維邊緣偵測,經過這個 SENet 之後的輪廓理論上會加深。
解釋計算方程式:
Ftr():
Ftr 就是在做捲積運算,算到想要到生吐司尺寸。
Faq():
Zc 就是上文所提到的濃縮生吐司資料,這邊在幹的事情很簡單。
把 H x W 這個二維平面上的每一個點做平均得到一個純量,總共有 C 個純量。
正經且學術上的講法是 Global Average Pooling
Fex():
Fex() 是本文核心重點,利用 Fex() 獲得 Channel feature map 間的關係。
首先要說明 σ 跟 δ 的特殊性關係(#
σ = sigmoid ; δ = ReLU
z 則是等效上面的 Zc
從右邊看起 維度 C 的 濃縮生吐司資料 左乘 W1 出來的資料維度是 1 x 1 x C/r ,
這筆資料做 Sigmoid 後 左乘 W2 又變回 1 x 1 x C 的資料。
最後 ReLU 運算後,得到權重序列 S 。
Fscale():
核心概念概念就是把這串權重序列 S 分配給傻傻的並聯生吐司 U,
文章的 Reference 來自於這兩篇:
(深度學習)SENet(Squeeze-and-Excitation Networks)
SENet(Squeeze-and-Excitation Networks)算法笔记
如果小弟我有寫錯,或是有更好的想法歡迎來信討論~
信箱地址:wuyiulin@gmail.com
點開 Google Play 商店
搜尋 Android system webviwer 解除安裝就好了
Google 在搞
本文更新於 2021/03/23
Ref.https://www.ptt.cc/bbs/MobileComm/M.1616455704.A.7D0.html
今天來開這臺去年買的 ATOM AMP
紅色的是變壓器,
大概有 1.5 塊南僑水晶肥皂那麼大。
Sound as science(#
社群連結小卡
轉到底就是關機,很方便的旋鈕。
本體中規中矩,最喜歡這種造型了!
低調就是讚
以下是這次廢文(#
開箱文(O
所用到的設備:
系統方面: 電腦 -> 電訊分離HUB -> Foxtex HP-A4 —
–> 小黑線 -> Atom
耳機(靈敏度):
A900XLTD (102dB)
M50XBL ( 99dB)
DT990 – 600ohm ( 96dB)
歌曲:
我把我的青春給你 – 好樂團
我們一樣可惜 – 好樂團
I will survive – Gloria Gaynor
Peace Sign – 米津玄師
空に歌えば – amazarashi
limehouse blues – 30週年紀念版收錄
都是來自 Spotify 因為我CD沒收那麼多嘿嘿
正文開始:
DT990 – 600ohm
這臺拿去推 DT990 600ohm
我覺得不行
音量要大概轉到九點,開 high gain。
人聲跟樂器的分離度出不來,感覺糊在一起。
而且很多音出不來,
像是我把我的青春給你前奏第三個音(?)
那下撥弦的音就很難聽到,整首歌就不對惹。
畢…畢竟是 96dB 的難搞傢伙嘛(遭毆
M50X
比 DT990 好推兩倍 的 M50X
我覺得很可以、萬元內組合好聲
這邊比較 A4 直出 跟 接上 Atom 的狀況
沒接:
人聲比較刺、樂器分離度出不來
有接:
人聲修飾變圓潤,樂器分離度出來(但不多)
人聲與樂器會像是被圍了封鎖線一樣,都會後退一點。
感覺瞬態也被吃了一點
音場的部分
有接跟沒接,我覺得是沒差的。
個人感覺 M50X 的本來音場就不大。
這應該也是它好控制的原因吧(?)
A900XLTD
一樣比較 A4直出
很明顯感覺到人聲被修得圓潤了一點,
不過我認為 A4直出、開 low gain 轉到七點半還比較好聽。
因為我拿這支就喜歡聽比較刺激的人聲
優點是這臺聲音很乾淨,
在這麼敏感的耳機上我聽不到雜訊存在。
結論:
優點
1.人聲修飾變圓潤、後退一點
2.人聲與樂器分離度出來
3.很便宜(入手價140$上下,關稅174塊臺幣)
4.體積袖珍、外型平價,適合放辦公室也不會被認為亂花錢。
缺點
1.拿來推非雜食耳機還是不太能聽
2.變壓器有點大顆
3.使用 youtube 的時候會聽得出糟糕的錄音xD
我認為適合買這臺的受眾:
1.想入手第一台擴大機
2.主力耳機很好處理
3.想買一台擴放辦公室
整套系統弄一弄都在萬元內,
就算再買一支 M50X 我覺得都值得。
至於想來拿亂搞地球動圈出拜耳的,
本客家人不建議你亂花錢。
不過我也只是建議而已啦嘿嘿嘿
我還不是買了(#
於是又買了一台 A281(O
以上就是本木耳不專業開箱
有什麼說得不對的地方
麻煩下面指教QQ
穴穴指交
早安,這裡是機掰客家人。