ऑटोएन्कोडर

एक ऑटोएन्कोडर एक प्रकार का कृत्रिम तंत्रिका नेटवर्क है जिसका उपयोग बिना लेबल वाले डेटा (अप्रबंधित शिक्षा) की फ़ीचर लर्निंग सीखने के लिए किया जाता है। एक ऑटोएन्कोडर दो कार्य सीखता है: एक एन्कोडिंग फ़ंक्शन जो इनपुट डेटा को रूपांतरित करता है, और एक डिकोडिंग फ़ंक्शन जो एन्कोडेड प्रतिनिधित्व से इनपुट डेटा को फिर से बनाता है। Autoencoder डेटा के एक सेट के लिए फ़ीचर लर्निंग (एन्कोडिंग) सीखता है, आमतौर पर आयामीता में कमी के लिए।

उपयोगी गुण ग्रहण करने के लिए सीखे गए अभ्यावेदन को बाध्य करने के उद्देश्य से वेरिएंट मौजूद हैं। उदाहरण नियमित ऑटोएन्कोडर्स (विरल, डेनोइजिंग और कॉन्ट्रैक्टिव) हैं, जो बाद के सांख्यिकीय वर्गीकरण कार्यों के लिए सीखने के प्रतिनिधित्व में प्रभावी हैं, और परिवर्तनशील ऑटोएन्कोडर, जनरेटिव मॉडल के रूप में अनुप्रयोगों के साथ। Autoencoders चेहरे की पहचान सहित कई समस्याओं पर लागू होते हैं, फीचर डिटेक्शन, विसंगति का पता लगाना और शब्दों का अर्थ प्राप्त करना। Autoencoders भी जनरेटिव मॉडल हैं जो बेतरतीब ढंग से नया डेटा उत्पन्न कर सकते हैं जो इनपुट डेटा (प्रशिक्षण डेटा) के समान है।

परिभाषा
एक ऑटोएन्कोडर को निम्नलिखित घटकों द्वारा परिभाषित किया गया है: "दो सेट: डिकोड किए गए संदेशों का स्थान $\mathcal X$; एन्कोडेड संदेशों का स्थान $\mathcal Z$. लगभग हमेशा, दोनों $\mathcal X$ और $\mathcal Z$ यूक्लिडियन रिक्त स्थान हैं, अर्थात्, $\mathcal X = \R^m, \mathcal Z = \R^n$ कुछ के लिए $m, n$.""कार्यों के दो पैरामीट्रिज्ड परिवार: एनकोडर परिवार $E_\phi:\mathcal{X} \rightarrow \mathcal{Z}$, द्वारा पैरामीट्रिज्ड $\phi$; डिकोडर परिवार $D_\theta:\mathcal{Z} \rightarrow \mathcal{X}$, द्वारा पैरामीट्रिज्ड $\theta$"किसी के लिए भी $$x\in \mathcal X$$, हम आमतौर पर लिखते हैं $$z = E_\phi(x)$$, और इसे कोड, अव्यक्त चर, अव्यक्त प्रतिनिधित्व, अव्यक्त सदिश, आदि के रूप में देखें। इसके विपरीत, किसी के लिए $$z\in \mathcal Z$$, हम आमतौर पर लिखते हैं $$x' = D_\theta(z)$$, और इसे (डिकोडेड) संदेश के रूप में देखें।

आमतौर पर, एनकोडर और डिकोडर दोनों को बहुपरत परसेप्ट्रॉन  के रूप में परिभाषित किया जाता है। उदाहरण के लिए, एक परत एमएलपी एनकोडर $$E_\phi$$ है:


 * $$E_\phi(\mathbf x) = \sigma(Wx+b)$$

कहाँ $$\sigma$$ अवग्रह फलन या परिशोधित रेखीय इकाई जैसे अवयव-वार सक्रियण फलन है, $$W$$ एक मैट्रिक्स है जिसे वजन कहा जाता है, और $$b$$ एक वेक्टर है जिसे पूर्वाग्रह कहा जाता है।

एक ऑटोएन्कोडर का प्रशिक्षण
एक ऑटोएन्कोडर, अपने आप में, केवल दो कार्यों का एक टपल है। इसकी गुणवत्ता का न्याय करने के लिए, हमें एक कार्य की आवश्यकता है। एक कार्य एक संदर्भ संभाव्यता वितरण द्वारा परिभाषित किया गया है $$\mu_{ref}$$ ऊपर $$\mathcal X$$, और एक पुनर्निर्माण गुणवत्ता समारोह $$d: \mathcal X \times \mathcal X \to [0, \infty]$$, ऐसा है कि $$d(x, x')$$ कितना मापता है $$x'$$ से मतभेद होना $$x$$.

उन के साथ, हम ऑटोएन्कोडर के लिए हानि फ़ंक्शन को परिभाषित कर सकते हैं$$L(\theta, \phi) := \mathbb \mathbb E_{x\sim \mu_{ref}}[d(x, D_\theta(E_\phi(x)))]$$दिए गए कार्य के लिए इष्टतम ऑटोएन्कोडर $$(\mu_{ref}, d)$$ तब है $$\arg\min_{\theta, \phi}L(\theta, \phi)$$. इष्टतम ऑटोएन्कोडर की खोज किसी भी गणितीय अनुकूलन तकनीक द्वारा पूरी की जा सकती है, लेकिन आमतौर पर ढाल वंश द्वारा। इस खोज प्रक्रिया को ऑटोएन्कोडर प्रशिक्षण कहा जाता है।

ज्यादातर स्थितियों में, संदर्भ वितरण केवल डेटासेट द्वारा दिया गया अनुभवजन्य माप है $$\{x_1, ..., x_N\} \subset \mathcal X$$, ताकि$$\mu_{ref} = \frac{1}{N}\sum_{i=1}^N \delta_{x_i}$$ और कहां $$\delta_{x_i}$$ Dirac माप है, और गुणवत्ता फ़ंक्शन केवल L2 हानि है: $$d(x, x') = \|x - x'\|_2^2$$. तब इष्टतम ऑटोएन्कोडर की खोज की समस्या सिर्फ एक कम वर्ग है | कम से कम वर्ग अनुकूलन:$$\min_{\theta, \phi} L(\theta, \phi), \text{where } L(\theta, \phi) = \frac{1}{N}\sum_{i=1}^N \|x_i - D_\theta(E_\phi(x_i))\|_2^2$$

व्याख्या
एक ऑटोएन्कोडर के दो मुख्य भाग होते हैं: एक एनकोडर जो संदेश को एक कोड में मैप करता है, और एक डिकोडर जो कोड से संदेश का पुनर्निर्माण करता है। एक इष्टतम ऑटोएन्कोडर जितना संभव हो सके पूर्ण पुनर्निर्माण के करीब प्रदर्शन करेगा, पुनर्निर्माण गुणवत्ता समारोह द्वारा परिभाषित पूर्ण के करीब $$d$$.

कॉपी करने के कार्य को पूरी तरह से करने का सबसे सरल तरीका सिग्नल की नकल करना होगा। इस व्यवहार को दबाने के लिए, कोड स्थान $$\mathcal Z$$ आमतौर पर संदेश स्थान की तुलना में कम आयाम होते हैं $$\mathcal{X}$$.

ऐसे ऑटोएन्कोडर को अंडरकंप्लीट कहा जाता है। इसे डेटा संपीड़न संदेश, या आयामीता में कमी के रूप में व्याख्या किया जा सकता है।

एक आदर्श अपूर्ण ऑटोएन्कोडर की सीमा पर, हर संभव कोड $$z$$ कोड स्थान में किसी संदेश को एन्कोड करने के लिए उपयोग किया जाता है $$x$$ जो वास्तव में वितरण में दिखाई देता है $$\mu_{ref}$$, और डिकोडर भी सही है: $$D_\theta(E_\phi(x)) = x$$. इस आदर्श ऑटोएन्कोडर का उपयोग इसके डिकोडर मनमाने कोड को फीड करके वास्तविक संदेशों से अप्रभेद्य संदेशों को उत्पन्न करने के लिए किया जा सकता है। $$z$$ और प्राप्त करना $$D_\theta(z)$$, जो एक संदेश है जो वास्तव में वितरण में प्रकट होता है $$\mu_{ref}$$.

यदि कोड स्थान $$\mathcal Z$$ इसका आयाम (अपूर्ण) से बड़ा है, या संदेश स्थान के बराबर है $$\mathcal{X}$$, या छिपी हुई इकाइयों को पर्याप्त क्षमता दी जाती है, एक ऑटोएन्कोडर पहचान समारोह सीख सकता है और बेकार हो सकता है। हालाँकि, प्रायोगिक परिणामों में पाया गया कि अधूरे ऑटोएन्कोडर में अभी भी सीखने की सुविधा हो सकती है। आदर्श सेटिंग में, कोड आयाम और मॉडल क्षमता को मॉडल किए जाने वाले डेटा वितरण की जटिलता के आधार पर सेट किया जा सकता है। ऐसा करने का एक मानक तरीका मूल ऑटोएन्कोडर में संशोधन जोड़ना है, जिसका विवरण नीचे दिया गया है।

इतिहास
क्रेमर द्वारा ऑटोएन्कोडर को पहले प्रधान घटक विश्लेषण (पीसीए) के एक गैर-रैखिक सामान्यीकरण के रूप में प्रस्तावित किया गया था। Autoencoder को autoassociator भी कहा जाता है, या डायबोलो नेटवर्क। 1990 के दशक की शुरुआत में इसके पहले आवेदन की तारीख। उनका सबसे पारंपरिक अनुप्रयोग डायमेंशनलिटी रिडक्शन या फीचर लर्निंग था, लेकिन डेटा के जनरेटिव मॉडल सीखने के लिए इस अवधारणा का व्यापक रूप से उपयोग किया जाने लगा।  2010 के कुछ सबसे शक्तिशाली  कृत्रिम होशियारी  में ध्यान लगा के पढ़ना या सीखना न्यूरल नेटवर्क के अंदर ऑटोएन्कोडर शामिल थे। रेफरी नाम = रविवार >

नियमित ऑटोएन्कोडर
ऑटोएन्कोडर्स को आइडेंटिटी फंक्शन सीखने से रोकने और महत्वपूर्ण सूचनाओं को कैप्चर करने और समृद्ध अभ्यावेदन सीखने की उनकी क्षमता में सुधार करने के लिए विभिन्न तकनीकें मौजूद हैं।

विरल ऑटोएन्कोडर (SAE)
न्यूरोसाइंस में विरल कोडिंग परिकल्पना से प्रेरित, विरल ऑटोएन्कोडर्स ऑटोएन्कोडर्स के वेरिएंट हैं, जैसे कि कोड $$E_\phi(x)$$ संदेशों के लिए विरल कोड होते हैं, अर्थात, $$E_\phi(x)$$ अधिकांश प्रविष्टियों में शून्य के करीब है। विरल ऑटोएन्कोडर्स में इनपुट की तुलना में अधिक (कम के बजाय) छिपी हुई इकाइयाँ शामिल हो सकती हैं, लेकिन एक ही समय में केवल कुछ ही छिपी हुई इकाइयों को सक्रिय होने की अनुमति है। विरलता को प्रोत्साहित करने से वर्गीकरण कार्यों के प्रदर्शन में सुधार होता है। विरलता को लागू करने के दो मुख्य तरीके हैं। एक तरीका यह है कि अव्यक्त कोड की उच्चतम-के सक्रियता को छोड़कर सभी को शून्य पर दबा दिया जाए। यह k-sparse autoencoder है। K-sparse autoencoder एक मानक autoencoder की अव्यक्त परत में निम्न k-sparse फ़ंक्शन सम्मिलित करता है:$$f_k(x_1, ..., x_n) = (x_1 b_1, ..., x_n b_n)$$कहाँ $$b_i = 1$$ अगर $$|x_i|$$ शीर्ष k में रैंक करता है, और 0 अन्यथा।

बैकप्रोपैगेटिंग के माध्यम से $$f_k$$ सरल है: के लिए ग्रेडिएंट को 0 पर सेट करें $$b_i = 0$$ प्रविष्टियाँ, और के लिए ग्रेडिएंट रखें $$b_i=1$$ प्रविष्टियाँ। यह अनिवार्य रूप से एक सामान्यीकृत शुद्ध करनेवाला (तंत्रिका नेटवर्क) कार्य है।

दूसरा तरीका k-sparse autoencoder का विश्राम (सन्निकटन) है। विरलता को मजबूर करने के बजाय, हम एक विरल नियमितीकरण हानि जोड़ते हैं, फिर इसके लिए अनुकूलन करते हैं$$\min_{\theta, \phi}L(\theta, \phi) + \lambda L_{sparsity} (\theta, \phi)$$कहाँ $$\lambda > 0$$ मापता है कि हम कितनी विरलता लागू करना चाहते हैं।

बता दें कि ऑटोएन्कोडर आर्किटेक्चर है $$K$$ परतें। स्पार्सिटी नियमितीकरण हानि को परिभाषित करने के लिए, हमें वांछित स्पार्सिटी की आवश्यकता होती है $$\hat \rho_k$$ प्रत्येक परत के लिए, एक वजन $$w_k$$ प्रत्येक विरलता और एक समारोह को कितना लागू करना है $$s: [0, 1]\times [0, 1] \to [0, \infty]$$ यह मापने के लिए कि दो स्पार्सिटी में कितना अंतर है।

प्रत्येक इनपुट के लिए $$x$$, प्रत्येक परत में सक्रियण की वास्तविक विरलता दें $$k$$ होना$$\rho_k(x) = \frac 1n \sum_{i=1}^n a_{k, i}(x)$$कहाँ $$a_{k, i}(x)$$ में सक्रियता है $$i$$ -वें न्यूरॉन $$k$$ -वें इनपुट पर परत $$x$$.

इनपुट पर विरलता हानि $$x$$ एक परत के लिए है $$s(\hat\rho_k, \rho_k(x))$$, और संपूर्ण ऑटोएन्कोडर के लिए विरलता नियमितीकरण हानि विरलता हानियों का अपेक्षित भारित योग है:$$L_{sparsity}(\theta, \phi) = \mathbb \mathbb E_{x\sim\mu_X}\left[\sum_{k\in 1:K} w_k s(\hat\rho_k, \rho_k(x)) \right]$$आमतौर पर, समारोह $$s$$ या तो कुल्बैक-लीब्लर डाइवर्जेंस है | कुल्बैक-लीब्लर (केएल) डाइवर्जेंस, जैसा कि
 * $$s(\rho, \hat\rho) = KL(\rho || \hat{\rho}) = \rho \log \frac{\rho}{\hat{\rho}}+(1- \rho)\log \frac{1-\rho}{1-\hat{\rho}}$$

या L1 हानि, जैसा $$s(\rho, \hat\rho) = |\rho- \hat\rho|$$, या L2 नुकसान, जैसा $$s(\rho, \hat\rho) = |\rho- \hat\rho|^2$$.

वैकल्पिक रूप से, स्पार्सिटी नियमितीकरण हानि को किसी भी वांछित स्पार्सिटी के संदर्भ के बिना परिभाषित किया जा सकता है, लेकिन जितना संभव हो उतना स्पार्सिटी को बल दें। इस मामले में, एक विरल नियमितीकरण हानि के रूप में हो सकता है $$L_{sparsity}(\theta, \phi) = \mathbb \mathbb E_{x\sim\mu_X}\left[ \sum_{k\in 1:K} w_k \|h_k\| \right]$$कहाँ $$h_k$$ में सक्रियण वेक्टर है $$k$$ऑटोएन्कोडर की -वीं परत। नियम $$\|\cdot\|$$ आमतौर पर L1 मानदंड (L1 विरल ऑटोएन्कोडर देता है) या L2 मानदंड (L2 विरल ऑटोएन्कोडर देता है)।

डीनोइजिंग ऑटोएन्कोडर (डीएई)
Denoising autoencoders (DAE) पुनर्निर्माण मानदंड को बदलकर एक अच्छा प्रतिनिधित्व प्राप्त करने का प्रयास करते हैं।

एक डीएई को मानक ऑटोएन्कोडर में शोर प्रक्रिया जोड़कर परिभाषित किया जाता है। एक शोर प्रक्रिया को संभाव्यता वितरण द्वारा परिभाषित किया गया है $$\mu_T$$ कार्यों से अधिक $$T:\mathcal X \to \mathcal X$$. यानी फंक्शन $$T$$ संदेश लेता है $$x\in \mathcal X$$, और इसे शोर वाले संस्करण में बदल देता है $$T(x)$$. कार्यक्रम $$T$$ संभाव्यता वितरण के साथ यादृच्छिक रूप से चुना जाता है $$\mu_T$$.

एक कार्य दिया $$(\mu_{ref}, d)$$DAE के प्रशिक्षण की समस्या अनुकूलन समस्या है:$$\min_{\theta, \phi}L(\theta, \phi) = \mathbb \mathbb E_{x\sim \mu_X, T\sim\mu_T}[d(x, (D_\theta\circ E_\phi \circ T)(x))]$$यही है, इष्टतम डीएई को कोई शोर संदेश लेना चाहिए और शोर के बिना मूल संदेश को पुनर्प्राप्त करने का प्रयास करना चाहिए, इस प्रकार नाम denoising।

आमतौर पर, शोर प्रक्रिया $$T$$ केवल प्रशिक्षण और परीक्षण के दौरान लागू किया जाता है, डाउनस्ट्रीम उपयोग के दौरान नहीं।

डीएई का उपयोग दो मान्यताओं पर निर्भर करता है: उदाहरण शोर प्रक्रियाओं में शामिल हैं:
 * उन संदेशों के प्रतिनिधित्व मौजूद हैं जो अपेक्षाकृत स्थिर हैं और हमारे द्वारा सामना किए जाने वाले शोर के प्रकार के लिए मजबूत हैं;
 * उक्त प्रतिनिधित्व इनपुट वितरण में संरचनाओं को कैप्चर करते हैं जो हमारे उद्देश्यों के लिए उपयोगी होते हैं।


 * योज्य आइसोट्रोपिक योगात्मक सफेद गाऊसी शोर,
 * मास्किंग शोर (इनपुट का एक अंश यादृच्छिक रूप से चुना जाता है और 0 पर सेट होता है)
 * नमक और काली मिर्च का शोर (इनपुट का एक अंश बेतरतीब ढंग से चुना जाता है और बेतरतीब ढंग से इसके न्यूनतम या अधिकतम मूल्य पर सेट किया जाता है)।

संविदात्मक ऑटोएन्कोडर (सीएई)
एक संविदात्मक ऑटोएन्कोडर मानक ऑटोएन्कोडर हानि के लिए संविदात्मक नियमितीकरण हानि जोड़ता है:$$\min_{\theta, \phi}L(\theta, \phi) + \lambda L_{contractive} (\theta, \phi)$$कहाँ $$\lambda > 0$$ मापता है कि हम कितना अनुबंधात्मकता लागू करना चाहते हैं। संविदात्मक नियमितीकरण हानि को जैकबियन मैट्रिक्स के अपेक्षित फ्रोबेनियस मानदंड और इनपुट के संबंध में एन्कोडर सक्रियण के निर्धारक के रूप में परिभाषित किया गया है:$$L_{contractive}(\theta, \phi) = \mathbb E_{x\sim \mu_{ref}} \|\nabla_x E_\phi(x) \|_F^2$$क्या समझने के लिए $$L_{contractive}$$ उपाय, इस तथ्य पर ध्यान दें$$\|E_\phi(x + \delta x) - E_\phi(x)\|_2 \leq \|\nabla_x E_\phi(x) \|_F \|\delta x\|_2$$किसी संदेश के लिए $$x\in \mathcal X$$, और छोटी भिन्नता $$\delta x$$ इस में। इस प्रकार, यदि $$\|\nabla_x E_\phi(x) \|_F^2$$ छोटा है, तो इसका मतलब है कि संदेश का एक छोटा पड़ोस उसके कोड के एक छोटे से पड़ोस में मैप करता है। यह एक वांछित संपत्ति है, क्योंकि इसका मतलब है कि संदेश में छोटी भिन्नता इसके कोड में छोटी, शायद शून्य भी भिन्नता की ओर ले जाती है, जैसे कि दो चित्र समान कैसे दिख सकते हैं, भले ही वे बिल्कुल समान न हों।

डीएई को सीएई की एक अतिसूक्ष्म सीमा के रूप में समझा जा सकता है: छोटे गॉसियन इनपुट शोर की सीमा में, डीएई पुनर्निर्माण कार्य को छोटे लेकिन परिमित आकार के इनपुट गड़बड़ी का विरोध करते हैं, जबकि सीएई निकाले गए सुविधाओं को अनंत इनपुट गड़बड़ी का विरोध करते हैं।

कंक्रीट ऑटोएन्कोडर
कंक्रीट ऑटोएन्कोडर असतत सुविधा चयन के लिए डिज़ाइन किया गया है। एक ठोस ऑटोएन्कोडर अव्यक्त स्थान को केवल उपयोगकर्ता द्वारा निर्दिष्ट सुविधाओं की संख्या से युक्त करने के लिए बाध्य करता है। कंक्रीट ऑटोएन्कोडर फीचर चयनकर्ता परत के माध्यम से ग्रेडियेंट को पारित करने की अनुमति देने के लिए श्रेणीबद्ध वितरण के निरंतर विश्राम (सन्निकटन) का उपयोग करता है, जो पुनर्निर्माण नुकसान को कम करने वाले इनपुट सुविधाओं के इष्टतम सबसेट को सीखने के लिए मानक backpropagation का उपयोग करना संभव बनाता है।

परिवर्तनशील ऑटोएन्कोडर (वीएई)
Variational autoencoders (VAE) Variational Bayesian विधियों के परिवारों से संबंधित हैं। बुनियादी ऑटोएन्कोडर्स के साथ वास्तुशिल्प समानता के बावजूद, वीएई विभिन्न लक्ष्यों के साथ और पूरी तरह से अलग गणितीय सूत्रीकरण के साथ वास्तुकला हैं। अव्यक्त स्थान इस मामले में एक निश्चित वेक्टर के बजाय वितरण के मिश्रण से बना है।

एक इनपुट डेटासेट दिया गया $$x$$ एक अज्ञात संभाव्यता समारोह द्वारा विशेषता $$P(x)$$ और एक बहुभिन्नरूपी अव्यक्त एन्कोडिंग वेक्टर $$z$$, उद्देश्य डेटा को वितरण के रूप में मॉडल करना है $$p_\theta(x)$$, साथ $$\theta$$ नेटवर्क मापदंडों के सेट के रूप में परिभाषित किया गया है ताकि $$p_\theta(x) = \int_{z}p_\theta(x,z)dz $$.

गहराई के लाभ
Autoencoders को अक्सर सिंगल लेयर एनकोडर और सिंगल लेयर डिकोडर के साथ प्रशिक्षित किया जाता है, लेकिन कई लेयर्ड (डीप) एनकोडर और डिकोडर का उपयोग करने से कई फायदे मिलते हैं।


 * गहराई कुछ कार्यों का प्रतिनिधित्व करने की कम्प्यूटेशनल लागत को तेजी से कम कर सकती है। * गहराई कुछ कार्यों को सीखने के लिए आवश्यक प्रशिक्षण डेटा की मात्रा को तेजी से कम कर सकती है। * प्रयोगात्मक रूप से, गहरे ऑटोएन्कोडर उथले या रैखिक ऑटोएन्कोडर की तुलना में बेहतर संपीड़न उत्पन्न करते हैं।

प्रशिक्षण
जेफ्री हिंटन ने कई-स्तरित गहरे ऑटोएन्कोडर्स के प्रशिक्षण के लिए गहरी विश्वास नेटवर्क तकनीक विकसित की। उनकी पद्धति में दो परतों के प्रत्येक पड़ोसी सेट को एक प्रतिबंधित बोल्ट्जमान मशीन के रूप में इलाज करना शामिल है, ताकि पूर्व-प्रशिक्षण एक अच्छे समाधान का अनुमान लगा सके, फिर परिणामों को ठीक करने के लिए बैकप्रोपैजेशन का उपयोग करना। शोधकर्ताओं ने इस बात पर बहस की है कि क्या संयुक्त प्रशिक्षण (यानी अनुकूलन के लिए एक वैश्विक पुनर्निर्माण उद्देश्य के साथ पूरे आर्किटेक्चर को एक साथ प्रशिक्षण देना) गहरे ऑटो-एनकोडर के लिए बेहतर होगा। 2015 के एक अध्ययन से पता चला है कि संयुक्त प्रशिक्षण परतवार विधि की तुलना में वर्गीकरण के लिए अधिक प्रतिनिधि सुविधाओं के साथ बेहतर डेटा मॉडल सीखता है। हालांकि, उनके प्रयोगों से पता चला है कि संयुक्त प्रशिक्षण की सफलता अपनाई गई नियमितीकरण रणनीतियों पर बहुत अधिक निर्भर करती है।

अनुप्रयोग
ऑटोएन्कोडर के दो मुख्य अनुप्रयोग हैं आयामीता में कमी और सूचना पुनर्प्राप्ति, लेकिन आधुनिक विविधताओं को अन्य कार्यों में लागू किया गया है।

आयाम में कमी
आयामीता में कमी पहले गहन शिक्षण अनुप्रयोगों में से एक थी।

हिंटन के 2006 के अध्ययन के लिए, उन्होंने प्रतिबंधित बोल्ट्जमैन मशीन के ढेर के साथ एक बहु-परत ऑटोएन्कोडर का पूर्व-प्रशिक्षण दिया और फिर 30 न्यूरॉन्स की बाधा को मारने तक धीरे-धीरे छोटी छिपी परतों के साथ एक गहरे ऑटोएन्कोडर को प्रारंभ करने के लिए अपने वजन का उपयोग किया। कोड के परिणामी 30 आयामों ने एक प्रमुख घटक विश्लेषण (पीसीए) के पहले 30 घटकों की तुलना में एक छोटी पुनर्निर्माण त्रुटि उत्पन्न की, और एक प्रतिनिधित्व सीखा जो व्याख्या करने के लिए गुणात्मक रूप से आसान था, डेटा समूहों को स्पष्ट रूप से अलग करना।

आयामों का प्रतिनिधित्व वर्गीकरण जैसे कार्यों पर प्रदर्शन में सुधार कर सकता है। दरअसल, आयामीता में कमी की पहचान शब्दार्थ से संबंधित उदाहरणों को एक दूसरे के पास रखना है।

प्रमुख घटक विश्लेषण
यदि रैखिक सक्रियण का उपयोग किया जाता है, या केवल एक सिग्मॉइड छिपी हुई परत होती है, तो एक ऑटोएन्कोडर का इष्टतम समाधान प्रमुख घटक विश्लेषण (पीसीए) से दृढ़ता से संबंधित होता है। आकार की एक छिपी हुई परत के साथ एक ऑटोएन्कोडर का वजन $$p$$ (कहाँ $$p$$ इनपुट के आकार से कम है) उसी वेक्टर सबस्पेस को फैलाते हैं जो पहले द्वारा फैलाया गया था $$p$$ प्रमुख घटक, और ऑटोएन्कोडर का आउटपुट इस उप-स्थान पर एक ऑर्थोगोनल प्रक्षेपण है। ऑटोएन्कोडर वजन प्रमुख घटकों के बराबर नहीं होते हैं, और आम तौर पर ऑर्थोगोनल नहीं होते हैं, फिर भी एकवचन मूल्य अपघटन का उपयोग करके मुख्य घटकों को उनसे पुनर्प्राप्त किया जा सकता है। हालांकि, ऑटोएन्कोडर की क्षमता उनकी गैर-रैखिकता में रहती है, जिससे मॉडल को पीसीए की तुलना में अधिक शक्तिशाली सामान्यीकरण सीखने की अनुमति मिलती है, और काफी कम सूचना हानि के साथ इनपुट का पुनर्निर्माण करने की अनुमति मिलती है।

सूचना पुनर्प्राप्ति
सूचना पुनर्प्राप्ति लाभ विशेष रूप से उस खोज में आयामीता में कमी से कुछ प्रकार के निम्न आयामी स्थानों में अधिक कुशल हो सकते हैं। 2007 में Russ Salakhutdinov और Hinton द्वारा प्रस्तावित सिमेंटिक हैशिंग के लिए ऑटोएन्कोडर वास्तव में लागू किए गए थे। कम-आयामी बाइनरी कोड बनाने के लिए एल्गोरिदम को प्रशिक्षित करके, सभी डेटाबेस प्रविष्टियों को हैश तालिका  मैपिंग बाइनरी कोड वैक्टर में प्रविष्टियों में संग्रहीत किया जा सकता है। यह तालिका तब क्वेरी के समान बाइनरी कोड वाली सभी प्रविष्टियों को लौटाकर या क्वेरी एन्कोडिंग से कुछ बिट्स को फ़्लिप करके थोड़ी कम समान प्रविष्टियों को वापस करके सूचना पुनर्प्राप्ति का समर्थन करेगी।

विसंगति का पता लगाना
ऑटोएन्कोडर्स के लिए एक अन्य एप्लिकेशन विसंगति का पता लगाना है।  पहले वर्णित कुछ बाधाओं के तहत प्रशिक्षण डेटा में सबसे मुख्य विशेषताओं को दोहराने के लिए सीखकर, मॉडल को सबसे अधिक बार देखी जाने वाली विशेषताओं को सटीक रूप से पुन: उत्पन्न करने के लिए सीखने के लिए प्रोत्साहित किया जाता है। विसंगतियों का सामना करते समय, मॉडल को अपने पुनर्निर्माण के प्रदर्शन को खराब करना चाहिए। ज्यादातर मामलों में, ऑटोएन्कोडर को प्रशिक्षित करने के लिए केवल सामान्य उदाहरणों वाले डेटा का उपयोग किया जाता है; दूसरों में, अवलोकन सेट की तुलना में विसंगतियों की आवृत्ति कम होती है ताकि सीखा प्रतिनिधित्व में इसके योगदान को अनदेखा किया जा सके। प्रशिक्षण के बाद, अपरिचित असंगत डेटा के साथ ऐसा करने में विफल होने पर, ऑटोएन्कोडर सामान्य डेटा को सटीक रूप से पुनर्निर्माण करेगा। पुनर्निर्माण त्रुटि (मूल डेटा और इसके निम्न आयामी पुनर्निर्माण के बीच की त्रुटि) का उपयोग विसंगतियों का पता लगाने के लिए एक विसंगति स्कोर के रूप में किया जाता है।

हाल के साहित्य ने हालांकि दिखाया है कि कुछ ऑटोएन्कोडिंग मॉडल, विपरीत रूप से, विषम उदाहरणों के पुनर्निर्माण में बहुत अच्छे हो सकते हैं और फलस्वरूप विसंगति का पता लगाने में सक्षम नहीं हो सकते हैं।

इमेज प्रोसेसिंग
इमेज प्रोसेसिंग में ऑटोएन्कोडर की विशेषताएँ उपयोगी होती हैं।

एक उदाहरण हानिपूर्ण छवि संपीड़न में पाया जा सकता है, जहां ऑटोएन्कोडर्स ने अन्य तरीकों से बेहतर प्रदर्शन किया और जेपीईजी 2000 के खिलाफ प्रतिस्पर्धी साबित हुए। इमेज प्रीप्रोसेसिंग में ऑटोएन्कोडर्स का एक अन्य उपयोगी अनुप्रयोग छवि denoising है। Autoencoders को अधिक मांग वाले संदर्भों में उपयोग किया जाता है जैसे कि मेडिकल इमेजिंग जहां उनका उपयोग इमेज डीनोइज़िंग के लिए किया गया है साथ ही सुपर संकल्प छवि-सहायता निदान में, प्रयोगों ने स्तन कैंसर का पता लगाने के लिए ऑटोएन्कोडर लागू किया है और अल्जाइमर रोग के संज्ञानात्मक गिरावट और एमआरआई के साथ प्रशिक्षित एक ऑटोएन्कोडर की गुप्त विशेषताओं के बीच संबंध मॉडलिंग के लिए।

दवा की खोज
2019 में वैरिएंटल ऑटोएन्कोडर्स के साथ उत्पन्न अणुओं को चूहों में प्रयोगात्मक रूप से मान्य किया गया था।

लोकप्रियता भविष्यवाणी
हाल ही में, एक स्टैक्ड ऑटोएन्कोडर ढांचे ने सोशल मीडिया पोस्ट की लोकप्रियता की भविष्यवाणी करने में आशाजनक परिणाम उत्पन्न किए, जो ऑनलाइन विज्ञापन रणनीतियों के लिए सहायक है।

मशीनी अनुवाद
मशीनी अनुवाद के लिए ऑटोएन्कोडर लागू किया गया है, जिसे आमतौर पर तंत्रिका [[मशीन अनुवाद ]] (NMT) के रूप में जाना जाता है।  पारंपरिक ऑटोएन्कोडर्स के विपरीत, आउटपुट इनपुट से मेल नहीं खाता - यह दूसरी भाषा में है। एनएमटी में, ग्रंथों को सीखने की प्रक्रिया में एन्कोड किए जाने वाले अनुक्रमों के रूप में माना जाता है, जबकि लक्ष्य भाषा (भाषाओं) में डिकोडर साइड अनुक्रम उत्पन्न होते हैं। भाषा-विशिष्ट ऑटोएन्कोडर्स सीखने की प्रक्रिया में और अधिक भाषाई विशेषताओं को शामिल करते हैं, जैसे कि चीनी अपघटन सुविधाएँ। मशीन अनुवाद अभी भी शायद ही कभी ऑटोएन्कोडर्स के साथ किया जाता है, बल्कि ट्रांसफार्मर (मशीन लर्निंग मॉडल) नेटवर्क के साथ किया जाता है।

यह भी देखें

 * प्रतिनिधित्व सीखना
 * विरल शब्दकोश सीखने
 * ध्यान लगा के पढ़ना या सीखना