自編碼器

自編碼器係一種人工神經網絡，用嚟做降維。舉個例說明：
想像家陣有個簡單嘅前饋神經網絡，輸入層有  粒細胞，輸出層又係有  粒細胞，而隱藏層有  粒細胞，當中 ；
假想個網絡做咗學習，能夠可靠噉次次接收到輸入 ，都會俾出輸出 ，
輸入層同隱藏層就係所謂嘅入碼器，而輸出層同隱藏層就係所謂嘅解碼器；
做完上述啲嘢之後，隱藏層同輸入輸出兩層之間嘅最後權重值會有用，例如以後撞親啲同類嘅數據嗰陣，研究者知個網絡能夠可靠噉解碼、將隱藏層數據變返同原來輸入一樣嘅數值，佢就可以放心噉將啲數據冚唪唥交俾個自編碼器，入嗮碼幫每個個案做  個數值嘅數據，而因為 ，用呢個方法儲數據會慳位過就噉每個個案都儲嗮嗰  個數值，由此達到降維嘅效果。喺數據探勘等嘅領域上，自編碼器仲可以用嚟話俾研究者知啲數據當中有冇乜嘢特殊嘅規律，例如係「呢 15個變數會唔會有可能用 7個變數嘅變化解釋嗮？」等嘅問題。

做法 
喺最簡單嗰種自編碼器做法當中，個演算法嘅目標係要改變啲權重，令以下數值最小化：
；
當中  係損失函數，反映做解碼嗰陣嘅誤差；而  係一個為咗避免過適而設嘅隨機性數值。研究者特登設下咗  嘅自編碼器就係所謂嘅變分自編碼器 ，得名自入便用到嘅。

自編碼器可以分類做：
收縮自編碼器：最簡單直接嗰種自編碼器，指運用隱藏層－喺收縮自編碼器當中又叫樽頸層－細胞嘅數量少嚟令個自編碼器焗住要將手上嘅資訊降維；如果一切順利，個收縮自編碼器會學識用數量少嘅幾個因素嚟重構手上嘅資訊。
稀疏自編碼器：自編碼器另一種做法，呢種自編碼器嘅隱藏層細胞數量唔少、但係佢哋嘅損失函數包含「每一層啟動咗嘅細胞嘅數量」，而且損失同「每一層啟動咗嘅細胞嘅數量」成正比－即係話個網絡會傾向變成「每次收到輸入嗰陣，得少量細胞會啟動」，但個網絡依然可以有相當多嘅細胞，所以能夠做到「迫個網絡用少數變數預測輸入」嘅效果得嚟，又唔會對「個網絡最多可以考慮幾多個因素」作出太大嘅限制。
去除雜音自編碼器：指啲啟動函數入面帶有隨機性嘅自編碼器；呢種做法令到個自編碼器焗住要由有雜音嘅輸入嗰度重構個輸入，噉做能夠確保一個隱藏層細胞數量唔少過輸入層細胞數量嘅自編碼器唔會變成一個恆等函數；去除雜音自編碼器仲可以幾個砌埋一齊成疊放去除雜音自編碼器做深度學習。
... 等等。

深度自編碼器 

深度自編碼器係一種自編碼器。一個深度自編碼器包含兩個互相對稱嘅深度信念網絡：一個深度自編碼器分入碼面同解碼面，入碼面係一個由 4 至 5 部受限玻茲曼機一層層砌埋一齊而成嘅深度信念網絡；解碼面同入碼面對稱－即係話入碼器會一層層噉做特徵提取，最後成一個壓縮特徵向量，然後解碼面會一層層噉做解碼，最後解碼出嘅輸出會同輸入一樣。喺實際應用上，深度自編碼器可以攞嚟做數據壓縮嘅工作。

上圖係一個簡單深度自編碼器嘅結構圖解； 係輸入， 係輸出層，中間嘅係隱藏層，而  係壓縮特徵向量；左面嘅入碼面會由  做特徵提取，然後解碼面會將入咗碼嘅特徵數值變返做原本輸出， ≈ 。

前饋神經網絡
受限玻茲曼機
降維
主成份分析
深度學習
數據壓縮

參考文獻 
Hinton, G. E., Krizhevsky, A., & Wang, S. D. (2011, June). Transforming auto-encoders (PDF). In International conference on artificial neural networks (pp. 44-51). Springer, Berlin, Heidelberg.
Rooca, J. (2019). Understanding Variational Autoencoders (VAEs). Towards Data Science.

攷 

人工神經網絡