CReLU與PReLU的大體簡介

2021-08-21 23:47:37 字數 1577 閱讀 2207

本次介紹prelu啟用函式,方法來自於何凱明***** 《delving deep into rectifiers:surpassing human-level performance on imagenet classification》.

關於crelu

prelu(parametric rectified linear unit), 顧名思義:帶引數的relu。二者的定義和區別如下圖:

如果ai=0,那麼prelu退化為relu;如果ai是乙個很小的固定值(如ai=0.01),則prelu退化為leaky relu(lrelu)。 有實驗證明,與relu相比,lrelu對最終的結果幾乎沒什麼影響。

(1)prelu只增加了極少量的引數,也就意味著網路的計算量以及過擬合的危險性都只增加了一點點。特別的,當不同channels使用相同的ai時,引數就更少了。

(2)bp更新ai時,採用的是帶動量的更新方式,如下圖:

上式的兩個係數分別是動量和學習率。

需要特別注意的是:更新ai時不施加權重衰減(l2正則化),因為這會把ai很大程度上push到0。事實上,即使不加正則化,試驗中ai也很少有超過1的。

(3)整個**,ai被初始化為0.25。

一種改進relu啟用函式的文章,來自icml2016.

為了看懂上圖。

(1)首先介紹一下余弦相似度(cos距離)的概念

cos距離的取值範圍是 [-1,+1],距離越接近-1,表示兩個向量的方向越相反,即呈負相關關係。

(2)再來介紹一下pair filter的定義

現象:網路的前部,引數的分布有更強的負相關性(類似於正負對立)。隨著網路變深,這種負相關性逐步減弱。

結論:網路的前部,網路傾向於同時捕獲正負相位的資訊,但relu會抹掉負響應。 這造成了卷積核會存在冗餘。

2. crelu

crelu的定義很簡單:

輸出維度會自動加倍。 比如 −3→[0,3] 3→[3,0]

在網路中的實現也很簡單,甚至不用修改**(通過scale層取反再經過一次relu)

Filter與Interceptor的簡單介紹

filter簡介 即為過濾器,其基本功能是對servlet容器呼叫servlet的過程進行過濾,從而在servlet進行響應處理前後做一些操作。它主要用於對使用者請求進行預處理,也可以對httpservletresponse 進行後處理。過濾器的出生 過濾器的具體方法 ps servletreque...

簡與繁的智慧型

簡單與繁瑣相互依存,辯證共生。簡單代表便利,是我們在生活 工作 思維上的目標。但獲得簡單離不開曲折繁瑣的探索過程,沒有繁瑣便成就不了簡單。簡單意味著效率 繁瑣則給我們帶來多樣性 豐富 深刻的經驗 簡繁得當,則能出效率 出成果。正確處理簡和繁的關係,需要智慧型。有時候我們要有刪繁就簡 化繁為簡的藝術,...

3個學期結束的總結與寒假的大體計畫

關於我的大一 前一半在學校,後一半在家。應該是家中比較安靜的學習環境給了我很大的幫助,讓我能夠靜下心安排自己做想做的事,不想做的事 包括不想上的課 水過去就好。大一公升大二的暑假 一半時間在跟著導師參與專案,一半時間花在複習備考期末考上,結果還都不錯,專案做的差不多,考試也拿了專業第一。大二上學期 ...