自動編碼器(Autoencoder)

2021-07-22 22:27:33 字數 1019 閱讀 8000

autoencoder是一種無監督的學習演算法,主要用於資料的降維或者特徵的抽取,在深度學習中,autoencoder可用於在訓練階段開始前,確定權重矩陣

w 的初始值。

神經網路中的權重矩陣

w可看作是對輸入的資料進行特徵轉換,即先將資料編碼為另一種形式,然後在此基礎上進行一系列學習。然而,在對權重初始化時,我們並不知道初始的權重值在訓練時會起到怎樣的作用,也不知道在訓練過程中權重會怎樣的變化。因此一種較好的思路是,利用初始化生成的權重矩陣進行編碼時,我們希望編碼後的資料能夠較好的保留原始資料的主要特徵。那麼,如何衡量碼後的資料是否保留了較完整的資訊呢?答案是:如果編碼後的資料能夠較為容易地通過解碼恢復成原始資料,我們則認為

w 較好的保留了資料資訊。

例如下圖所示,將手寫數字進行編碼,編碼後生成的 ϕ1

, ϕ2 , ϕ3

, ϕ4

, ϕ5

, ϕ6

較完整的保留了原始影象的典型特徵,因此可較容易地通過解碼恢復出原始影象。

autoencoder通過神經網路進行預訓練,從而確定

w 的初始值。其目標是讓輸入值等於輸出值。如下圖所示:首先用

w對輸入進行編碼,經過啟用函式後,再用wt

進行解碼,從而使得h(

x)≈x

w。該約束可看作是一種regularization,用於減少引數的個數,控制模型的複雜度。

對於多層神經網路的引數初始化問題,我們可以依次對每一層進行autoencoder。如下圖所示,具體做法是首先按照上述方法確定第一層的權重引數,然後固定第一層的引數,對第二層的引數進行訓練,以此類推,直到得到所有權重值。

自動編碼器

自動編碼器基本概念 自動編碼器 autoencoder 是神經網路的一種,一般來講自動編碼器包括兩部分 編碼器和解碼器,編碼器和解碼器相互串聯合作,實現資料的降維或特徵學習,現在也廣泛用於生成模型中.在深度學習中,autoencoder可用於在訓練階段開始前,確定權重矩陣的初始值.左側為encode...

自動編碼器(Autoencoder)

autoencoder是一種無監督的學習演算法,主要用於資料的降維或者特徵的抽取,在深度學習中,autoencoder可用於在訓練階段開始前,確定權重矩陣w的初始值。或參考 自動編碼器 autoencoder 對於多層神經網路的引數初始化問題,我們可以依次對每一層進行autoencoder。如下圖所...

五 自動編碼器

1 自動編碼器的基本思想 直接用乙個單層或者多層神經網路對輸入資料進行對映,得到輸出向量,作為從輸入資料中提取出的特徵 核心問題 怎麼設定訓練目標 解決思路 編碼器 解碼器框架 2 網路結構 編碼器 將輸入資料對映為特徵向量 解碼器 將特徵向量對映回輸入向量,重構 3 損失函式 損失函式定義為重構誤...