1. 程式人生 > >神經網路中依賴於上下文的處理的連續學習

神經網路中依賴於上下文的處理的連續學習

Continuous Learning of Context-dependent Processing in Neural Networks

作者: Guanxiong Zeng, Yang Chen, Bo Cui and Shan Yu

5 Oct 2018

今天下午陳陽師兄來講他最近的工作,感覺挺巧妙的,主要是解決兩個問題,神經網路會遺忘和連續學習的問題。

Orthogonal Weights Modification (OWM)

一個神經網路先學習一個任務,訓練完成後,再進行另外一個任務的訓練,往往會將第一個任務遺忘。但人腦並不是這樣,這個方法就是要解決這個問題。給兩個任務先後學習,給兩個任務的輸入,希望神經網路的結果都是正確的。
我的理解是這個方法的原理是利用正交空間的思想,使得學習第二個任務時候不影響第一個任務的解:

y = W x y=W\cdot x

y

= ( W + Δ W ) x
y=(W+\Delta W)\cdot x

只要學習時更新權重的方向 Δ W \Delta W 與原來的輸入 x x 都正交,就不會影響原來的解。由矩陣論的性質可知,正交投影矩陣

P = I A ( A T A + α I ) 1 A T P=I-A(A^TA+\alpha I)^{-1}A^T
A = [ x 1 , x 2 , . . . , x n ] A=[x_1,x_2,...,x_n] $

滿足這個性質。即任意一個向量 b b ,都可以分解成原來的輸入空間 A A 上的分量和與 A A 正交的分量,先用最小二乘法求解輸入空間 A A 上的分量有

b = A k b=A\cdot k

A T = A T A k A^T=A^TA\cdot k

k = ( A T A ) 1 A T k=(A^TA)^{-1}A^T

b b 在空間 A A 上的分量為 k A = ( A T A ) 1 A T A kA=(A^TA)^{-1}A^TA ,那麼與 A A 正交的分量為

( I A ( A T A + α I ) 1 A T ) b (I-A(A^TA+\alpha I)^{-1}A^T)b

P b Pb α \alpha 為一個很小的正數,防止求逆出現問題。訓練任務2的時候,只要更新的梯度先投影到正交空間上,然後梯度下降,就可以保證訓練時任務1的結果不受影響。在實際訓練中, P P 可以遞迴的求解:

  • (a)隨機初始化每層的權重 W l ( 0 ) W_l(0) 和投影矩陣 P l ( 0 ) = I l / α P_l(0)=I_l/\alpha

  • (b)對於第 j j 個任務的第 i i 個batch,用BP演算法求解出每層的更新權重 Δ W l B P ( i , j ) \Delta W_l^{BP}(i,j)

  • (c)更新權重( κ ( i , j ) \kappa (i,j) 時預先設定的步長)
    W l ( i , j ) = W l ( i 1 , j ) + κ ( i , j ) Δ W l B P ( i , j )   i f   j = 1 W_l(i,j)=W_l(i-1,j)+\kappa (i,j)\Delta W^{BP}_l (i,j)~if~j=1
    W l ( i , j ) = W l ( i 1 , j ) + κ ( i , j ) P l ( j 1 ) Δ W l B P ( i , j )   i f   j = 2 , 3 , . . . W_l(i,j)=W_l(i-1,j)+\kappa (i,j)P_l(j-1)\Delta W^{BP}_l (i,j)~if~j=2,3,...

  • (d)重複(b)(c),訓練任務 j j

  • (e)當任務 j j 訓練完成後,更新 P l ( j ) = P l ( n j , j ) P_l(j)=P_l(n_j,j) ,( P l ( 0 , j ) = P l ( j 1 ) P_l(0,j)=P_l(j-1)

    相關推薦

    神經網路依賴上下文處理連續學習

    Continuous Learning of Context-dependent Processing in Neural Networks 作者: Guanxiong Zeng, Yang Chen, Bo Cui and Shan Yu 5 Oct 2018 今天下午陳陽師兄

    傳統神經網路常用的regularization方法

    1、basic choice (1)通過一定的方式來縮小權重 (2)通過一定的方式將部分權重置為0 (3)weight-elimination regulizer   2、Early Stoppping Early stopping方法可以控制VC dimension

    神經網路隱層數和隱層節點數問題的討論

    神經網路中隱層數和隱層節點數問題的討論 一 隱層數         一般認為,增加隱層數可以降低網路誤差(也有文獻認為不一定能有效降低),提高精度,但也使網路複雜化,從而增加了網路的訓練時間和出現“過擬合”的傾向。一般來講應設

    變形卷積核、可分離卷積?卷積神經網路十大拍案叫絕的操作

    大家還是去看原文好,作者的文章都不錯: https://zhuanlan.zhihu.com/p/28749411 https://www.zhihu.com/people/professor-ho/posts 一、卷積只能在同一組進行嗎?-- Group convo

    深度神經網路,適用小型指令碼文字相關的語音驗證

    DEEP NEURAL NETWORKS FOR SMALL FOOTPRINT TEXT-DEPENDENT SPEAKER VERIFICATION d-ivector系統優於i-ivector系統。 我們還嘗試了DNN培訓的不同配置。如果沒有maxo

    2013-2018卷積神經網路十個最重要的概念與創新

    本文作者Professor ho,原文載於其知乎主頁 一、卷積只能在同一組進行嗎?– Group convolution  Group convolution 分組卷積,最早在AlexNet中出現,由於當時的硬體資源有限,訓練AlexNet時卷積操作不能全部放在同一個GPU處理,因此作

    淺析神經網路為什麼能夠無限逼近任意連續函式

    轉載自  淺析神經網路為什麼能夠無限逼近任意連續函式 神經網路為什麼能夠無限逼近任意連續函式?  下面通過一個分類例子一步一步的引出為什麼神經網路能夠無限逼近任意函式這個觀點,並且給出直觀感覺! 我們首先有這個需求,需要將下面的資料點進行分類,將三角形與正方

    神經網路訓練資料集、驗證資料集和測試資料集的區別

    whats the difference between train, validation and test set, in neural networks? Answer: The training and validation sets are used during t

    神經網路的非線性啟用函式

    目錄 0. 前言 1. ReLU 整流線性單元 2. 絕對值整流線性單元 3. 滲漏整流線性單元 4. 引數化整流線性單元 5. maxout 單元 6. logistic sigmoid 單元

    訓練神經網路最基本的三個概念和區別:Epoch, Batch, Iteration

    epoch:訓練時,所有訓練資料集都訓練過一次。 batch_size:在訓練集中選擇一組樣本用來更新權值。1個batch包含的樣本的數目,通常設為2的n次冪,常用的包括64,128,256。 網路較小時選用256,較大時選用64。 iteration​:訓練時,1個batch訓練影象通過網路訓

    神經網路反向傳播演算法(BP)

    神經網路中反向傳播演算法(BP) 本文只是對BP演算法中的一些內容進行一些解釋,所以並不是嚴格的推導,因為我在推導的過程中遇見很多東西,當時不知道為什麼要這樣,所以本文只是對BP演算法中一些東西做點自己的合理性解釋,也便於自己理解。 要想看懂本文,要懂什麼是神經網路,對前向傳播以

    神經網路sigmoid 與代價函式

    1.從方差代價函式說起 代價函式經常用方差代價函式(即採用均方誤差MSE),比如對於一個神經元(單輸入單輸出,sigmoid函式),定義其代價函式為: 其中y是我們期望的輸出,a為神經元的實際輸出【 a=σ(z), where z=wx+b 】。 在訓練神經網路過程中,我們通過梯度下降演算

    卷積神經網路感受野的理解和計算

    什麼是感受野 “感受野”的概念來源於生物神經科學,比如當我們的“感受器”,比如我們的手受到刺激之後,會將刺激傳輸至中樞神經,但是並不是一個神經元就能夠接受整個面板的刺激,因為面板面積大,一個神經元可想而知肯定接受不完,而且我們同時可以感受到身上面板在不同的地方,如手、腳,的不同的刺激,如

    如何利用Keras的權重約束減少深度神經網路的過擬合

                                              &nb

    【2014.10】神經網路的深度學習綜述

    本綜述的主要內容包括: 神經網路中的深度學習簡介 神經網路中面向事件的啟用擴充套件表示法 信貸分配路徑(CAPs)的深度及其相關問題 深度學習的研究主題 有監督神經網路/來自無監督神經網路的幫助 FNN與RNN中用於強化學習RL

    神經網路的值為1的偏置項b到底是什麼?

    https://blog.csdn.net/Uwr44UOuQcNsUQb60zk2/article/details/81074408 前言 很多人不明白為什麼要在神經網路、邏輯迴歸中要在樣本X的最前面加一個1,使得 X=[x1,x2,…,xn] 變成 X=

    BP單隱藏層神經網路隱藏層節點個數的取值

    BP神經網路中隱藏層節點個數的取值有下面幾種方法: 第一種方法: 一個經驗公式: 其中為隱藏層節點數目,為輸入層節點數目,為輸出層節點數目,為之間的調節常數。 第二種方法: Kolmogorov定理確定隱藏層節點數: 柯爾莫哥洛夫(Kolmogorov)定理:

    卷積神經網路十大拍案叫絕的操作

    從2012年的AlexNet發展至今,科學家們發明出各種各樣的CNN模型,一個比一個深,一個比一個準確,一個比一個輕量。我下面會對近幾年一些具有變革性的工作進行簡單盤點,從這些充滿革新性的工作中探討日後的CNN變革方向。 很棒的分享, 轉自 CVer   卷積

    [深度學習] 神經網路的啟用函式(Activation function)

    20180930 在研究調整FCN模型的時候,對啟用函式做更深入地選擇,記錄學習內容 啟用函式(Activation Function),就是在人工神經網路的神經元上執行的函式,負責將神經元的輸入對映到輸出端。 線性啟用函式:最簡單的linear fun

    神經網路矩陣求導術的應用

    序 本文假設讀者熟悉一元微積分,線性代數,並已經學習過矩陣求導術:知乎專欄. 在神經網路中,矩陣求導術發揮的最重要的作用便是求losslossloss對某個引數的梯度. 比如在多層神經網路(MLP)中,某一層的推導公式為al+1=g(Wal+b)a^{l+1}