C語言中文網 目錄
TensorFlow
1 TensorFlow是什么
2 TensorFlow安裝和下載
3 第一個TensorFlow程序
4 TensorFlow程序結構
5 TensorFlow常量、變量和占位符
6 TensorFlow矩陣基本操作
7 TensorFlow TensorBoard數據流圖可視化
8 TensorFlow代碼自動升級為1.0版本
9 TensorFlow XLA
10 TensorFlow指定CPU和GPU設備
11 TensorFlow與深度學習
12 TensorFlow常用Python擴展包
13 回歸算法有哪些
14 TensorFlow損失函數
15 TensorFlow優化器
16 TensorFlow csv文件讀取數據
17 TensorFlow實現簡單線性回歸
18 TensorFlow實現多元線性回歸
19 TensorFlow邏輯回歸處理MNIST數據集
20 感知機與神經網絡
21 TensorFlow常用激活函數(6種)
22 TensorFlow實現單層感知機
23 TensorFlow實現反向傳播算法
24 TensorFlow多層感知機實現MINIST分類
25 TensorFlow多層感知機函數逼近
26 TensorFlow超參數
27 TensorFlow Keras
28 CNN卷積神經網絡
29 三維卷積神經網絡預測MNIST數字
30 卷積神經網絡分類圖片
31 遷移學習
32 DeepDream網絡
33 TensorFlow實現文本情感分析
34 VGG網絡濾波器
35 VGGNet、ResNet、Inception和Xception
36 預建深度學習提取特征及實現
37 TensorFlow實現InceptionV3
38 TensorFlow WaveNet聲音合成
39 TensorFlow視頻分類(6種方法)
40 RNN循環神經網絡
41 神經機器翻譯(seq2seq RNN)
42 注意力機制(基于seq2seq RNN)
43 RNN訓練模型并生成文本
44 RNN循環神經網絡實現預測比特幣價格
45 主成分分析法(PCA)
46 k均值聚類算法
47 SOM自組織映射法
48 受限玻爾茲曼機訓練
49 推薦系統的實現(基于RBM)
50 基于DBN實現情緒檢測
51 自編碼器
52 標準自編碼器
53 稀疏自編碼器
54 去燥自編碼器
55 卷積自編碼器
56 堆疊自編碼器
57 強化學習
58 OpenAI Gym安裝和使用
59 全連接神經網絡實現玩Pac-Man游戲
60 Q learning實現Cart-Pole平衡游戲
61 DQN算法(深度Q網絡)
62 David Silver策略梯度算法
63 深度學習在移動端的應用
64 Android移動端部署TensorFlow mobile
65 iPhone移動端部署TensorFlow mobile
66 移動端優化TensorFlow代碼
67 GAN生成式對抗網絡
68 GAN生成式對抗網絡虛構MNIST圖像
69 DCGAN虛構MNIST圖像
70 DCGAN虛構名人面孔和其他數據集
71 VAE變分自編碼器
72 CapsNet膠囊網絡
73 TensorFlow分布式
74 TensorFlow GPU的安裝和使用
75 TensorFlow分布式
76 TensorFlow分布式訓練MNIST分類器
77 TensorFlow Serving運行Docker容器
78 TensorFlow分布式在谷歌云平臺運行
79 TensorFlow分布式在谷歌CloudML運行
80 TensorFlow分布式在Microsoft Azure上運行
81 TensorFlow分布式在Amazon AWS上運行
首頁 > TensorFlow 閱讀:169

什么是自編碼器,自編碼器及其應用詳解

自動編碼機(簡稱自編碼器)是前饋非循環神經網絡,是一種無監督機器學習方法,具有非常好的提取數據特征表示的能力,它是深層置信網絡的重要組成部分,在圖像重構、聚類、機器翻譯等方面有著廣泛的應用。

自動編碼機也被稱為 diabolo 網絡或 autoassociator,最初是在 20 世紀 80 年代由 Hinton 和 PDP 小組提出的。同多層感知機一樣,自動編碼機也使用 BP 算法進行學習,但最大的不同在于,自動編碼機的目標是重構一樣的輸入。

可以將自動編碼機看作由兩個級聯網絡組成,第一個網絡是一個編碼器,負責接收輸入 x,并將輸入通過函數 h 變換為信號 y:


 
第二個網絡將編碼的信號 y 作為其輸入,通過函數f得到重構的信號 r:


 
定義誤差 e 為原始輸入 x 與重構信號 r 之差,e=x–r,網絡訓練的目標是減少均方誤差(MSE),同 MLP 一樣,誤差被反向傳播回隱藏層。

下圖中顯示了自動編碼機的結構,用顏色區分編碼器和解碼器。


自動編碼機可以進行權值共享,即解碼器和編碼器的權值彼此互為轉置,這樣可以加快網絡學習的速度,因為訓練參數的數量減少了,但同時降低了網絡的靈活程度。

自動編碼機與 RBM 非常類似,本質區別在于,自動編碼機中神經元的狀態是確定性的,而 RBM 中神經元的狀態是概率性的。

根據隱藏層的大小,自動編碼機分為欠完備自動編碼機(隱藏層神經元數量小于輸入層神經元數量)和過完備自動編碼機(隱藏層神經元數量大于輸入層神經元數量)。而根據對損失函數的約束條件,又可以分為:稀疏自動編碼機、去噪自動編碼機和卷積自動編碼機,后續我們將學習這些自動編碼機的不同版本,并使用 TensorFlow 來實現它們。

自動編碼機的一個非常好的應用是降維,而且自動編碼機能產生比 PCA 更好的結果。自動編碼機也可用于特征提取、文檔檢索、分類和異常檢測。

精美而實用的網站,提供C語言、C++、STL、Linux、Shell、Java、Go語言等教程,以及socket、GCC、vi、Swing、設計模式、JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo