神經(jīng)網(wǎng)絡(luò)系統(tǒng)及該神經(jīng)網(wǎng)絡(luò)系統(tǒng)的訓(xùn)練方法
【專利摘要】本發(fā)明涉及一種神經(jīng)網(wǎng)絡(luò)系統(tǒng)及該神經(jīng)網(wǎng)絡(luò)系統(tǒng)的訓(xùn)練方法。該神經(jīng)網(wǎng)絡(luò)系統(tǒng)包括:輸入層;隱含層;以及每個隱含層之后的輸出層,其中,輸出層包括分類器和重構(gòu)器。本發(fā)明的神經(jīng)網(wǎng)絡(luò)系統(tǒng)能夠同時優(yōu)化分類誤差和重構(gòu)誤差,從而更好地從一個數(shù)據(jù)集中學(xué)習(xí)特征并更完整地提取該數(shù)據(jù)集的信息,以用于輔助訓(xùn)練另一個相似的數(shù)據(jù)集上的神經(jīng)網(wǎng)絡(luò)系統(tǒng)。
【專利說明】
神經(jīng)網(wǎng)絡(luò)系統(tǒng)及該神經(jīng)網(wǎng)絡(luò)系統(tǒng)的訓(xùn)練方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及信息處理領(lǐng)域,更具體地涉及一種神經(jīng)網(wǎng)絡(luò)系統(tǒng)及該神經(jīng)網(wǎng)絡(luò)系統(tǒng)的 訓(xùn)練方法。
【背景技術(shù)】
[0002] 近來,基于深度神經(jīng)網(wǎng)絡(luò)的方法在字符識別領(lǐng)域取得一些發(fā)展。許多研究表明,傳 統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)(DNN)在一個數(shù)據(jù)集A上訓(xùn)練的模型A_M,可以用于輔助訓(xùn)練在另一個數(shù) 據(jù)集B上的模型B_M,使得B_M比直接用數(shù)據(jù)集B訓(xùn)練出的模型具有更好的性能。也就是 說,深度神經(jīng)網(wǎng)絡(luò)具有一定的迀移學(xué)習(xí)的能力。
[0003] 傳統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)是一種層級模型,由一個輸入層,若干個隱含層和一個輸出 層組成。圖1是傳統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)模型的示意圖。其中,輸入層一般為待處理的數(shù)據(jù),隱 含層的類型包括:卷積層、池化層、全連接層等等。對于分類問題而言,輸出層一般為一個線 性分類器,如sof tmax,SVM (支持向量機(jī))等等。
[0004] 傳統(tǒng)的用神經(jīng)網(wǎng)絡(luò)進(jìn)行迀移學(xué)習(xí)的過程為:給定兩個帶標(biāo)注的數(shù)據(jù)集A和B,先用 神經(jīng)網(wǎng)絡(luò)在數(shù)據(jù)集A上訓(xùn)練一個模型M_A (稱為迀移學(xué)習(xí)的第一階段),然后,用數(shù)據(jù)集B對 M_A進(jìn)行微調(diào),得到數(shù)據(jù)集B上對應(yīng)的模型M_B (稱為迀移學(xué)習(xí)的第二階段);或者,將M_A 中最后的若干個隱含層(一般為1~3個)替換成新的結(jié)構(gòu),然后用數(shù)據(jù)集B訓(xùn)練時保持 M_A中前幾層不變,只訓(xùn)練新加入的幾個隱含層,得到數(shù)據(jù)集B上對應(yīng)的模型M_B (也稱作迀 移學(xué)習(xí)的第二階段)。
[0005] 傳統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)的優(yōu)化目標(biāo)是使得分類誤差最小,優(yōu)化方法為后向傳播算 法。圖2示出了后向傳播算法的示意圖。首先,輸入層的信息隨著DNN網(wǎng)絡(luò)做前向傳播,到 輸出層之后與真值比較,得到一個誤差;然后,這個誤差逐層往回傳,從而修正每一層的參 數(shù)。如此迭代地進(jìn)行,直到得到一個算法收斂。
[0006] 傳統(tǒng)的后向傳播算法面臨著誤差彌散的問題,即誤差在逐層往回傳的過程中越來 越小,使得深度神經(jīng)網(wǎng)絡(luò)的前幾個隱含層得不到充分的訓(xùn)練。參考文獻(xiàn)【1】提出,直接優(yōu)化 隱含層可以解決誤差彌散問題,其方法如圖3所示,前向傳播時,輸入層的信息通過隱含層 傳遞至每一個輸出層;后向傳播時,每一個輸出層所產(chǎn)生的誤差逐層回傳至輸入層,并修改 每一層的參數(shù),直到算法收斂。這里,圖3中分類器相當(dāng)于圖1和圖2中的輸出層。
[0007] 不管是傳統(tǒng)的算法還是參考文獻(xiàn)【1】中的算法,其優(yōu)化的目標(biāo)是使得分類誤差最 小。然而,對于迀移學(xué)習(xí)而言,在數(shù)據(jù)集A上的分類誤差最小并不能保證該模型對數(shù)據(jù)集B 是最優(yōu)的。
[0008] 因此,需要一種能夠同時優(yōu)化分類誤差和重構(gòu)誤差的改進(jìn)的DNN,能更好的從數(shù)據(jù) 集A上學(xué)習(xí)特征以用于數(shù)據(jù)集B中,以及該神經(jīng)網(wǎng)絡(luò)系統(tǒng)的訓(xùn)練方法。
[0009] 參考文獻(xiàn)【I 】:CY Lee, S Xie, P Gallagher, Z Zhang, Z Tu. Deeply-Supervised Nets. arXiv 2014.
【發(fā)明內(nèi)容】
[0010] 在下文中給出關(guān)于本發(fā)明的簡要概述,以便提供關(guān)于本發(fā)明的某些方面的基本理 解。應(yīng)當(dāng)理解,這個概述并不是關(guān)于本發(fā)明的窮舉性概述。它并不是意圖確定本發(fā)明的關(guān) 鍵或重要部分,也不是意圖限定本發(fā)明的范圍。其目的僅僅是以簡化的形式給出某些概念, 以此作為稍后論述的更詳細(xì)描述的前序。
[0011] 本發(fā)明的一個主要目的在于,提供一種神經(jīng)網(wǎng)絡(luò)系統(tǒng),包括:輸入層;隱含層;以 及每個隱含層之后的輸出層,其中,輸出層包括分類器和重構(gòu)器。
[0012] 根據(jù)本發(fā)明的一個方面,提供了對上述神經(jīng)網(wǎng)絡(luò)系統(tǒng)進(jìn)行訓(xùn)練的訓(xùn)練方法,該神 經(jīng)網(wǎng)絡(luò)系統(tǒng)包括N個隱含層和N個輸出層,該訓(xùn)練方法包括:用第1個輸出層訓(xùn)練第1個隱 含層;用第2個輸出層訓(xùn)練第2個隱含層,并微調(diào)第2個隱含層;用第3個輸出層訓(xùn)練第3 個隱含層,并微調(diào)第1個和第2個隱含層;依次對后面各層進(jìn)行訓(xùn)練,直至用第N個輸出層 訓(xùn)練第N個隱含層,并微調(diào)第1個至第N-I個隱含層。
[0013] 另外,本發(fā)明的實(shí)施例還提供了用于實(shí)現(xiàn)上述方法的計(jì)算機(jī)程序。
[0014] 此外,本發(fā)明的實(shí)施例還提供了至少計(jì)算機(jī)可讀介質(zhì)形式的計(jì)算機(jī)程序產(chǎn)品,其 上記錄有用于實(shí)現(xiàn)上述方法的計(jì)算機(jī)程序代碼。
[0015] 通過以下結(jié)合附圖對本發(fā)明的最佳實(shí)施例的詳細(xì)說明,本發(fā)明的這些以及其他優(yōu) 點(diǎn)將更加明顯。
【附圖說明】
[0016] 參照下面結(jié)合附圖對本發(fā)明實(shí)施例的說明,會更加容易地理解本發(fā)明的以上和其 它目的、特點(diǎn)和優(yōu)點(diǎn)。附圖中的部件只是為了示出本發(fā)明的原理。在附圖中,相同的或類似 的技術(shù)特征或部件將采用相同或類似的附圖標(biāo)記來表示。
[0017] 圖1示出了傳統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)模型的示意圖;
[0018] 圖2示出了后向傳播算法的示意圖;
[0019] 圖3示出了另一種深度神經(jīng)網(wǎng)絡(luò)模型的示意圖;
[0020] 圖4示出了根據(jù)本發(fā)明的一個實(shí)施例的神經(jīng)網(wǎng)絡(luò)系統(tǒng)的示意圖400 ;
[0021] 圖5示出了根據(jù)本發(fā)明的一個實(shí)施例的對神經(jīng)網(wǎng)絡(luò)系統(tǒng)進(jìn)行訓(xùn)練的方法500的流 程圖;
[0022] 圖6示出了根據(jù)本發(fā)明的層級累進(jìn)訓(xùn)練法用第一個輸出層訓(xùn)練第一個隱含層的 示意圖;
[0023] 圖7示出了根據(jù)本發(fā)明的層級累進(jìn)訓(xùn)練法用第二個輸出層訓(xùn)練前兩個隱含層的 不意圖;以及
[0024] 圖8是示出可以用于實(shí)施本發(fā)明的對神經(jīng)網(wǎng)絡(luò)系統(tǒng)進(jìn)行訓(xùn)練的方法的計(jì)算設(shè)備 的示例性結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0025] 下面參照附圖來說明本發(fā)明的實(shí)施例。在本發(fā)明的一個附圖或一種實(shí)施方式中描 述的元素和特征可以與一個或更多個其它附圖或?qū)嵤┓绞街惺境龅脑睾吞卣飨嘟Y(jié)合。應(yīng) 當(dāng)注意,為了清楚的目的,附圖和說明中省略了與本發(fā)明無關(guān)的、本領(lǐng)域普通技術(shù)人員已知 的部件和處理的表示和描述。
[0026] 本發(fā)明提出了一種改進(jìn)的神經(jīng)網(wǎng)絡(luò)系統(tǒng),該神經(jīng)網(wǎng)絡(luò)系統(tǒng)能夠同時優(yōu)化分類誤差 和重構(gòu)誤差,從而能夠更好地從一個數(shù)據(jù)集中學(xué)習(xí)特征并更完整地提取該數(shù)據(jù)集的信息, 以用于輔助訓(xùn)練另一個相似的數(shù)據(jù)集上的神經(jīng)網(wǎng)絡(luò)系統(tǒng)。
[0027] 圖4示出了根據(jù)本發(fā)明的一個實(shí)施例的神經(jīng)網(wǎng)絡(luò)系統(tǒng)的示意圖400。如圖4所示, 根據(jù)本發(fā)明的一個實(shí)施例的神經(jīng)網(wǎng)絡(luò)系統(tǒng),包括輸入層402,隱含層404,以及在每一個隱 含層后面的輸出層,該輸出層包括一個分類器406和一個重構(gòu)器408,共同構(gòu)成了一個輸出 層。
[0028] 分類器406的類型可以與圖3中的神經(jīng)網(wǎng)絡(luò)系統(tǒng)中的分類器的類型一致。對于含 有卷積層的神經(jīng)網(wǎng)絡(luò)系統(tǒng)而言,重構(gòu)器可以為反卷積層;對于不含卷積層的神經(jīng)網(wǎng)絡(luò)系統(tǒng) 而言,重構(gòu)器可以是諸多自編碼器(Autoencoder)中的一種,如稀疏自編碼器,去噪自編碼 器等等。
[0029] 對于圖4中所示的神經(jīng)網(wǎng)絡(luò)系統(tǒng)的每一層輸出層(分類器+重構(gòu)器),優(yōu)選地,該 輸出層的優(yōu)化函數(shù)為:
[0030] min λ Ec+(I-A)Er (I)
[0031] 其中E。為分類器所產(chǎn)生的分類誤差,E1^為重構(gòu)器所產(chǎn)生的重構(gòu)誤差,λ為平衡因 子。平衡因子λ隨著輸出層的深度(輸出層的深度定義為該輸出層前一隱含層距離輸入 層的層數(shù))而增大。
[0032] 設(shè)k為某一輸出層的深度,N為神經(jīng)網(wǎng)絡(luò)系統(tǒng)的深度,則優(yōu)選地,平衡因子λ需要 滿足:
[0033] λ = f(k) e [0, 1]單調(diào)遞增,且 f(N) = 1 (2)
[0034] 依據(jù)以上⑵式的條件,在一個示例中,平衡因子λ可以?。?br>[003!
[003<
[003:
[0038] 可以看到,根據(jù)本發(fā)明的一個實(shí)施例的神經(jīng)網(wǎng)絡(luò)系統(tǒng)的輸出層除了包括分類器以 外,還包括重構(gòu)器,在對該神經(jīng)網(wǎng)絡(luò)系統(tǒng)進(jìn)行訓(xùn)練的過程中,重構(gòu)器可以用于重構(gòu)輸入層。 當(dāng)利用神經(jīng)網(wǎng)絡(luò)系統(tǒng)進(jìn)行迀移學(xué)習(xí)的過程中,在迀移學(xué)習(xí)的第一階段,在數(shù)據(jù)集A上訓(xùn)練 得到根據(jù)本發(fā)明的一個實(shí)施例的神經(jīng)網(wǎng)絡(luò)系統(tǒng),可以更完整地提取數(shù)據(jù)集A上的信息,從 而可以在迀移學(xué)習(xí)的第二階段更好地用于輔助訓(xùn)練數(shù)據(jù)集B上的神經(jīng)網(wǎng)絡(luò)系統(tǒng)。
[0039] 此外,通過采用既包含分類器所產(chǎn)生的分類誤差,又包含重構(gòu)器所產(chǎn)生的重構(gòu)誤 差的優(yōu)化函數(shù),可以同時優(yōu)化分類誤差和重構(gòu)誤差,使得能夠更好地從數(shù)據(jù)集A學(xué)習(xí)特征 并更完整地提取數(shù)據(jù)集A上的信息,以用于輔助數(shù)據(jù)集B的訓(xùn)練。
[0040] 下面,將結(jié)合附圖,說明根據(jù)本發(fā)明的一個實(shí)施例對上述神經(jīng)網(wǎng)絡(luò)系統(tǒng)進(jìn)行訓(xùn)練 的方法。
[0041] 圖5示出了根據(jù)本發(fā)明的一個實(shí)施例的對神經(jīng)網(wǎng)絡(luò)系統(tǒng)進(jìn)行訓(xùn)練的方法500的流 程圖。
[0042] 根據(jù)本發(fā)明的一個實(shí)施例的神經(jīng)網(wǎng)絡(luò)系統(tǒng)可以采用傳統(tǒng)的逐層訓(xùn)練法或者參考 文獻(xiàn)【1】中的一起訓(xùn)練法進(jìn)行訓(xùn)練。另外,也可以采用本發(fā)明提出的層級累進(jìn)訓(xùn)練法進(jìn)行 訓(xùn)練。
[0043] 具體來說,對于圖4所示的神經(jīng)網(wǎng)絡(luò)系統(tǒng)模型,首先在步驟S502中,利用第一個輸 出層訓(xùn)練第一個隱含層。圖6示出了根據(jù)本發(fā)明的層級累進(jìn)訓(xùn)練法用第一個輸出層訓(xùn)練第 一個隱含層的示意圖。
[0044] 待第一個隱含層訓(xùn)練完成以后,在步驟S504中,再用第二個輸出層訓(xùn)練前兩個隱 含層。要注意地是,這里不僅是訓(xùn)練第二個隱含層,同時還要微調(diào)第一個隱含層。圖7示出 了根據(jù)本發(fā)明的層級累進(jìn)訓(xùn)練法用第二個輸出層訓(xùn)練前兩個隱含層的示意圖。在圖6和圖 7中,實(shí)線框表示正在進(jìn)行訓(xùn)練的相關(guān)層,虛線框表示訓(xùn)練已完成或待進(jìn)行訓(xùn)練的相關(guān)層。
[0045] 待第二個隱含層訓(xùn)練完成之后,在步驟S506中,開始用第三個輸出層訓(xùn)練前三個 隱含層。即,訓(xùn)練第三個隱含層,同時微調(diào)前兩個隱含層。
[0046] 在步驟S508中,對于后面各層的訓(xùn)練方法可以以此類推,假設(shè)神經(jīng)網(wǎng)絡(luò)系統(tǒng)的深 度為N,則最后用第N個輸出層訓(xùn)練第N個隱含層,并微調(diào)第1個至第N-I個隱含層,然后完 成了對神經(jīng)網(wǎng)絡(luò)系統(tǒng)的訓(xùn)練。
[0047] 通過上述訓(xùn)練方法500,可以得到根據(jù)本發(fā)明的一個實(shí)施例的神經(jīng)網(wǎng)絡(luò)系統(tǒng)。
[0048] 在一個實(shí)施例中,在上述訓(xùn)練過程中,可以逐步降低已訓(xùn)練好的隱含層的學(xué)習(xí)速 率。假設(shè),當(dāng)前訓(xùn)練的輸出層的深度為k,當(dāng)前的學(xué)習(xí)速率為II,則第p個隱含層的學(xué)習(xí)速 率定義為公式(5):
[0049] n P= n *ak ρ (5)
[0050] 其中,a e (〇, I)為衰減系數(shù)。
[0051] 在傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)系統(tǒng)訓(xùn)練過程中,每一個權(quán)重w按照如下公式(6)進(jìn)行調(diào)整:
[0052] w(l+1) = w η *grad (w1) (6)
[0053] 其中w1為訓(xùn)練第i輪時w的值,grad(w D表示訓(xùn)練第i輪時w的梯度,這里的n 即為上文所述的學(xué)習(xí)速率。
[0054] 在一個具體實(shí)施例中,當(dāng)采用深度神經(jīng)網(wǎng)絡(luò)模型進(jìn)行迀移學(xué)習(xí)時,首先在迀移學(xué) 習(xí)的第一階段,對數(shù)據(jù)集A中采用以上所述的根據(jù)本發(fā)明的一個實(shí)施例的方法進(jìn)行訓(xùn)練, 得到神經(jīng)網(wǎng)絡(luò)模型A_M以后,將中間隱含層的所對應(yīng)的輸出層全部移除。這時改進(jìn)的深度 神經(jīng)網(wǎng)絡(luò)模型模型退化成傳統(tǒng)的深度神經(jīng)網(wǎng)絡(luò)模型模型。然后可以用傳統(tǒng)的方法來對數(shù)據(jù) 集B對應(yīng)的深度神經(jīng)網(wǎng)絡(luò)模型模型進(jìn)行訓(xùn)練。
[0055] 本發(fā)明提出一種改進(jìn)的神經(jīng)網(wǎng)絡(luò)系統(tǒng)以及對其進(jìn)行訓(xùn)練的訓(xùn)練方法。該神經(jīng)網(wǎng)絡(luò) 系統(tǒng)能夠同時優(yōu)化分類誤差和重構(gòu)誤差,從而能夠更好地從數(shù)據(jù)集A上學(xué)習(xí)特征并更完整 地提取數(shù)據(jù)集A上的信息,以用于輔助訓(xùn)練數(shù)據(jù)集B上的神經(jīng)網(wǎng)絡(luò)系統(tǒng)。
[0056] 以上結(jié)合具體實(shí)施例描述了本發(fā)明的基本原理,但是,需要指出的是,對本領(lǐng)域的 普通技術(shù)人員而言,能夠理解本發(fā)明的方法和裝置的全部或者任何步驟或者部件,可以在 任何計(jì)算裝置(包括處理器、存儲介質(zhì)等)或者計(jì)算裝置的網(wǎng)絡(luò)中,以硬件、固件、軟件或者 它們的組合加以實(shí)現(xiàn),這是本領(lǐng)域普通技術(shù)人員在閱讀了本發(fā)明的說明的情況下運(yùn)用他們 的基本編程技能就能實(shí)現(xiàn)的。
[0057] 因此,本發(fā)明的目的還可以通過在任何計(jì)算裝置上運(yùn)行一個程序或者一組程序來 實(shí)現(xiàn)。所述計(jì)算裝置可以是公知的通用裝置。因此,本發(fā)明的目的也可以僅僅通過提供包 含實(shí)現(xiàn)所述方法或者裝置的程序代碼的程序產(chǎn)品來實(shí)現(xiàn)。也就是說,這樣的程序產(chǎn)品也構(gòu) 成本發(fā)明,并且存儲有這樣的程序產(chǎn)品的存儲介質(zhì)也構(gòu)成本發(fā)明。顯然,所述存儲介質(zhì)可以 是任何公知的存儲介質(zhì)或者將來所開發(fā)出來的任何存儲介質(zhì)。
[0058] 在通過軟件和/或固件實(shí)現(xiàn)本發(fā)明的實(shí)施例的情況下,從存儲介質(zhì)或網(wǎng)絡(luò)向具有 專用硬件結(jié)構(gòu)的計(jì)算機(jī),例如圖8所示的通用計(jì)算機(jī)800安裝構(gòu)成該軟件的程序,該計(jì)算機(jī) 在安裝有各種程序時,能夠執(zhí)行各種功能等等。
[0059] 在圖8中,中央處理單元(CPU)801根據(jù)只讀存儲器(ROM)802中存儲的程序或從 存儲部分808加載到隨機(jī)存取存儲器(RAM) 803的程序執(zhí)行各種處理。在RAM 803中,也根 據(jù)需要存儲當(dāng)CPU 801執(zhí)行各種處理等等時所需的數(shù)據(jù)。CPU 801、R0M 802和RAM 803經(jīng) 由總線804彼此鏈路。輸入/輸出接口 805也鏈路到總線804。
[0060] 下述部件鏈路到輸入/輸出接口 805 :輸入部分806 (包括鍵盤、鼠標(biāo)等等)、輸出 部分807 (包括顯示器,比如陰極射線管(CRT)、液晶顯示器(IXD)等,和揚(yáng)聲器等)、存儲部 分808 (包括硬盤等)、通信部分809 (包括網(wǎng)絡(luò)接口卡比如LAN卡、調(diào)制解調(diào)器等)。通信 部分809經(jīng)由網(wǎng)絡(luò)比如因特網(wǎng)執(zhí)行通信處理。根據(jù)需要,驅(qū)動器810也可鏈路到輸入/輸 出接口 805。可拆卸介質(zhì)811比如磁盤、光盤、磁光盤、半導(dǎo)體存儲器等等根據(jù)需要被安裝在 驅(qū)動器810上,使得從中讀出的計(jì)算機(jī)程序根據(jù)需要被安裝到存儲部分808中。
[0061] 在通過軟件實(shí)現(xiàn)上述系列處理的情況下,從網(wǎng)絡(luò)比如因特網(wǎng)或存儲介質(zhì)比如可拆 卸介質(zhì)811安裝構(gòu)成軟件的程序。
[0062] 本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,這種存儲介質(zhì)不局限于圖8所示的其中存儲有程 序、與設(shè)備相分離地分發(fā)以向用戶提供程序的可拆卸介質(zhì)811??刹鹦督橘|(zhì)811的例子 包含磁盤(包含軟盤(注冊商標(biāo)))、光盤(包含光盤只讀存儲器(⑶-ROM)和數(shù)字通用盤 (DVD))、磁光盤(包含迷你盤(MD)(注冊商標(biāo)))和半導(dǎo)體存儲器。或者,存儲介質(zhì)可以是 ROM 802、存儲部分808中包含的硬盤等等,其中存有程序,并且與包含它們的設(shè)備一起被 分發(fā)給用戶。
[0063] 本發(fā)明還提出一種存儲有機(jī)器可讀取的指令代碼的程序產(chǎn)品。指令代碼由機(jī)器讀 取并執(zhí)行時,可執(zhí)行上述根據(jù)本發(fā)明實(shí)施例的方法。
[0064] 相應(yīng)地,用于承載上述存儲有機(jī)器可讀取的指令代碼的程序產(chǎn)品的存儲介質(zhì)也包 括在本發(fā)明的公開中。存儲介質(zhì)包括但不限于軟盤、光盤、磁光盤、存儲卡、存儲棒等。
[0065] 本領(lǐng)域的普通技術(shù)人員應(yīng)理解,在此所例舉的是示例性的,本發(fā)明并不局限于此。
[0066] 在本說明書中,"第一"、"第二"以及"第N個"等表述是為了將所描述的特征在文 字上區(qū)分開,以清楚地描述本發(fā)明。因此,不應(yīng)將其視為具有任何限定性的含義。
[0067] 作為一個示例,上述方法的各個步驟以及上述設(shè)備的各個組成模塊和/或單元可 以實(shí)施為軟件、固件、硬件或其組合,并作為相應(yīng)設(shè)備中的一部分。上述裝置中各個組成模 塊、單元通過軟件、固件、硬件或其組合的方式進(jìn)行配置時可使用的具體手段或方式為本領(lǐng) 域技術(shù)人員所熟知,在此不再贅述。
[0068] 作為一個示例,在通過軟件或固件實(shí)現(xiàn)的情況下,可以從存儲介質(zhì)或網(wǎng)絡(luò)向具有 專用硬件結(jié)構(gòu)的計(jì)算機(jī)(例如圖8所示的通用計(jì)算機(jī)800)安裝構(gòu)成該軟件的程序,該計(jì)算 機(jī)在安裝有各種程序時,能夠執(zhí)行各種功能等。
[0069] 在上面對本發(fā)明具體實(shí)施例的描述中,針對一種實(shí)施方式描述和/或示出的特征 可以以相同或類似的方式在一個或更多個其他實(shí)施方式中使用,與其他實(shí)施方式中的特征 相組合,或替代其他實(shí)施方式中的特征。
[0070] 應(yīng)該強(qiáng)調(diào),術(shù)語"包括/包含"在本文使用時指特征、要素、步驟或組件的存在,但 并不排除一個或更多個其他特征、要素、步驟或組件的存在或附加。
[0071] 此外,本發(fā)明的方法不限于按照說明書中描述的時間順序來執(zhí)行,也可以按照其 他的時間順序地、并行地或獨(dú)立地執(zhí)行。因此,本說明書中描述的方法的執(zhí)行順序不對本發(fā) 明的技術(shù)范圍構(gòu)成限制。
[0072] 本發(fā)明及其優(yōu)點(diǎn),但是應(yīng)當(dāng)理解在不超出由所附的權(quán)利要求所限定的本發(fā)明的精 神和范圍的情況下可以進(jìn)行各種改變、替代和變換。而且,本發(fā)明的范圍不僅限于說明書 所描述的過程、設(shè)備、手段、方法和步驟的具體實(shí)施例。本領(lǐng)域內(nèi)的普通技術(shù)人員從本發(fā)明 的公開內(nèi)容將容易理解,根據(jù)本發(fā)明可以使用執(zhí)行與在此的相應(yīng)實(shí)施例基本相同的功能或 者獲得與其基本相同的結(jié)果的、現(xiàn)有和將來要被開發(fā)的過程、設(shè)備、手段、方法或者步驟。因 此,所附的權(quán)利要求旨在在它們的范圍內(nèi)包括這樣的過程、設(shè)備、手段、方法或者步驟。
[0073] 基于以上的說明,可知公開至少公開了以下技術(shù)方案:
[0074] 附記1、一種神經(jīng)網(wǎng)絡(luò)系統(tǒng),包括:
[0075] 輸入層;
[0076] 隱含層;以及
[0077] 每個隱含層之后的輸出層,其中,所述輸出層包括分類器和重構(gòu)器。
[0078] 附記2、根據(jù)附記1所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,所述輸出層的優(yōu)化函數(shù)為:
[0079] 所述分類器所產(chǎn)生的分類誤差和所述重構(gòu)器所產(chǎn)生的重構(gòu)誤差利用平衡因子進(jìn) 行線性求和的最小值。
[0080] 附記3、根據(jù)附記2所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,所述平衡因子滿足所述輸出層的 深度的單調(diào)遞增函數(shù),并且所述函數(shù)在所述神經(jīng)網(wǎng)絡(luò)系統(tǒng)的深度處的函數(shù)值為1。
[0081] 附記4、根據(jù)附記3所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,所述平衡因子滿足以下函數(shù)之一:
,其中λ為平衡因子,k為某一輸出層的深 度,N為所還神經(jīng)IWJ絡(luò)糸統(tǒng)的深度,p為仕蒽正整數(shù)。
[0082] 附記5、根據(jù)附記1所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,所述重構(gòu)器為以下中的至少一項(xiàng): 反卷積層、稀疏自編碼器、去噪自編碼器。
[0083] 附記6、根據(jù)附記1所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,在對所述神經(jīng)網(wǎng)絡(luò)系統(tǒng)進(jìn)行訓(xùn)練 的過程中,所述重構(gòu)器用于重構(gòu)所述輸入層。
[0084] 附記7、根據(jù)附記1所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,所述神經(jīng)網(wǎng)絡(luò)系統(tǒng)用于迀移學(xué)習(xí) 的第一階段。
[0085] 附記8、一種對根據(jù)附記1-7所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng)進(jìn)行訓(xùn)練的訓(xùn)練方法,所述神經(jīng) 網(wǎng)絡(luò)系統(tǒng)包括N個隱含層和N個輸出層,所述訓(xùn)練方法包括:
[0086] 用第1個輸出層訓(xùn)練第1個隱含層;
[0087] 用第2個輸出層訓(xùn)練第2個隱含層,并微調(diào)第2個隱含層;
[0088] 用第3個輸出層訓(xùn)練第3個隱含層,并微調(diào)第1個和第2個隱含層;
[0089] 依次對后面各層進(jìn)行訓(xùn)練,直至用第N個輸出層訓(xùn)練第N個隱含層,并微調(diào)第1個 至第N-I個隱含層。
[0090] 附記9、根據(jù)附記8所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng)的訓(xùn)練方法,其中,在訓(xùn)練過程中,逐步降 低已訓(xùn)練好的隱含層的學(xué)習(xí)速率,所述學(xué)習(xí)速率為如下這樣的參數(shù):該參數(shù)與當(dāng)前訓(xùn)練得 到的權(quán)重的梯度相乘再與當(dāng)前權(quán)重求差以得到下一次訓(xùn)練的權(quán)重。
[0091] 附記10、根據(jù)附記9所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng)的訓(xùn)練方法,其中,通過將當(dāng)前層的學(xué)習(xí) 速率乘以衰減系數(shù)的m次冪來得到降低的指定層的學(xué)習(xí)速率,所述衰減系數(shù)取值在0到1 之間,m為所述當(dāng)前層的深度減去所述指定層的深度。
【主權(quán)項(xiàng)】
1. 一種神經(jīng)網(wǎng)絡(luò)系統(tǒng),包括: 輸入層; 隱含層;W及 每個隱含層之后的輸出層,其中,所述輸出層包括分類器和重構(gòu)器。2. 根據(jù)權(quán)利要求1所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,所述輸出層的優(yōu)化函數(shù)為: 所述分類器所產(chǎn)生的分類誤差和所述重構(gòu)器所產(chǎn)生的重構(gòu)誤差利用平衡因子進(jìn)行線 性求和的最小值。3. 根據(jù)權(quán)利要求2所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,所述平衡因子滿足所述輸出層的深度 的單調(diào)遞增函數(shù),并且所述函數(shù)在所述神經(jīng)網(wǎng)絡(luò)系統(tǒng)的深度處的函數(shù)值為1。4. 根據(jù)權(quán)利要求3所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,所述平衡因子滿足W下函數(shù)之一:其中λ為平衡因子,k為某一輸出層的深度, N為所述神經(jīng)網(wǎng)絡(luò)系統(tǒng)的深度,P為任意正整數(shù)。5. 根據(jù)權(quán)利要求1所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,所述重構(gòu)器為W下中的至少一項(xiàng):反卷 積層、稀疏自編碼器、去噪自編碼器。6. 根據(jù)權(quán)利要求1所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,在對所述神經(jīng)網(wǎng)絡(luò)系統(tǒng)進(jìn)行訓(xùn)練的過 程中,所述重構(gòu)器用于重構(gòu)所述輸入層。7. 根據(jù)權(quán)利要求1所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng),其中,所述神經(jīng)網(wǎng)絡(luò)系統(tǒng)用于遷移學(xué)習(xí)的第 一階段。8. -種對根據(jù)權(quán)利要求1-7所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng)進(jìn)行訓(xùn)練的訓(xùn)練方法,所述神經(jīng)網(wǎng)絡(luò) 系統(tǒng)包括N個隱含層和N個輸出層,所述訓(xùn)練方法包括: 用第1個輸出層訓(xùn)練第1個隱含層; 用第2個輸出層訓(xùn)練第2個隱含層,并微調(diào)第2個隱含層; 用第3個輸出層訓(xùn)練第3個隱含層,并微調(diào)第1個和第2個隱含層; 依次對后面各層進(jìn)行訓(xùn)練,直至用第N個輸出層訓(xùn)練第N個隱含層,并微調(diào)第1個至第 N-1個隱含層。9. 根據(jù)權(quán)利要求8所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng)的訓(xùn)練方法,其中,在訓(xùn)練過程中,逐步降低已 訓(xùn)練好的隱含層的學(xué)習(xí)速率,所述學(xué)習(xí)速率為如下運(yùn)樣的參數(shù):該參數(shù)與當(dāng)前訓(xùn)練得到的 權(quán)重的梯度相乘再與當(dāng)前權(quán)重求差W得到下一次訓(xùn)練的權(quán)重。10. 根據(jù)權(quán)利要求9所述的神經(jīng)網(wǎng)絡(luò)系統(tǒng)的訓(xùn)練方法,其中,通過將當(dāng)前層的學(xué)習(xí)速率 乘W衰減系數(shù)的m次幕來得到降低的指定層的學(xué)習(xí)速率,所述衰減系數(shù)取值在0到1之間, m為所述當(dāng)前層的深度減去所述指定層的深度。
【文檔編號】G06N3/08GK105844331SQ201510020691
【公開日】2016年8月10日
【申請日】2015年1月15日
【發(fā)明人】陳理, 王淞, 范偉, 孫俊, 直井聰
【申請人】富士通株式會社