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

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

一些記錄

2021-09-26 11:12 作者:肉圓-哥  | 我要投稿

個人理解:

深度學(xué)習(xí)的本質(zhì)就是擬合,只不過參數(shù)量足夠多。

先構(gòu)建模型,也就是擬合的曲線或方式。再配置數(shù)據(jù)集和輸出,數(shù)據(jù)集就是輸入的數(shù)據(jù),經(jīng)過模型,定義的擬合方式,變成輸出??梢钥醋魇且粋€預(yù)測的過程。最后定義訓(xùn)練,輸入進入到模型,并沒有變成理想的輸出,肯定是模型的參數(shù)不合適。那就定義一個損失,要讓實際輸出和理想輸出的損失最小,采用梯度下降算法,一步步調(diào)整模型的參數(shù),就是一個訓(xùn)練的過程了。

尺度不變性:目標(biāo)檢測對于大物體和小物體都要能檢測,coco數(shù)據(jù)集小物體多,imagenet數(shù)據(jù)集大物體,這樣使得預(yù)訓(xùn)練參數(shù)要適應(yīng)兩個數(shù)據(jù)集。下采樣小物體特征消失,上采樣大物體檢測下降。需要兼顧大小物體,并且具有泛化性。

方法:

  1. 圖像/特征金字塔:通過輸入多尺度的圖像獲得不同尺度的特征圖。-----------------有效但是耗時長

  2. 卷積核金字塔:對特征圖用不同尺度的卷積核滑窗卷積,得到不同尺度的輸出。------通常會與圖像/特征金字塔聯(lián)合使用

  3. anchor金字塔:比如Faster RCNN中用多尺度的anchor來回歸目標(biāo)的位置。-----更經(jīng)濟。Faster RCNN的anchor點是在特征圖上取的。

圖像金字塔:圖像金字塔是一個圖像集合,集合中所有的圖像都源于同一個原始圖像,通過對原始圖像連續(xù)降采樣,直到達到某個終止條件才停止降采樣。

高斯金字塔:進行下采樣。進行卷積,然后去掉偶數(shù)行,偶數(shù)列,變成原來四分之一,從而得到一系列像金字塔的圖片,圖片信息有損失。進行上采樣的話,填充為0的偶數(shù)行,偶數(shù)列,再卷積,生成的圖片比原始圖片模糊。

拉普拉斯金字塔:可以理解為一個殘差。把原始圖片減去 原始圖片->下采樣->上采樣,得到一個殘差圖,然后在一系列高斯金字塔中進行計算,得到一系列的殘差圖,構(gòu)成拉普拉斯金字塔。這些殘差圖也就保存了原始圖片下采樣損失的信息。

但是都有原始圖片了,還要拉普拉斯金字塔干嘛?拉普拉斯金字塔有何應(yīng)用?圖像融合,分割?

特征金字塔:

參考鏈接:視頻? FPN特征金字塔網(wǎng)絡(luò)解讀 - 簡書 (jianshu.com)

1.圖像金字塔有效果,但計算量大

2.卷積池化得到最后的特征圖,可以得到高層語義信息,但是會丟掉小物體的檢測

3.金字塔特征分層?Pyramidal feature hierarchy 底層大scale的feature map語義信息少,雖然框出了小物體,但小物體容易被錯分:利用了多尺度的特征信息,如ssd


4FPN 特征金字塔 左邊和2一樣得到多尺度的特征圖,右邊進行了融合,小尺度的圖上采樣加上左邊的特征圖,這么做的目的是因為高層的特征語義多,低層的特征語義少但位置信息多。特征圖進行融合。

看看fpn怎么使用的,特征圖怎么用?ssd怎么預(yù)測的?

ssd: 參考鏈接:視頻??特點:在多尺度的特征圖上進行預(yù)測

在多尺度的特征圖上進行預(yù)測,預(yù)測時,大的特征圖用語義信息少,小目標(biāo)位置信息多,用小號的先驗框,預(yù)測小目標(biāo)。小的特征圖則用大的先驗框,預(yù)測大目標(biāo)。

預(yù)測時即特征圖上每個像素點有很多通道,組成一個向量。里面包括有分類置信度,xywh相較先驗框的位置偏移,用來回歸預(yù)測的目標(biāo)。

訓(xùn)練時要注意怎么平衡正負樣本,正負樣本怎么選擇,平衡定位,分類,置信度。里面有很多細節(jié)的東西沒琢磨。

損失函數(shù)看來一般都是分類損失加定位損失。

yolo:

V1:很簡單,輸入圖片,運行模型,輸出預(yù)測向量7*7*30,包括了每個像素周圍的預(yù)測,(框+分類+置信度),損失包括定位,分類,置信度,平衡正負樣本,大框小框。

V2:特點:通過數(shù)據(jù)集上聚類得到更合適的先驗框。引入anchor box,限制預(yù)測框的位置,回歸預(yù)測框xywh更合理。多尺度訓(xùn)練,同一張圖片,以圖像金字塔輸入模型訓(xùn)練?主干網(wǎng)絡(luò)先用imagenet訓(xùn)練了分類,調(diào)整了主干網(wǎng)絡(luò)的參數(shù),然后再主干網(wǎng)絡(luò)下加幾層,訓(xùn)練目標(biāo)檢測。分類檢測聯(lián)合訓(xùn)練,擴大到通過分類數(shù)據(jù)集,能檢測9000中物體,如果是輸入分類圖片,只計算分類損失,如果是檢測圖片,計算全部損失,里面具體計算細節(jié)沒琢磨!

V3:網(wǎng)絡(luò)引入了殘差結(jié)構(gòu)。學(xué)習(xí)了FPN和SSD,多尺度預(yù)測,三種尺度特征圖進行特征融合,并在三種尺度的特征圖上預(yù)測,小特征圖檢測大物體,大特征圖檢測小物體。主要是對網(wǎng)絡(luò)結(jié)構(gòu)的改進。

目標(biāo)檢測中訓(xùn)練的問題,實際操作可能效果更好些。

樣本不平衡,如果貓的圖片比狗的圖片多,那模型會傾向于預(yù)測貓。

如果預(yù)測的正樣本過多,負樣本太少,比如設(shè)置的背景圖片少。那么模型可能會把一些只是背景的圖片預(yù)測為目標(biāo)。

faster-rcnn:

兩階段怎么訓(xùn)練的?

特征圖是語義化的縮小的原圖

先提取特征,得到特征圖,一端到RPN得到Proposal框,另一端拿候選框進行預(yù)測。

mosaic圖像增強:把四張圖片拼接在一起輸入網(wǎng)絡(luò)進行訓(xùn)練

增加數(shù)據(jù)多樣性,增加目標(biāo)個數(shù),BN能一次性統(tǒng)計多張圖片的參數(shù)。

SPP模塊:為啥效果好這么多?

IOU: loss為0的時候,就沒法分辨預(yù)測框隨便沒重合,但是一個離得近,一個離得遠,就無法分辨了

IOU GIOU DIOU CIOU:


focal loss:應(yīng)對正負樣本極不平衡的情況

hard negative mining:選擇少量的匹配很差的負樣本進行訓(xùn)練,而不是選擇所有負樣本
易分的樣本pt比較大,然后(1-pt)γ次方后,值減小,模型損失重心不放在這上面

可不可以正樣本不用focal loss,簡單易分的負樣本計算focal loss?

α:平衡因子,超參數(shù)

retinanet:采用resnet+fpn+focal loss

不同尺度怎么權(quán)值共享?

不同尺度怎么權(quán)值共享?兩個端怎么訓(xùn)練?


注意力機制:(李宏毅的課程)

a是輸入的一組向量,Q矩陣乘a,得到query,理解為a的語義。K矩陣乘a,得到key,理解為關(guān)聯(lián)的信息。V矩陣乘a,得到value,理解為傳出的信息。然后Q和K求內(nèi)積,在softmax歸一化,得到注意力的分數(shù),a之間彼此是否相關(guān)。最后到A的分數(shù)乘V,得到傳出的B,輸出的向量。

注意力矩陣形式,一次性可以計算出
注意力層可疊加

多頭注意力:也許一組Q和K不足以表現(xiàn)輸入之間的相關(guān)性,所以引入了多頭。q乘以兩個矩陣,生成qi1,qi2,k和v也是如此。然后第一組用注意力計算出bi1,第二組計算出bi2,兩個bi拼接,矩陣乘,得到輸出b。增加一些參數(shù),融合了幾組的相關(guān)性。

位置編碼:注意力機制對于輸入a1,a2,a3.。。等等而言,計算是平行平等的,不考慮位置信息,所以注意力能不能加入位置信息,現(xiàn)在還在研究中!

detr,attention做目標(biāo)檢測
CNN看作是特殊的attention,只考慮某一小范圍。attention考慮全局?
attention因為包容性更強,cnn如果是attention的一種,那么attention用更大的數(shù)據(jù)集,可以訓(xùn)練出更好的結(jié)果?
attention計算量太大,有沒有簡化的attention變形?

seq2seq: encoder-decoder模型

輸入一段序列進encoder,輸出隱向量h。h進入decoder,decoder輸入一個<start>,結(jié)合h,輸出第一個向量,然后這個向量作為下一個的輸入。
encoder的正向傳播和反向傳播,主要取出隱向量h
decoder正向傳播和反向傳播,正向傳播結(jié)合輸入和隱向量h,反向傳播輸出dh給encoder
seq2seq整體

seq2seq模型可以加上attention,attention表現(xiàn)了對隱向量h的各個部位的注意程度,可以用2維圖進行呈現(xiàn)。可以用于NLP,圖像的看圖說話,取代CNN等等。

有雙向,偷窺(skip connection)等等騷操作。

Transformer:復(fù)雜版的seq2seq,self attention比lstm好是可以平行化運行,速度更快。transformer的encoder有很多block,每個block輸入一排向量,先做self attention,再做FC,輸出一排向量。中間可能引入殘差結(jié)構(gòu),做layer normalization。還加上positional encoding,位置信息。把這樣的block重復(fù)很多次。

masked attention,只考慮前面的向量。和autoregressive相似,一個一個進來,所以只考慮前面

autoregressive:出一個,進一個,速度慢,精度高

nonautoregressive:一次性產(chǎn)生,速度快,精度較低,這也是個待研究的大坑

decoder輸入全是begin。另一個預(yù)測器輸出預(yù)測長度。預(yù)測很長,只取到end。
cross attention,encoder和decoder交互,也就是做了個attention
多種網(wǎng)絡(luò)變形
訓(xùn)練,交叉熵最小。注意decoder的輸入就是ground truth。也許ground truth這里加點噪音,效果會更好

transformer訓(xùn)練部分是大坑,copy mechanism,guided attention,beam search,損失函數(shù)不用cross entropy,訓(xùn)練的時候加噪音,很多技巧和大坑

Bert: 預(yù)訓(xùn)練模型,transformer的encoder部分,感覺和VGG啥的差不多,加上自己改的部分,然后fine tune

模型壓縮的方法

用預(yù)訓(xùn)練的模型加上各種定制的方式,來達成任務(wù)

fine tune模型的一部分

一般fine tune下整個模型效果會更好

固定預(yù)訓(xùn)練模型,拿中間層加上W做權(quán)值和來做fine tune ,也許效果也不錯

這個方法也許可以一試

Bert怎么訓(xùn)練的,self supervised training。因為資料庫太大,不可能supervised training。


通過訓(xùn)練集輸入的時候蓋住部分,進行自監(jiān)督學(xué)習(xí)。做填空題自訓(xùn)練。

Bert很神奇,不僅可以學(xué)到上下文語義的信息,還可以學(xué)到各種想不到的信息。但Bert很吃訓(xùn)練集,需要訓(xùn)練集夠大。

Bert可以硬做DNA,Protein等分類
比如通過多語言預(yù)訓(xùn)練的Bert,在英文訓(xùn)練集Fine tune,還可以直接做中文的測試,很神奇。Bert學(xué)到了各個中英文token的信息,并且會把相似的分一類。
竟然可以計算中文英文的向量差,然后直接做中英文的轉(zhuǎn)換

圖像的自監(jiān)督學(xué)習(xí):

Gan:用于比較有創(chuàng)造性的任務(wù)。一組向量輸入generator,generator輸出一張圖片。然后把這張圖片輸入discriminator,discriminator輸出一個分數(shù),真圖或假圖的概率。訓(xùn)練時先generator隨機輸出假圖,然后可以和真圖作為二分類任務(wù)給discriminator訓(xùn)練。固定住discriminator,把generator和discriminator連接成一個網(wǎng)絡(luò),梯度上升訓(xùn)練generator。然后反復(fù)迭代。

問題點:神經(jīng)網(wǎng)絡(luò)參數(shù)很多,相當(dāng)于一個很高維的系統(tǒng),而圖像是一個低維的系統(tǒng),所以discriminator高維對低維判斷真圖和假圖很容易。所以需要數(shù)據(jù)集很多,而且假圖的進步不容易量化,因為對discriminator而言都是假的,loss都是一樣的。不好訓(xùn)練,難以量化divergence

為什么要有g(shù)enerator?為啥要用一組分布的向量?

如果直接用神經(jīng)網(wǎng)絡(luò)訓(xùn)練,輸出的圖片會傾向于所有訓(xùn)練的圖片,既往左又往右,兩頭不討好
generator通過一個簡單的normal distribution,能生成complex distribution,并且還是人臉,很神奇,怎么做到的?
gan訓(xùn)練策略
可以用內(nèi)插值來生成圖像

內(nèi)插能不能做圖片融合?感覺挺好玩的


gan的目標(biāo)是生成圖與目標(biāo)圖距離越小越好,但是這個divergence無法計算

discriminator最大化真圖和假圖的距離,而這個divergence與上圖的目標(biāo)divergence有關(guān)系。問題變成求怎么把這個距離最大化
不好訓(xùn)練,對深度網(wǎng)絡(luò)而言圖片是低維的,很容易區(qū)別。然后數(shù)據(jù)量不夠的話,sample沒有交叉部分的話,很容易區(qū)別。
導(dǎo)致discriminator很容易區(qū)分,準(zhǔn)確率100%,損失值就沒有意義,無法表達生成圖與真實圖之間的距離。
lipschitz:平滑的分割生成圖與真實圖,不能讓網(wǎng)絡(luò)很容易區(qū)別。梯度裁剪

gan的訓(xùn)練坑很多啊,一般實操上discriminator訓(xùn)練幾次,主要都是訓(xùn)練generator

gan訓(xùn)練比較難,特別是生成文本更難,為啥難?

gan容易出現(xiàn)的問題:

生成的數(shù)據(jù)過于圍繞某些真實圖
生成數(shù)據(jù)只是和某一塊真實圖有交集,生成圖有局限

評估gan的性能好不好,1是看生成圖質(zhì)量好不好,把生成圖扔到分類網(wǎng)絡(luò)去,分類網(wǎng)絡(luò)能給出一個分類很清晰的判斷,某class分數(shù)很高,很明確知道是啥。2是看大量生成圖的多樣性,把大量生成圖扔到分類網(wǎng)絡(luò)去,分成的類別要足夠多。還要看gan的生成圖是不是復(fù)制真實圖,所以評估Gan還真不好量化。

條件gan:generator加上條件,來訓(xùn)練,兩者都達標(biāo)才好
gan:看圖出圖
cycle gan:圖像風(fēng)格遷移,輸入一張人臉到generator,輸出一張動漫臉,既放到discriminator判斷是否是動漫,又重新通過一個生成器返回原來的人臉

感覺坑很多,反向生成器網(wǎng)絡(luò)咋做?人臉間相似度如何計算?等等

cycle gan

auto encoder:自監(jiān)督學(xué)習(xí)的方法,訓(xùn)練的模型可以用于下游任務(wù)。和cycle gan有點像,圖片輸進encoder,變成低維的向量,然后通過decoder,返回圖片,令原圖和生成圖距離越小越好。怎么計算兩張圖相似?

低維向量能提取訓(xùn)練集數(shù)據(jù)中的共有特性。
在輸入圖上加入一些噪音
特征解綁:中間的向量可以得到語義和語者的信息,甚至可以把這些區(qū)分開,來達到換聲音的目的
離散代表物:通過codebook限定輸出生成圖的種類
VAE

anomaly detection:異常檢測的分類

最簡單的一種:直接通過label用分類做
評估一個系統(tǒng)的好壞:混淆矩陣,計算查準(zhǔn)率查全率,可以引入cost矩陣量化,AOC曲線
通過高斯分布來解是否是異常數(shù)據(jù)
auto encoder做異常檢測

決策樹,隨機森林?

深度學(xué)習(xí)的可解釋性;

拿一張灰度圖蓋住某一部分,看是否會導(dǎo)致誤判
圖片局部像素變化一點,看結(jié)果損失變化,如果變化大,說明這部分會影響模型判斷,圈出來。
給原圖加點噪音,然后把各種噪音圖求saliency map,最后平均下

強化學(xué)習(xí):相比于監(jiān)督學(xué)習(xí),相比標(biāo)注資料困難,也不好評判標(biāo)簽好壞的情況,適合強化學(xué)習(xí)。和gan有點像,actor根據(jù)環(huán)境產(chǎn)生動作,然后critic根據(jù)環(huán)境和動作給出獎勵,進行調(diào)整。

actor是policy network
actor的輸出,最好不取argmax,以概率隨機取,增加點隨機性效果更好。只有讓actor多做不同的action,才會出現(xiàn)新的好的reward。
通過上一個action和state,計算出后面的total reward,作為loss,這個R越大越好。
如果不想讓actor選一個輸出,label還是標(biāo)1,a的輸出越接近0,也就是這個cross entropy越大越好,是a與a hat距離越大越好。
初步訓(xùn)練actor的時候可以先用監(jiān)督學(xué)習(xí)的思想先做
強化學(xué)習(xí)關(guān)鍵是定義reward,是total reward,G,乘上discount,還需要做標(biāo)準(zhǔn)化,使G有正有負
一組訓(xùn)練資料在訓(xùn)練中只能用一次,因為這組資料trajectory是θi-1的actor做出的,參數(shù)更新后,這組資料并不適用與θi。
on policy,需要訓(xùn)練一次收集一次資料。off policy,可以不用重復(fù)收集資料,其中有名的方法叫PPO,proximal policy optimization。
critic:用Monte carlo,把state輸入Value函數(shù),把游戲走完,計算出總的reward G。缺點是每次都要單獨計算。
temporal difference:分別計算Value在st時刻和st+1時刻,根據(jù)差值在計算。這樣節(jié)約資源,不用把游戲玩完。
critic怎么計算At,判斷在st下選擇at的好壞。用在st下選at的期望值-在st下的期望值(標(biāo)準(zhǔn)化,因為每個state下total reward不一樣,有的很多,有的就是慘劇,所以減去標(biāo)準(zhǔn)化的值,只對該state下選擇好的action)
actor和critic都是深度網(wǎng)絡(luò)
如果reward很稀疏,像下圍棋,一般reward都是0,那就很難訓(xùn)練。所以進行reward shaping,人工加入一些reward。
actor看到一些新的東西作為reward,鼓勵actor去探索。
如果reward function不好定義,比如機械手取東西。就讓人進行示范,機器模仿學(xué)習(xí)。
模仿學(xué)習(xí)中,機器可以根據(jù)模仿學(xué)習(xí)出reward
老師給出的獎勵比學(xué)出來的獎勵函數(shù)要高,獎勵函數(shù)的目標(biāo)是maxize老師的獎勵。這個像discriminator。actor不斷生成獎勵,像generator。actor怎么更新呢,還是通過強化學(xué)習(xí)更新,獎勵函數(shù)給出獎勵。
不需要完全通過示范,機器通過圖片可以自己創(chuàng)造目標(biāo),并達成他。

可以先用IRL讓機器學(xué)出一個reward function。為了讓機器做的比人更好,可以在這個reward function上加一些限制,比如速度更快,reward更多。從而讓機器更強。


一些記錄的評論 (共 條)

分享到微博請遵守國家法律
阿拉善右旗| 共和县| 怀安县| 柳林县| 北票市| 油尖旺区| 通榆县| 建德市| 南陵县| 平潭县| 连江县| 崇明县| 台北市| 监利县| 稷山县| 武定县| 安远县| 陆良县| 六枝特区| 独山县| 进贤县| 天峨县| 铜川市| 贵德县| 华安县| 淮滨县| 勐海县| 定襄县| 安徽省| 平原县| 珠海市| 华坪县| 正蓝旗| 长汀县| 恩施市| 平顶山市| 翁源县| 珲春市| 汉沽区| 宣化县| 遂溪县|