分類性能度量
- 精確率和召回率
向量範數,矩陣範數
欠擬合、過擬合
與模型的variance, bias的關係
抑制過擬合
- 使用歸納性更好的模型
- 使用數據擴增技術
- 降低模型的複雜度
- 增加更多的數據
- Dropout
在深度學習網絡的訓練過程中,對於神經網絡單元,按照一定的概率將其暫時從網絡中丟棄 - 正則化
降維方法
-
LDA原理
- 線性判別分析(Linear Discriminant Analysis, 簡稱LDA )是一種監督學習的降維技術,即數據集的每個樣本有類別輸出。
- LDA的基本思想:“投影后類內方差最小,類間方差最大”。即將數據在低維度上進行投影,投影后希望同類數據的投影點儘可能接近,而不同類數據的類別中心之間的距離儘可能的大。
-
PCA原理
- 主成分分析(principal component analysis) 是一種無監督的降維方法。
- PCA的基本思想是採用數學變換,把給定的一組相關特徵維度通過線性變換轉成另一組不相關的維度(即principal components),這些新的維度按照方差依次遞減的順序排列:形成第一主成分、第二主成分等等。
-
PCA白化
所謂的pca白化是指對上面的pca的新座標X’,每一維的特徵做一個標準差歸一化處理。因爲從上面我們看到在新的座標空間中,(x1,x2)兩個座標軸方向的數據明顯標準差不同,因此我們接着要對新的每一維座標做一個標註差歸一化處理:
-
數據歸一化
信息熵,交叉熵, KL散度, JS散度
- 信息熵
- 交叉熵
交叉熵是信息論中一個重要的概念, 用於表徵兩 個變量概率分佈
P, Q(假設P表示真實分佈, Q爲模型預測的分佈)的差異性 。交叉熵越大 , 兩個變量差異程度越大。
- 相對熵(relative entropy)
也稱爲KL散度(Kullback–Leibler divergence,簡稱KLD)、信息散度
(information divergence)、信息增益(information gain)。
相對熵的定義:是交叉熵與信息熵的差值。表示用分佈Q模擬真實分
布P,所需的額外信息
- JS散度
JS散度(Jensen–Shannon divergence)具有對稱性:
由於KL散度不具對稱性,因此JS散度在KL散度的基礎上進行了改進。現有兩個分佈p1和p2,其JS散度公式爲:
- 聯合熵
聯合熵 (複合熵,Joint Entropy): 用H(X, Y)表示
兩個隨機變量X,Y的聯合分佈的熵, 形成聯合熵 - 條件熵
- 互信息
感知機的原理
神經網絡
基礎知識,結構、激勵函數及導函數、網絡參數量計算等等
梯度下降法
- 初始化模型的參數,如權重和偏差等
- 把樣本輸入給模型,得到預測值
- 根據樣本預測值和真實值之間的誤差,計算損失函數
- 反向傳播,按照梯度下降的方向改變神經元相應的權重值
- 迭代更新,直到模型整體誤差小於閾值或者達到預定的迭代次數
- 三種不同的形式
批量梯度下降(Batch Gradient Descent)、隨機梯度下降(Stochastic Gradient Descent)以及小批量梯度下降(Mini-Batch Gradient Descent)
神經網絡-激勵函數
Softmax函數通常用在神經網絡輸出層中,以計算得到樣本屬於這K個類的概率,且使得這些概率的和等於1。其它函數不能滿足這一要求。
全連接網絡和卷積神經網絡
反向傳播原理
如果經過正向傳播,在輸出層得不到期望的輸出值,則利用輸出與期望計算目標函數(損失函數),轉入反向傳播
反向傳播需要逐層求出目標函數對各神經元權值的偏導數,構成目標函數對權值向量的梯度,作爲修改權值的依據。
聯繫區別
全連接神經網絡:
不適合做圖像識別原因:
-
參數數量太多
-
沒有利用像素之間的位置信息
對於圖像識別任務來說,每個像素和其周圍像素的聯繫是比較緊密的,和離得很遠的像素的聯繫可能就很小了。如果一個神經元和上一層所有神經元相連,那麼就相當於對於一個像素來說,把圖像的所有像素都等同看待,這不符合前面的假設。當我們完成每個連接權重的學習之後,最終可能會發現,有大量的權重,它們的值都是很小的。努力學習大量並不重要的權重,這樣的學習必將是非常低效的。 -
網絡層數限制
我們知道網絡層數越多其表達能力越強,但是通過梯度下降方法訓練深度全連接神經網絡很困難,因爲全連接神經網絡的梯度很難傳遞超過3層。因此,我們不可能得到一個很深的全連接神經網絡,也就限制了它的能力。
卷積神經網絡:
適合做圖像識別:
- 局部連接
每個神經元不再和上一層的所有神經元相連,而只和一小部分神經元相連。這樣就減少了很多參數。 - 權值共享
一組連接可以共享同一個權重,而不是每個連接有一個不同的權重,這樣又減少了很多參數。 - 下采樣
可以使用Pooling來減少每層的樣本數,進一步減少參數數量,同時還可以提升模型的魯棒性。
對於圖像識別任務來說,卷積神經網絡通過儘可能保留重要的參數,去掉大量不重要的參數,來達到更好的學習效果。
卷積神經網絡
原理和知識 卷積計算
- 卷積層和降採樣層交替組成網絡
經過卷積處理,生成的特徵圖(feature map)的數目可能和處理前的圖像的數目相同,也有可能不相同
經過降採樣處理,生成的特徵圖(feature map)的數目通常和處理前的圖像的數目相同
特點:
- 局部卷積
- 參數共享
允許一個特徵檢測器在整個輸入圖像的不同位置使用,即可以把參數看成是卷積提取特徵的方式,該方式與位置無關 - 多卷積核
- 池化操作
也叫作降採樣處理(down‐pooling),是對不同位置的特徵進行聚合統計。通常是取對應位置的最大值(最大池化)、平均值(平均池化)。 - 多層處理
正則化
-
早期停⽌
爲避免過度擬合訓練集,⼀個很好的解決⽅案就是儘早停⽌訓練:只要在訓練集的性能開始下降時中斷 -
權重衰減
-
L和12正則
-
數據增強和提前終止
-
Dropout
在每個訓練步驟中,每個神經元(包括輸⼊神經元,但不包括輸出神經元)都有⼀個“丟棄”的概率p,這意味着在這個訓練步驟中它將被完全忽略, 在下⼀步可能會激活。 超參數p稱爲丟失率,通常設爲 50
循環神經網絡
原理和知識
循環神經網絡RNN的三個時間步
- RNN:隱藏層的節點之間有連接,是主要用於對序列數據進行分類、預測等處理的神經網絡
- 難以應對長期依賴
LSTM(Long Short-Term Memory)
輸出門控制是否把長期狀態作爲當前的LSTM的輸出,忘記門控制保存之前的長期狀態,輸入門控制更新長期狀態,LSTM用三個控制門記憶長期狀態。
- 即長短期記憶網絡,是RNN的擴展,其通過特殊的結構設計來避免長期依賴問題。
- LSTM中忘記門和輸出門要用到乘法門,輸入門要用到加法門。
- 在計算當前時刻的輸出時,直接利用到的是隱藏狀態h。而在計算獲得h的時候會用到長期狀態c。
- 忘記門層 的任務是從長期狀態中“忘記”信息
遞歸神經網絡
-
樹結構基於句法分析器生成
-
所有的詞向量被存儲在一個詞嵌入矩陣中。隨着訓練的進行,該矩陣將被視爲一種參數,因此會被學習調整
-
每個詞通常初始化表示爲一個d維的向量,由一個隨機均勻分佈隨機採樣生成
-
遞歸神經網絡RNN (Socher et al., 2011)父節點的向量通過利用組合函數g由其孩子節點的向量得到。此時,通過乘以適當的參數矩陣,可以使得不同長度和句法類型的句子其組合詞向量的維度都相同。
自編碼網絡
用許多無標籤的數據學習得到數據通用的特徵表示
使用自動編碼器提取特徵,並與有監督學習模型使用
儘管是一種無監督模型,但自動編碼器仍存在損失函數,即重構自身的誤差;自動編碼器需要利用到在訓練集上重構自身的損失函數來更新參數
自動編碼器是一種無監督的學習模型,不會用到樣本的類別標籤,或者說輸入的樣本通常是不帶標籤的;
變分自編碼網絡(不用推導其原理)
-
變分自動編碼器主要用於生成新的樣本
-
變分自編碼器(Variational Autoencoders,VAE)通常假設潛在變量 服從某種先驗分佈(如高斯分佈)
-
VAE在自動編碼機基礎上加入了隨機因子,這樣就可以從該模型中採樣得到新的數據
-
變分自編碼器在生成數據階段只需要用到解碼器,並採用隨機採樣的方式生成數據。
-
變分編碼器實際上是在優化數據的對數似然的下界,並求解參數
-
訓練過程中用到了KL散度的計算
-
通常採用最大對數似然來學習得到模型的參數
生成對抗網絡的原理和知識
原理
GAN (Generative Adversarial Networks)包括兩部分:生成器和判別器。
生成器: 從隨機噪聲中生成圖像(隨機噪聲通常從均勻分佈或高斯
分佈中獲取)
判別器: 其輸入爲生成器生成的圖像和來自訓練集中的真實圖像,
並對其進行判別。得到輸出值爲一個0到1之間的數,表示圖像爲真
實圖像的概率,real爲1,fake爲0
- 目標函數
生成器的優化目標是是,儘可能生成讓判別器難以辨認的圖像,因此需要使得其取值儘可能地小。
判別器訓練階段,爲了得到較好的判別器,需要使得其取值儘可能大,即能夠分辨真實和生成的圖像