最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

論文閱讀2.0 OCNN 基礎(chǔ)知識填坑

2021-03-28 20:50 作者:克萊登大學(xué)宅學(xué)博士  | 我要投稿

????? ? ????Orthogonal Convolutional Neural Networks給出了正交卷積的一個等價條件,并給出了實現(xiàn)CNN正交卷積的有效算法,在沒有額外參數(shù)和不增加很多算力情況下,擁有更好的特征表現(xiàn)力、更低的特征相關(guān)性、更均勻的spectrum(頻譜)和增強的魯棒性。

????????算法過兩天再看吧,今天先填一填基礎(chǔ)知識坑。。。。

1.信息熵

????????先給出信息熵的公式:

????????其中p(xi)代表隨機事件xi的概率。

????????先說明什么是信息量,信息量是對信息的度量,就跟時間的度量是秒一樣,當我們考慮一個離散的隨機變量x的時候,當我們觀察到的這個變量的一個具體值的時候,我們接收到了多少信息呢?多少信息用信息量來衡量,我們接受到的信息量跟具體發(fā)生的事件有關(guān)。

????????信息的大小跟隨機事件的概率有關(guān)。越小概率的事情發(fā)生了產(chǎn)生的信息量越大,如湖南產(chǎn)生的地震了;越大概率的事情發(fā)生了產(chǎn)生的信息量越小,如太陽從東邊升起來了。越平常的事情,信息量越小。

????????注意:一個具體事件的信息量應(yīng)該是隨著其發(fā)生概率而遞減的,且不能為負。

????????很容易知道,兩個不相關(guān)的事件,同時觀察獲得的信息量為h(x,y) = h(x) + h(y),兩件事同時發(fā)生的概率為p(x,y) = p(x)*p(y)。根據(jù)上面推導(dǎo),我們很容易看出h(x)一定與p(x)的對數(shù)有關(guān)(因為只有對數(shù)形式的真數(shù)相乘之后,能夠?qū)?yīng)對數(shù)的相加形式)。

????????所以信息量的公式為:

????????公式解釋:

①:負號的原因是,p(x)最大時1,所以h(x)不可能為負,p(x)越小,h(x)越大。

②:底數(shù)為2原因為信息量滿足低概率事件x對應(yīng)于高的信息量。那么對數(shù)的選擇是任意的。我們只是遵循信息論的普遍傳統(tǒng),使用2作為對數(shù)的底。

????????由此我們可以知道,信息量度量的是一個具體事件發(fā)生了所帶來的信息,而熵則是在結(jié)果出來之前對可能產(chǎn)生的信息量的期望——考慮該隨機變量的所有可能取值,即所有可能發(fā)生事件所帶來的信息量的期望。

????????信息熵還可以作為一個系統(tǒng)復(fù)雜程度的度量,如果系統(tǒng)越復(fù)雜,出現(xiàn)不同情況的種類越多,那么他的信息熵是比較大的。


2.多方面理解正則化

????????本質(zhì)上大家都知道,加入正則項是為了避免過擬合

①數(shù)理理解

????????這種處理手段到底是經(jīng)驗上的(比如說,我用這種方法處理了具體數(shù)據(jù)后,得到的結(jié)果確實避免了過擬合,但邏輯上我不能確定對下一個模型下一個數(shù)據(jù)集是否依然適用,以及不確定為什么會產(chǎn)生這樣的結(jié)果)還是理論上的(比如說,不用跑具體數(shù)據(jù),直接就能證明這種方法可以避免過擬合)。換句話說,我們還是回到了對正則項本質(zhì)的討論。

假設(shè)我們考慮一個最簡單的線性模型

,我們比較兩個估計結(jié)果:
(1) 最小二乘估計

(2) 嶺估計

????????那么我們?nèi)绾握f明加入這個正則項后,相較于最小二乘估計,確實避免了過擬合呢?

因為從數(shù)學(xué)上可以證明:

????????注意這里的小于是嚴格的小于。這里的證明是要用到矩陣范數(shù)和向量范數(shù)的相容性。這個性質(zhì)本身告訴了我們這樣一個及其重要的本質(zhì):加入正則項后,估計出的(向量)參數(shù)的長度變短了(數(shù)學(xué)上稱為shrinkage)。換句話說,長度變短了就意味著,β~其中的某些分量在總體程度上比β^的分量變小了。極端來說,向量β~中的某些分量可能(因為也可能是因為每個分量都變小一點點最后造成整體長度變小)被壓縮到了0。

雖然這里其實還沒有完整說明我們實現(xiàn)了避免過擬合,但至少從某種程度上說,加入正則項和的參數(shù)估計是符合我們之前的預(yù)定目標的,即用盡量少的變量去擬合數(shù)據(jù)。

②機器學(xué)習(xí)理解

? ?復(fù)制一下,參考鏈接再最下面。

3.CNN中的特征冗余

?????????ResNet50 中的 feature map,可以看到很多的 feature map 是很相似的,比如圖中標出的紅、綠、藍三組,這也說明 feature map 中存在較多的冗余。有關(guān)優(yōu)化的論文有GhostNet,Split to be slim,Tied Block Convolution,都是20年的,以后有時間看看。包括本文,也是對特征冗余開展工作。



4.正交矩陣和正交化操作

正交矩陣

我這也能忘了。。。

性質(zhì):

(1)等式兩邊取行列式,得到A的行列式值是±1

(2)正交矩陣A的行向量組以及列向量組都是標準正交的向量組

矩陣正交化操作

????????CNN的權(quán)值正交性和特征正交性,在一定程度上是和特征表達的差異性存在一定聯(lián)系的。本文是是在訓(xùn)練中對權(quán)值添加正交正則提高訓(xùn)練穩(wěn)定性,另外還有一篇DeCov Loss老論文,15年的。方法是對特征添加正交性的損失抑制過擬合。

????????什么是正交化呢?我們知道搭建建立機器學(xué)習(xí)系統(tǒng)的挑戰(zhàn)之一是,你可以嘗試和改變的東西太多太多了,有很多的超參數(shù)可以調(diào)。

????????以下來自吳恩達深度學(xué)習(xí)。你有一個老式電視,有很多旋鈕可以用來調(diào)整圖像的各種性質(zhì),所以對于這些舊式電視,可能有一個旋鈕用來調(diào)圖像垂直方向的高度,另外有一個旋鈕用來調(diào)圖像寬度,也許還有一個旋鈕用來調(diào)梯形角度,還有一個旋鈕用來調(diào)整圖像左右偏移,還有一個旋鈕用來調(diào)圖像旋轉(zhuǎn)角度之類的。電視設(shè)計師花了大量時間設(shè)計電路,那時通常都是模擬電路來確保每個旋鈕都有相對明確的功能。如一個旋鈕來調(diào)整這個(高度),一個旋鈕調(diào)整這個(寬度),一個旋鈕調(diào)整這個(梯形角度),以此類推。

????????相比之下,想象一下,如果你有一個旋鈕調(diào)的是0.1x表示圖像高度,+0.3x表示圖像寬度,-1.7x表示梯形角度,+0.8x表示圖像在水平軸上的坐標之類的。如果你調(diào)整這個(其中一個)旋鈕,那么圖像的高度、寬度、梯形角度、平移位置全部都會同時改變,如果你有這樣的旋鈕,那幾乎不可能把電視調(diào)好,讓圖像顯示在區(qū)域正中。

????????所以在這種情況下,正交化指的是電視設(shè)計師設(shè)計這樣的旋鈕,使得每個旋鈕都只調(diào)整一個性質(zhì),這樣調(diào)整電視圖像就容易得多,就可以把圖像調(diào)到正中

????????另外一個例子就是你想想學(xué)車的時候,一輛車有三個主要控制,第一是方向盤,方向盤決定你往左右偏多少,還有油門和剎車。就是這三個控制,其中一個控制方向,另外兩個控制你的速度,這樣就比較容易解讀。知道不同控制的不同動作會對車子運動有什么影響。

????? ? 想象一下,如果有人這么造車,造了個游戲手柄,手柄的一個軸控制的是0.3×轉(zhuǎn)向角-速度,然后還有一個軸控制的是2×轉(zhuǎn)向角+0.9×車速,理論上來說,通過調(diào)整這兩個旋鈕你是可以將車子調(diào)整到你希望得到的角度和速度,但這樣比單獨控制轉(zhuǎn)向角度,分開獨立的速度控制要難得多。? ?????? ??

????????正交化的概念是指,你可以想出一個維度,這個維度你想做的是控制轉(zhuǎn)向角,還有另一個維度來控制你的速度,那么你就需要一個旋鈕盡量只控制轉(zhuǎn)向角,另一個旋鈕,在這個開車的例子里其實是油門和剎車控制了你的速度。但如果你有一個控制旋鈕將兩者混在一起,比如說這樣一個控制裝置同時影響你的轉(zhuǎn)向角和速度,同時改變了兩個性質(zhì),那么就很難令你的車子以想要的速度和角度前進。然而正交化之后,正交意味著互成90度。設(shè)計出正交化的控制裝置,最理想的情況是和你實際想控制的性質(zhì)一致,這樣你調(diào)整參數(shù)時就容易得多??梢詥为氄{(diào)整轉(zhuǎn)向角,還有你的油門和剎車,令車子以你想要的方式運動。

????????如果你的算法在成本函數(shù)上不能很好地擬合訓(xùn)練集,你想要一個旋鈕,或者一組特定的旋鈕,這樣你可以用來確保你的可以調(diào)整你的算法,讓它很好地擬合訓(xùn)練集,所以你用來調(diào)試的旋鈕是你可能可以訓(xùn)練更大的網(wǎng)絡(luò),或者可以切換到更好的優(yōu)化算法,比如Adam優(yōu)化算法。

????? ? 在機器學(xué)習(xí)中,如果你可以觀察你的系統(tǒng),然后說這一部分是錯的,它在訓(xùn)練集上做的不好、在開發(fā)集上做的不好、它在測試集上做的不好,或者它在測試集上做的不錯,但在現(xiàn)實世界中不好,這就很好。必須弄清楚到底是什么地方出問題了,然后我們剛好有對應(yīng)的旋鈕,或者一組對應(yīng)的旋鈕,剛好可以解決那個問題,那個限制了機器學(xué)習(xí)系統(tǒng)性能的問題。

????????感覺后續(xù)還要再看看。

5.Gram矩陣理解

????????假設(shè)A是m×n的的矩陣,列向量 Gram 矩陣用列向量A表示:

????????行向量同理就不說了。

????????很容易看出,便于理解,在style transfer 當中,什么是風(fēng)格,存在自己特性的才叫做風(fēng)格。因此如何去度量這個自己的特性呢,自己的特點越突出,別人的越不突出最好。因此論文當中這樣去做:

????????這樣我們知道:當同一個維度上面的值相乘的時候原來越小酒變得更小,原來越大就變得越大;二不同維度上的關(guān)系也在相乘的表達當中表示出來。

這不就是gram矩陣嗎^ ^。所以要度量兩個圖像風(fēng)格的差異,只需比較他們Gram Matrix的差異即可。

5.doubly block-Toeplitz matrix矩陣理解

????????首先我們可以把卷積看成:

????????展開的kernel寫成矩陣C的形式:

????????所以矩陣卷積可以寫成下面形式,flat表示將矩陣展平為一維向量。

????????我們可以看出這個矩陣分割以下:

????????我們看到每一個子塊Hi都是一個循環(huán)矩陣(circulant matrix),而整個矩陣則是這些子塊的循環(huán)矩陣。因此我們把這樣的矩陣叫做雙塊循環(huán)矩陣(doubly block circulant matrix)

????????離散卷積可以被認為是矩陣的乘法。只是,這個矩陣的元素是有限制的。例如,對于一維卷積而言,矩陣的每一行元素與上一行錯位一個位置。這種矩陣叫做托普勒斯矩陣(Toeplitz matrix)。在二維卷積中,對應(yīng)的則是雙塊循環(huán)矩陣(doubly block circulant matrix)。這些矩陣的一些元素受到相等的約束。除此之外,我們也看到這些矩陣是很稀疏的(大多數(shù)位置是0)。原因是我們的kernel通常要比input小很多。把卷積用矩陣乘法的視角來解讀似乎對我們實現(xiàn)卷積沒什么幫助,但是對我們理解卷積和設(shè)計神經(jīng)網(wǎng)絡(luò)卻很有意義。


論文明天再看吧。。。


參考自:https://zhuanlan.zhihu.com/p/26486223

???????????????https://www.zhihu.com/question/20924039/answer/45397882

???????????????https://zhuanlan.zhihu.com/p/296870176

???????????????https://www.jianshu.com/p/61d5b6d22799

???????????????https://zhuanlan.zhihu.com/p/105470826

???????????????https://www.zhihu.com/question/49805962

???????????????https://blog.csdn.net/github_36326955/article/details/72835148



論文閱讀2.0 OCNN 基礎(chǔ)知識填坑的評論 (共 條)

分享到微博請遵守國家法律
磐安县| 五台县| 甘泉县| 武强县| 武平县| 鄂伦春自治旗| 桐梓县| 德兴市| 岳普湖县| 温泉县| 淮北市| 万宁市| 环江| 禹州市| 苍山县| 敦化市| 牟定县| 台东县| 万盛区| 曲麻莱县| 裕民县| 锡林郭勒盟| 靖远县| 商河县| 和政县| 福建省| 阜宁县| 卢龙县| 永福县| 桑日县| 富平县| 多伦县| 宁陵县| 辽源市| 雷山县| 浠水县| 北碚区| 黄龙县| 福泉市| 四会市| 岑巩县|