久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

深度學(xué)習(xí)補(bǔ)缺補(bǔ)漏篇,!準(zhǔn)算法工程師總結(jié)出的超強(qiáng)面經(jīng)(含答案)

 極市平臺(tái) 2021-07-04

作者丨燈會(huì)
來(lái)源丨極市平臺(tái)
編輯丨極市平臺(tái)

極市導(dǎo)讀

 

作者燈會(huì)為21屆中部985研究生,七月份將入職某互聯(lián)網(wǎng)大廠(chǎng)cv算法工程師,。在去年灰飛煙滅的算法求職季中,,經(jīng)過(guò)幾十場(chǎng)不同公司以及不同部門(mén)的面試中積累出了CV總復(fù)習(xí)系列,此為深度學(xué)習(xí)補(bǔ)缺補(bǔ)漏篇,。 >>加入極市CV技術(shù)交流群,,走在計(jì)算機(jī)視覺(jué)的最前沿

系列文章:

一,、深入理解Batch Normalization批標(biāo)準(zhǔn)化

機(jī)器學(xué)習(xí)領(lǐng)域有個(gè)很重要的假設(shè):IID獨(dú)立同分布假設(shè),就是假設(shè)訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)是滿(mǎn)足相同分布的,,這是通過(guò)訓(xùn)練數(shù)據(jù)獲得的模型能夠在測(cè)試集獲得好的效果的一個(gè)基本保障,。那BatchNorm的作用是什么呢,?BatchNorm就是在深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練過(guò)程中使得每一層神經(jīng)網(wǎng)絡(luò)的輸入保持相同分布的。

BN的基本思想其實(shí)相當(dāng)直觀(guān):因?yàn)樯顚由窠?jīng)網(wǎng)絡(luò)在做非線(xiàn)性變換前的激活輸入值(就是那個(gè)x=WU+B,,U是輸入)隨著網(wǎng)絡(luò)深度加深或者在訓(xùn)練過(guò)程中,,其分布逐漸發(fā)生偏移或者變動(dòng),之所以訓(xùn)練收斂慢,,一般是整體分布逐漸往非線(xiàn)性函數(shù)的取值區(qū)間的上下限兩端靠近(對(duì)于Sigmoid函數(shù)來(lái)說(shuō),,意味著激活輸入值WU+B是大的負(fù)值或正值),所以這導(dǎo)致反向傳播時(shí)低層神經(jīng)網(wǎng)絡(luò)的梯度消失,,這是訓(xùn)練深層神經(jīng)網(wǎng)絡(luò)收斂越來(lái)越慢的本質(zhì)原因,,而B(niǎo)N就是通過(guò)一定的規(guī)范化手段,把每層神經(jīng)網(wǎng)絡(luò)任意神經(jīng)元這個(gè)輸入值的分布強(qiáng)行拉回到均值為0方差為1的標(biāo)準(zhǔn)正態(tài)分布,,其實(shí)就是把越來(lái)越偏的分布強(qiáng)制拉回比較標(biāo)準(zhǔn)的分布,,這樣使得激活輸入值落在非線(xiàn)性函數(shù)對(duì)輸入比較敏感的區(qū)域,這樣輸入的小變化就會(huì)導(dǎo)致?lián)p失函數(shù)較大的變化,,意思是這樣讓梯度變大,,避免梯度消失問(wèn)題產(chǎn)生,而且梯度變大意味著學(xué)習(xí)收斂速度快,,能大大加快訓(xùn)練速度,。

BN在訓(xùn)練的時(shí)候可以根據(jù)Mini-Batch里的若干訓(xùn)練實(shí)例進(jìn)行激活數(shù)值調(diào)整,但是在推理(inference)的過(guò)程中,,從所有訓(xùn)練實(shí)例中獲得的統(tǒng)計(jì)量來(lái)代替Mini-Batch里面m個(gè)訓(xùn)練實(shí)例獲得的均值和方差統(tǒng)計(jì)量,。

BatchNorm為什么NB呢,關(guān)鍵還是效果好,。①不僅僅極大提升了訓(xùn)練速度,,收斂過(guò)程大大加快;②還能增加分類(lèi)效果,,一種解釋是這是類(lèi)似于Dropout的一種防止過(guò)擬合的正則化表達(dá)方式,,所以不用Dropout也能達(dá)到相當(dāng)?shù)男Ч虎哿硗庹{(diào)參過(guò)程也簡(jiǎn)單多了,,對(duì)于初始化要求沒(méi)那么高,,而且可以使用大的學(xué)習(xí)率等。 總而言之,,經(jīng)過(guò)這么簡(jiǎn)單的變換,,帶來(lái)的好處多得很,這也是為何現(xiàn)在BN這么快流行起來(lái)的原因,。

二,、拉格朗日乘子法和 KKT 條件

為了方便和好記,就把原來(lái)的優(yōu)化問(wèn)題寫(xiě)成f(x,y)+λh(x,y)的形式,然后分別對(duì)λ,x,y求偏導(dǎo),,并且令偏導(dǎo)為0就行了,,和之前得到的方程組是一樣的。這種方法叫拉格朗日乘數(shù)法,。


這個(gè)就是 KKT 條件,。 它的含義是這個(gè)優(yōu)化問(wèn)題的極值點(diǎn)一定滿(mǎn)足這組方程組。(不是極值點(diǎn)也可能會(huì)滿(mǎn)足,,但是不會(huì)存在某個(gè)極值點(diǎn)不滿(mǎn)足的情況)它也是原來(lái)的優(yōu)化問(wèn)題取得極值的必要條件,,解出來(lái)了極值點(diǎn)之后還是要代入驗(yàn)證的。但是因?yàn)榧s束比較多,,情況比較復(fù)雜,,KKT 條件并不是對(duì)于任何情況都是滿(mǎn)足的。要滿(mǎn)足 KKT條件需要有一些規(guī)范性條件(Regularity conditions),,就是要求約束條件的質(zhì)量不能太差,,常見(jiàn)的比如:
  1. LCQ:如果 h(x)和g(x)都是形如Ax+b的仿射函數(shù),那么極值一定滿(mǎn)足 KKT 條件,。
  2. LICQ:起作用的g(x)函數(shù)(即g(x)相當(dāng)于等式約束的情況)和h(x)函數(shù)在極值點(diǎn)處的梯度要線(xiàn)性無(wú)關(guān),,那么極值一定滿(mǎn)足 KKT 條件。
  3. Slater條件:如果優(yōu)化問(wèn)題是個(gè)凸優(yōu)化問(wèn)題,,且至少存在一個(gè)點(diǎn)滿(mǎn)足h(x)=0和g(x)=0,,極值一定滿(mǎn)足 KKT 條件。并且滿(mǎn)足強(qiáng)對(duì)偶性質(zhì)(下面會(huì)講),。

三,、L0、L1,、L2范式

一般來(lái)說(shuō),,監(jiān)督學(xué)習(xí)可以看做最小化下面的目標(biāo)函數(shù):

其中,第一項(xiàng)L(yi,f(xi;w)) 衡量我們的模型(分類(lèi)或者回歸)對(duì)第i個(gè)樣本的預(yù)測(cè)值f(xi;w)和真實(shí)的標(biāo)簽yi之前的誤差,。因?yàn)槲覀兊哪P褪且獢M合我們的訓(xùn)練樣本的嘛,所以我們要求這一項(xiàng)最小,,也就是要求我們的模型盡量的擬合我們的訓(xùn)練數(shù)據(jù),。但正如上面說(shuō)言,我們不僅要保證訓(xùn)練誤差最小,,我們更希望我們的模型測(cè)試誤差小,,所以我們需要加上第二項(xiàng),也就是對(duì)參數(shù)w的規(guī)則化函數(shù)Ω(w)去約束我們的模型盡量的簡(jiǎn)單,。

正則函數(shù)部分:規(guī)則化函數(shù)Ω(w)也有很多種選擇,,一般是模型復(fù)雜度的單調(diào)遞增函數(shù),模型越復(fù)雜,規(guī)則化值就越大,。比如,,規(guī)則化項(xiàng)可以是模型參數(shù)向量的范數(shù)。然而,,不同的選擇對(duì)參數(shù)w的約束不同,,取得的效果也不同,但我們?cè)谡撐闹谐R?jiàn)的都聚集在:L0范數(shù),,L1范數(shù),,L2范數(shù),跡范數(shù),,F(xiàn)robenius范數(shù),,核范數(shù)等。

1,、L0范數(shù)

L0范數(shù)是指向量中非0的元素的個(gè)數(shù),。如果用L0規(guī)則化一個(gè)參數(shù)矩陣W,就是希望W中大部分元素是零,,實(shí)現(xiàn)稀疏,。

L0范數(shù)的應(yīng)用:

1)特征選擇:實(shí)現(xiàn)特征的自動(dòng)選擇,去除無(wú)用特征,。稀疏化可以去掉這些無(wú)用特征,,將特征對(duì)應(yīng)的權(quán)重置為零

2)可解釋性(interpretability):例如判斷某種病的患病率時(shí),,最初有1000個(gè)特征,,建模后參數(shù)經(jīng)過(guò)稀疏化,最終只有5個(gè)特征的參數(shù)是非零的,,那么就可以說(shuō)影響患病率的主要就是這5個(gè)特征,。

2、L1范數(shù)

L1范數(shù)是指向量中各個(gè)元素絕對(duì)值之和,。L1范數(shù)也可以實(shí)現(xiàn)稀疏,,通過(guò)將無(wú)用特征對(duì)應(yīng)的參數(shù)W置為零實(shí)現(xiàn)。

L1范數(shù):

既然L0可以實(shí)現(xiàn)稀疏,,為什么不用L0,,而要用L1呢?個(gè)人理解一是因?yàn)長(zhǎng)0范數(shù)很難優(yōu)化求解(NP難問(wèn)題),,二是L1范數(shù)是L0范數(shù)的最優(yōu)凸近似,,而且它比L0范數(shù)要容易優(yōu)化求解。

3,、L2范數(shù)

L2范數(shù)是指向量各元素的平方和然后求平方根,。,用在回歸模型中也稱(chēng)為嶺回歸(Ridge regression)。

L2范數(shù):

L2避免過(guò)擬合的原理是:讓L2范數(shù)的規(guī)則項(xiàng)

盡可能小,,可以使得W每個(gè)元素都很小,,接近于零,但是與L1不同的是,,不會(huì)等于0,;這樣得到的模型抗干擾能力強(qiáng),參數(shù)很小時(shí),,即使樣本數(shù)據(jù)x發(fā)生很大的變化,,模型預(yù)測(cè)值y的變化也會(huì)很有限。

L2范數(shù)的作用:1)學(xué)習(xí)理論的角度:從學(xué)習(xí)理論的角度來(lái)說(shuō),,L2范數(shù)可以防止過(guò)擬合,,提升模型的泛化能力。2)優(yōu)化計(jì)算的角度:從優(yōu)化或者數(shù)值計(jì)算的角度來(lái)說(shuō),,L2范數(shù)有助于處理 condition number不好的情況下矩陣求逆很困難的問(wèn)題,。

四、L1 Loss& L2 Loss&smooth L1 Loss

1,、L1 Loss

L1 我理解成 1 維向量的距離,。

使用L1損失函數(shù)也被叫做最小化絕對(duì)誤差(Least Abosulote Error)。這 個(gè)名稱(chēng)非常的形象,。 就是最小化真實(shí)值yi和預(yù)測(cè)值 之間差值 的絕對(duì)值的和,。

這里的 其實(shí)就是平均絕對(duì)誤差(MAE),使用L1 損失函數(shù)也就是min

公式:

導(dǎo)數(shù):

2、L2 Loss

L2 就是二維空間向量的距離,。

公式:

導(dǎo)數(shù):

3,、smooth L1 Loss:

公式:

導(dǎo)數(shù):

比較:

1、L1 loss 在零點(diǎn)不平滑,,用的較少,;L1loss在零點(diǎn)不平滑,學(xué)習(xí)慢,;2,、Smooth L1 Loss 改善了零點(diǎn)不平滑問(wèn)題。

smooth L1 loss和L1 loss函數(shù)的區(qū)別在于,,L1 loss在0點(diǎn)處導(dǎo)數(shù)不唯一,,可能影響收斂。smooth L1 loss的解決辦法是在0點(diǎn)附近使用平方函數(shù)使得它更加平滑,。

smooth L1 loss讓loss function對(duì)于離群點(diǎn)更加魯棒,即:相比于L2損失函數(shù),,其對(duì)離群點(diǎn)/異常值(outlier)不敏感,,梯度變化相對(duì)更小,訓(xùn)練時(shí)不容易跑飛。

Smooth L1 Loss 相比L1修改零點(diǎn)不平滑問(wèn)題,,而且在x較大的時(shí)候不像L2對(duì)異常值敏感,,是一個(gè)緩慢變化的loss;

3,、L2 loss:對(duì)離群點(diǎn)比較敏感,,如果feature 是 unbounded的話(huà),需要好好調(diào)整學(xué)習(xí)率,,防止出現(xiàn)梯度爆炸的情況,。

L2loss學(xué)習(xí)快,因?yàn)槭瞧椒皆鲩L(zhǎng),,但是當(dāng)預(yù)測(cè)值太大的時(shí)候,,會(huì)在loss中占據(jù)主導(dǎo)位置(如真實(shí)值為1,預(yù)測(cè)多次,,有一次預(yù)測(cè)值為100,,其余預(yù)測(cè)為2)。

4,、一般來(lái)說(shuō),,L1正則會(huì)制造稀疏的特征,大部分無(wú)用特征的權(quán)重會(huì)被置為0,。L2正則會(huì)讓特征的權(quán)重不過(guò)大,,使得特征的權(quán)重比較平均。

python numpy實(shí)現(xiàn)


五,、Sigmoid與softmax的區(qū)別

1,、Sigmoid函數(shù)

sigmoid常用于二元分類(lèi),將二元輸入映射成0和1,。

函數(shù):

導(dǎo)數(shù):

sigmoid函數(shù)推導(dǎo):

其實(shí)logistic函數(shù)也就是經(jīng)常說(shuō)的sigmoid函數(shù),,它的幾何形狀也就是一條sigmoid曲線(xiàn)(S型曲線(xiàn))。A logistic function or logistic curve is a common “S” shape (sigmoid curve). 也就是說(shuō),,sigmoid把一個(gè)值映射到0-1之間,。

該函數(shù)具有如下的特性:當(dāng)x趨近于負(fù)無(wú)窮時(shí),y趨近于0,;當(dāng)x趨近于正無(wú)窮時(shí),,y趨近于1;當(dāng)x= 0時(shí),,y=0.5.

優(yōu)點(diǎn): 1.Sigmoid函數(shù)的輸出映射在(0,1)之間,,單調(diào)連續(xù),輸出范圍有限,,優(yōu)化穩(wěn)定,,可以用作輸出層,。2.求導(dǎo)容易,處處可導(dǎo),,導(dǎo)數(shù)為:f′(x)=f(x)(1?f(x))

缺點(diǎn): 1.由于其軟飽和性,,容易產(chǎn)生梯度消失,導(dǎo)致訓(xùn)練出現(xiàn)問(wèn)題,。2.其輸出并不是以0為中心的,。

2、Softmax函數(shù)

公式:

其中 θi和x是列向量,

可能被換成函數(shù)關(guān)于x的函數(shù) fi(x),。

參考鏈接

https://www.cnblogs.com/guoyaohua/p/8724433.html

https://www.cnblogs.com/xinchen1111/p/8804858.html

https://zhuanlan.zhihu.com/p/51912576

https://blog.csdn.net/hejunqing14/article/details/48980321/

如果覺(jué)得有用,,就請(qǐng)分享到朋友圈吧!

△點(diǎn)擊卡片關(guān)注極市平臺(tái),,獲取最新CV干貨

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多