這些深度學習術語,你瞭解多少?(上)
對於一個新手來說,深度學習術語可能非常難以理解。本表試圖解釋深度學習常用術語並連結到原始參考,以幫助讀者深入瞭解特定主題。
深度學習與“一般”的機器學習術語之間的界限非常模糊。例如,我這裡不包括“交叉驗證”,因為它是一種通用技術,用於整個機器學習。但是,我加入了sary/#softmax" rel="nofollow,noindex" target="_blank"> softmax 或word2vec" rel="nofollow,noindex" target="_blank"> word2vec 等術語,因為它們通常與深度學習相關,即使它們不是深度學習技術。
啟用函式
為了讓神經網路學習複雜的決策邊界,我們將非線性啟用函式應用於其某些層。常用的函式包括 sigmoid 、tanh 、ReLU(整流線性單元) 及它們的變體。
Adadelta
Adadelta 是一種基於梯度下降的學習演算法,可以隨時間調整每個引數的學習速率。它被認為是對 Adagrad 的改進,因為 Adagrad 對超引數很敏感,並且可能過於快速的降低學習速度。Adadelta類似於 rmsprop ,可以用來代替樸素 SGD 。
相關資源:
2、斯坦福CS231n:優化演算法 ;
3、梯度下降優化演算法概述 ;
Adagrad
Adagrad 是一種自適應學習速率演算法,它可以跟隨時間變化,並自動調整每個引數的學習速率。它可以代替vanilla SGD使用,並且對稀疏資料特別有用,它可以為不經常更新的引數分配更高的學習率。
相關資源:
2、斯坦福CS231n:優化演算法 ;
3、梯度下降優化演算法概述 ;
Adam
Adam 是一種類似於 rmsprop 的自適應學習速率演算法,但是使用梯度的第一和第二時刻的執行平均值直接估計更新,並且還包括偏差校正項。
Affine layer(仿射層)
一種神經網路中的完全連線層。仿射意味著前一層中的每個神經元都連線到當前層中的每個神經元。在許多情況下,這是神經網路的“標準”層。在進行最終預測之前,通常會在 卷積神經網路 或 遞迴神經網路 的輸出之上新增仿射層。仿射層通常形式的 y=f(Wx+b) ,其中 x 是該層的輸入, W 引數, b 偏置向量,f是非線性 啟用函式 。
注意力機制
注意力機制受到人類視覺注意力機制的啟發,即關注影象特定部分的能力。注意力機制可以應用在語言處理和影象識別架構中,以幫助網路瞭解在進行預測時“關注”的內容。
Alexnet
Alexnet 是一種卷積神經網路架構的名稱,它以絕對的優勢贏得了ILSVRC 2012競賽。它由五個卷積層組成,其中一些後面是最大池層,三個是完全連線的層,最後是1000-way softmax。Alexnet在 深度卷積神經網路的 ImageNet 分類中 被引入。
自動編碼器
自動編碼器是一種神經網路模型,其目標是預測輸入本身,通常是通過網路中某處的“瓶頸”。通過引入瓶頸,我們可以強制網路輸入的低維表示,這樣能有效地將輸入壓縮為更好的表示。自動編碼器與PCA和其他降維技術差不多,但由於其非線性的特性,它可以學習更復雜的對映。而且存在很多種自動 編碼 器架構,包括 去噪自動編碼器 、 變分自動編碼器 或 序列自動編碼器 。
平均池( Average-Pooling )
Average-Pooling 是用於影象識別的卷積神經網路的 彙集 技術。它的工作原理是在一系列特徵(例如畫素)上滑動視窗,並獲取視窗內所有值的平均值。它可以將輸入壓縮為較低維表示。
反向傳播
反向傳播是一種有效計算神經網路中梯度的演算法,更一般地說,是一種前饋計算圖。可以把它歸結為從網路輸出開始應用差異化的鏈規則並向後傳播梯度,反向傳播的第一次使用可以追溯到1960年代的Vapnik。
反向傳播時間(BPTT)
Backpropagation Through Time ( paper )是應用於遞迴神經網路(RNN)的 反向傳播演算法 。BPTT可被視為應用於RNN的標準反向傳播演算法,其中每個時間步長代表一個層,並且引數在各層之間共享。由於RNN在所有時間步驟中共享相同的引數,因此必須將“一段時間”的錯誤“通過時間”反向傳播到所有先前的時間步驟,因此名稱。當處理長序列時,經常使用Truncated-BPTT來降低計算成本。Truncated-BPTT在固定步數後停止反向傳播錯誤。
1、 通 過時間 反向 傳 播:它做什麼以及如何做到 這 一點
批量標準化(Batch Normalization)
批量標準化是一種對每個小批量的層輸入進行標準化的技術。它加快了訓練的速度,允許使用更高的學習率。目前已經發現批量標準化對卷積和前饋神經網路非常有效,但尚未成功應用於遞迴神經網路。
1、批量標準化:通過減少內部協變數轉換來加速深度網路訓練 ;
2、批量標準化遞迴神經網路 ;
雙向RNN
雙向RNN是一種神經網路,包含兩個進入不同方向的 RNN 。前向RNN從開始到結束讀取輸入序列,而後向RNN從結束到開始讀取輸入序列。兩個RNN堆疊在彼此之上,並且通常通過附加兩個向量來組合它們的狀態。雙向RNN通常用於自然語言問題,因為希望在進行預測之前考慮單詞之前和之後的上下文。
1、 雙向 遞迴 神 經 網 絡 ;
Caffe 是伯克利視覺和學習中心開發的深度學習框架,Caffe在視覺任務和 CNN 模型中特別受歡迎。
分類交叉熵損失(Categorical Cross-Entropy Loss)
分類交叉熵損失也稱為負對數似然,它是分類問題中流行損失函式,它可以測量兩個概率分佈之間的相似性,通常是真實標籤和預測標籤。它由真實標籤的概率分佈 L =-sum(y * log(y_prediction)) 在何處給出, y_prediction 是預測標籤的概率分佈,通常來自 softmax 。
通道(Channel)
向Deep Learning模型輸入資料可以有多個通道。一般的影象是具有紅色、綠色和藍色通道。影象可以表示為三維張量,其尺寸對應於通道、高度和寬度。自然語言資料也可以具有多個通道,例如以不同型別的 嵌入 的形式。
卷積神經網路(CNN,ConvNet)
CNN 使用 卷積 來連線輸入的區域性區域的提取特徵。大多數CNN都包含卷積, 彙集 和 仿射 層。CNN已經越來越受歡迎,特別是他們在視覺識別任務方面的出色表現。
2、NLP中使用卷積神經網路 ;
深度信念網路(DBN)
DBN 是一種概率圖形模型,其以無監督的方式學習資料的分層表示。DBN由多個隱藏層組成,每個連續的層中的神經元之間具有連線。 DBN 是通過將多個 RBN 堆疊 在一起 並逐個訓練來構建的。
DeepDream
Google 發明的一種技術,旨在提煉深層卷積神經網路捕獲的知識。該技術可以生成新影象或者轉換現有影象並賦予它們夢幻般的風格。
Dropout
Dropout 是神經網路的正則化技術,可防止過度擬合。它通過在每次訓練迭代中將它們的一部分隨機設定為0來防止神經元過度適應。可以以各種方式解釋丟失,例如從指數數量的不同網路中隨機取樣。Dropout層首先通過在 CNN 中 的使用而獲得普及,但此後已應用於其他層。
2、 遞迴神經網路正則化
嵌入(Embedding)
嵌入是將輸入(例如單詞或句子)對映到向量中。有一種流行的嵌入型別是word嵌入,例如 word2vec 或 GloVe 。它們可以嵌入句子,段落或影象。例如,通過將影象及其文字描述對映到公共嵌入空間並最小化它們之間的距離,我們可以將標籤與影象匹配。嵌入可以明確地學習,例如在 word2vec 中 ,也作為監督任務的一部分,例如情感分析。通常,網路的輸入層用預先訓練的嵌入進行初始化,然後將其 微調 到手頭的任務。
梯度爆炸問題
梯度爆炸問題正好與 消失梯度問題 相反。在深度神經網路中,梯度可能在反向傳播期間爆炸,導致數量溢位。處理梯度爆炸的常用技術是執行梯度裁剪。
1、 訓練遞迴 神 經 網 絡 的 難 點 ;
微調
微調是指使用來自其他任務(例如無人監督的訓練任務)的引數初始化網路,然後根據手頭的任務更新這些引數的技術。例如,NLP架構通常使用像 word2vec 這樣的預訓練詞嵌入模型,然後在訓練期間根據諸如情感分析之類的特定任務更新這些詞嵌入模型。
梯度裁剪
梯度裁剪是一種防止在非常深的網路中 爆炸梯度 的技術。執行梯度裁剪有很多方式,但常見的是當引數向量的L2範數超過某個閾值時歸一化引數向量的梯度 new_gradients=gradients * threshold/l2_norm(gradients) 。
手套(GloVe)
GloVe 是一種用於獲得單詞的矢量表示( 嵌入 )的無監督學習演算法。GloVe向量與word2vec具有相同的目的,但由於受到共現統計的訓練,因此具有不同的向量表示。
GoogleLeNet
它是贏得ILSVRC 2014挑戰的卷積神經網路架構。網路使用 Inception 模組 來減少引數並提高網路內計算資源的利用率。
GRU
門控迴圈單元是LSTM單元的簡化版本,引數較少。就像LSTM單元一樣,它使用門控機制防止RNN通過出現 梯度消失的問題 。GRU由一個復位門和更新門組成,用於確定舊儲存器的哪一部分與當前時間步的新值保持一致。
1、使用RNN編碼器-解碼器學習短語表示以進行統計機器翻譯 ;
2、迴圈神經網路教程-使用Python和Theano實現GRU/LSTM RNN ;
初始模組
初始模組用於卷積神經網路,通過堆疊1×1卷積降低維數,實現更高效的計算和更深入的網路。
Kears 是一個基於Python的深度學習庫,包含許多用於深度神經網路的高階構建塊。它可以在 TensorFlow 、 Theano 或 CNTK 之上執行 。
LSTM
長短期記憶網路是為了通過使用記憶門控機制來防止遞迴神經網路中的 消失梯度問題 。使用LSTM單元計算RNN中的隱藏狀態,幫助網路有效地傳播梯度並學習遠端依賴性。
1、長短期記憶 網路;
2、瞭解LSTM網路 ;
3、迴圈神經網路教程-使用Python和Theano實現GRU/LSTM RNN ;
Max-pooling
池 操作通常在卷積神經網路中使用。最大池層會選擇特徵塊中的最大值,就像卷積層一樣,池化層通過視窗大小和步幅大小進行引數化。例如,我們可以使用步幅大小2在10×10特徵矩陣上滑動尺寸為2×2的視窗,在每個視窗內的所有4個值中選擇最大值,從而產生新的5×5特徵矩陣。合併圖層有助於通過僅保留最顯著的資訊來減少表徵的維度,並且在影象輸入的情況下,它們提供轉換的基本不變性(即使影象移動了幾個畫素,也將選擇相同的最大值)。通常在連續的卷積層之間會插入池化層。
MNIST
該 MNIST 資料集 是最常用的影象識別資料集。它包括60,000個訓練和10,000個手寫數字測試示例。每個影象大28×28畫素,現有技術模型通常在測試裝置上達到99.5%或更高的精度。
未完待續····
本文由 阿里云云棲社群 組織翻譯。
文章原標題《deep-learning-glossary》
作者:wildml 譯者:虎說八道,審校:。
文章為簡譯,更為詳細的內容,請檢視 原文 。