深度学习基本概念笔记
注意力機制(Attention Mechanism):
注意力機制受到人類視覺注意力機制的啟發(fā),即關(guān)注圖像特定部分的能力。即當(dāng)神經(jīng)網(wǎng)絡(luò)發(fā)現(xiàn)輸入數(shù)據(jù)的關(guān)鍵信息后,通過學(xué)習(xí),在后繼的預(yù)測階段對其予以重點關(guān)注。
Attention Mechanism可以幫助模型對輸入的X每個部分賦予不同的權(quán)重,抽取出更加關(guān)鍵及重要的信息,使模型做出更加準確的判斷,同時不會對模型的計算和存儲帶來更大的開銷,這也是Attention Mechanism應(yīng)用如此廣泛的原因。
對nlp領(lǐng)域,Attention Mechanism的目的是要把一個句子中,對句子的含義最重要,貢獻最大的詞語找出來。
反向傳播
一種有效計算神經(jīng)網(wǎng)絡(luò)中梯度的算法,更一般地說,是一種前饋計算圖。可以把它歸結(jié)為從網(wǎng)絡(luò)輸出開始應(yīng)用差異化的鏈規(guī)則并向后傳播梯度。
降維
作用是減少數(shù)據(jù)量和成本,維度越大需要的數(shù)據(jù)量越多,成本就越高。
Dropout
是神經(jīng)網(wǎng)絡(luò)的正則化技術(shù),可防止過度擬合。它通過在每次訓(xùn)練迭代中將它們的一部分隨機設(shè)置為0來防止神經(jīng)元過度適應(yīng)。可以以各種方式解釋丟失,例如從指數(shù)數(shù)量的不同網(wǎng)絡(luò)中隨機采樣。
感受野(Receptive Field):
卷積神經(jīng)網(wǎng)絡(luò)每一層輸出的特征圖(feature map)上的像素點在輸入圖片上映射的區(qū)域大小。再通俗點的解釋是,特征圖上的一個點對應(yīng)輸入圖上的區(qū)域。
LSTM
一種時間循環(huán)神經(jīng)網(wǎng)絡(luò),是為了解決一般的RNN存在的長期依賴問題而專門設(shè)計出來的。
激活函數(shù):
為了向網(wǎng)絡(luò)中加入非線性因素,加強網(wǎng)絡(luò)的表示能力,解決線性模型無法解決的問題。常見的有階躍函數(shù)、sigmoid函數(shù)、ReLU函數(shù)。輸出層所用的激活函數(shù):一般回歸問題使用恒等函數(shù),二元分類問題使用sigmoid函數(shù)(包括雙曲正切函數(shù)等等),多元分類問題可以使用softmax函數(shù)。
Adagrad:
一種自適應(yīng)學(xué)習(xí)速率算法,它可以跟隨時間變化,并自動調(diào)整每個參數(shù)的學(xué)習(xí)速率。它可以代替vanilla SGD使用,并且對稀疏數(shù)據(jù)特別有用,它可以為不經(jīng)常更新的參數(shù)分配更高的學(xué)習(xí)率。
Affine layer(仿射層):
一種神經(jīng)網(wǎng)絡(luò)中的完全連接層。仿射意味著前一層中的每個神經(jīng)元都連接到當(dāng)前層中的每個神經(jīng)元。在許多情況下,這是神經(jīng)網(wǎng)絡(luò)的“標準”層。在進行最終預(yù)測之前,通常會在卷積神經(jīng)網(wǎng)絡(luò)或遞歸神經(jīng)網(wǎng)絡(luò)的輸出之上添加仿射層。仿射層通常形式的y=f(Wx+b),其中x是該層的輸入,W參數(shù),b偏置向量,f是非線性激活函數(shù)。
Adadelta:
一種基于梯度下降的學(xué)習(xí)算法,可以隨時間調(diào)整每個參數(shù)的學(xué)習(xí)速率。它被認為是對Adagrad的改進,因為Adagrad對超參數(shù)很敏感,并且可能過于快速的降低學(xué)習(xí)速度。Adadelta類似于rmsprop,可以用來代替樸素SGD。
Adam:
一種類似于rmsprop的自適應(yīng)學(xué)習(xí)速率算法,但是使用梯度的第一和第二時刻的運行平均值直接估計更新,并且還包括偏差校正項。
patch:
在CNN學(xué)習(xí)訓(xùn)練過程中,不是一次來處理一整張圖片,而是先將圖片劃分為多個小的塊,卷積核每次只查看圖像的一個小塊,這一小塊就稱為patch,然后通過卷積核移動到圖像的另一個patch。
損失函數(shù):
為了讓神經(jīng)網(wǎng)絡(luò)能自動的學(xué)習(xí),一般使用梯度下降法尋找損失函數(shù)最小的值,從而尋找到最優(yōu)參數(shù)(權(quán)重和偏置)。
BatchNorm()函數(shù):
一般在cnn的卷積層之后添加,主要是對數(shù)據(jù)進行歸一化處理,這使得數(shù)據(jù)在進行Relu之前不會因為數(shù)據(jù)過大而導(dǎo)致網(wǎng)絡(luò)性能的不穩(wěn)定。
輸出層的softmax函數(shù):
將全連接層的輸出結(jié)果正規(guī)化(將輸出值的和調(diào)整為1)后再輸出。
mini-batch學(xué)習(xí):
由于訓(xùn)練數(shù)據(jù)太多,在所有數(shù)據(jù)中選一批一批進行學(xué)習(xí)。
深度學(xué)習(xí)
深度學(xué)習(xí)過程也叫端到端的訓(xùn)練過程。
end-to-end(端到端)的方法,一端輸入我的原始數(shù)據(jù),一端輸出我想得到的結(jié)果。只關(guān)心輸入和輸出,中間的步驟全部都不管。
歸一化(normalization):
對于一維數(shù)據(jù)有(Xi-Xmin)/(Xmax-Xmin),使數(shù)據(jù)在相同尺寸,縮放僅僅跟最大、最小值的差別有關(guān)。輸出范圍在0-1之間.數(shù)據(jù)歸一化會使得最優(yōu)解的尋優(yōu)過程會變得平緩,更容易正確的收斂到最優(yōu)解。
標準化(standardization):
對于一維數(shù)據(jù)有(Xi-u)/σ,縮放和每個點都有關(guān)系,通過方差體現(xiàn)出來。與歸一化對比,標準化中所有數(shù)據(jù)點都有貢獻。輸出范圍是負無窮到正無窮。
歸一化和標準化:
兩者本質(zhì)上都是一種線性變換。如果對輸出結(jié)果范圍有要求,用歸一化。如果數(shù)據(jù)較為穩(wěn)定(圖像或是視頻的數(shù)據(jù)值處于固定區(qū)間),不存在極端的最大最小值,用歸一化。如果數(shù)據(jù)存在異常值和較多噪音,用標準化,可以間接通過中心化避免異常值和極端值的影響。
Batch_size:
每次喂給模型的樣本數(shù)量。
Epoch_size
是訓(xùn)練所有樣本總的次數(shù)。Epoch:當(dāng)一個完整的數(shù)據(jù)集通過了神經(jīng)網(wǎng)絡(luò)一次并且返回了一次,這個過程稱為一次epoch。訓(xùn)練時使用多個Epoch可以理解為背誦了詞典多少次。背多了,就記牢了。背得次數(shù)太多就過擬合了。
Batch Norm
以進行學(xué)習(xí)時的mini-batch為單位按mini-batch進行正規(guī)化。
張量(Tensor):
是PyTorch里面基礎(chǔ)的運算單位,與Numpy的ndarray相同都表示的是一個多維的矩陣。 與ndarray的最大區(qū)別就是,PyTorch的Tensor可以在 GPU 上運行,而 numpy 的 ndarray 只能在CPU上運行,在GPU上運行大大加快了運算速度。
嵌入
將輸入(例如單詞或句子)映射到向量中。有一種流行的嵌入類型是word嵌入,例如word2vec或GloVe。它們可以嵌入句子,段落或圖像。
網(wǎng)絡(luò)退化問題:
在神經(jīng)網(wǎng)絡(luò)可以收斂的前提下,隨著網(wǎng)絡(luò)深度增加,網(wǎng)絡(luò)的表現(xiàn)先是逐漸增加至飽和,然后迅速下降。
殘差網(wǎng)絡(luò):
進行跳層連接,殘差單元可以以跳層連接的形式實現(xiàn),很好地解決了深度神經(jīng)網(wǎng)絡(luò)的退化問題。
Seq2Seq模型(序列到序列的模型)
屬于Encoder-Decoder模型的一種,是輸出的長度不確定時采用的模型,RNN一個重要的變種:N vs M,原始的N vs N要求序列等長,然而我們遇到的大部分問題序列都是不等長的。
感知機
是二分類的線性分類模型。
多層感知機
是一種人工神經(jīng)網(wǎng)絡(luò),設(shè)定權(quán)重的工作需要由人工來進行,又叫全連接前饋神經(jīng)網(wǎng)絡(luò)。
神經(jīng)網(wǎng)絡(luò)
為了解決多層感知機需要人工設(shè)定權(quán)重的問題出現(xiàn)的,能夠自動地從數(shù)據(jù)中學(xué)習(xí)到合適的權(quán)重(一般采用梯度下降法來進行反向傳播設(shè)置權(quán)重),這是和多層感知機最大的區(qū)別。
卷積神經(jīng)網(wǎng)絡(luò)
是含有卷積層池化層全連接層的神經(jīng)網(wǎng)絡(luò)。
GAN模型系列
生成對抗模型(GAN)
2014年提出的一種深度學(xué)習(xí)模型。
卷積神經(jīng)網(wǎng)絡(luò)模型系列
LeNet:
CNN元祖,1998年首次提出,進行手寫數(shù)字識別的網(wǎng)絡(luò)。
Alexnet:
2012年提出,引發(fā)深度學(xué)習(xí)熱潮的導(dǎo)火線,網(wǎng)絡(luò)結(jié)構(gòu)和LeNet沒有太大的不同,但是圍繞它們的環(huán)境和計算機技術(shù)有了很大的進步。
NiN:
AlexNet問世不久后提出的,可以顯著減小模型參數(shù)尺寸,從而緩解過擬合。然而該設(shè)計有時會造成獲得有效模型的訓(xùn)練時間的增加。
GoogLeNet:
2014年提出,Inception采用了模塊化的結(jié)構(gòu),從另一種角度來提升訓(xùn)練結(jié)果:能更高效地利用計算資源,在相同的計算量下能提取到更多的特征,從而提升訓(xùn)練結(jié)果。
VGG:
2014年提出,結(jié)構(gòu)整潔,拓展性很強,遷移到其他圖片數(shù)據(jù)上的泛化性非常好。
ResNet:
2015年提出,由于網(wǎng)絡(luò)的加深會造成梯度爆炸和梯度消失的問題,為了讓更深的網(wǎng)絡(luò)也能訓(xùn)練出好的效果而提出ResNet。
SqueezeNet:
2017年提出,參數(shù)少,模型文件小。
DenseNet:
DenseNet模型主要由DenseBlock和Transition組成,其中:
DenseBlock是由多層模塊組成,每層的特征圖大小相同,層與層之間采用密集相連的。
Transition是連接兩個相鄰的DenseBlock,并通過pooling使得特征圖大小降低,還能起到壓縮模塊的作用。
DenseBlock中的非線性組合函數(shù)H()采用的是:BN+Relu+3x3Conv結(jié)構(gòu)。
總結(jié)
以上是生活随笔為你收集整理的深度学习基本概念笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 商品房备案表是什么意思(商品房备案表是什
- 下一篇: 人工智能领域论文常见基本概念笔记