एक ऑटोएनकोडर एक प्रकार का कृत्रिम तंत्रिका नेटवर्क है जिसका उपयोग अलेबलित डेटा के कुशल कोडिंग सीखने के लिए किया जाता है, जो अनुपरीक्षित शिक्षण का एक रूप है। यह दो फलन सीखता है: एक एनकोडिंग फलन जो इनपुट डेटा को संपीड़ित प्रतिनिधित्व में बदलता है, और एक डिकोडिंग फलन जो उस प्रतिनिधित्व से मूल डेटा का पुनर्निर्माण करता है। नेटवर्क को इनपुट और उसके पुनर्निर्माण के बीच अंतर को कम करने के लिए प्रशिक्षित किया जाता है, जिससे डेटा की आवश्यक संरचना को पकड़ने वाला एक निम्न-आयामी एम्बेडिंग सीखा जाता है। इन एम्बेडिंग्स का उपयोग अक्सर आयामीता में कमी या अन्य मशीन लर्निंग एल्गोरिदम के इनपुट के रूप में किया जाता है।
ऑटोएनकोडर के कई प्रकार हैं जो सीखे गए प्रतिनिधित्व को अधिक उपयोगी बनाने के लिए अतिरिक्त बाधाएं लगाते हैं। नियमितीकृत ऑटोएनकोडर, जैसे कि स्पार्स, डिनॉइज़िंग, और कॉन्ट्रैक्टिव ऑटोएनकोडर, वर्गीकरण कार्यों के लिए प्रभावी हैं, जबकि वैरिएशनल ऑटोएनकोडर प्रशिक्षण वितरण के समान नए डेटा नमूने उत्पन्न कर सकते हैं। अनुप्रयोगों में चेहरे की पहचान, विसंगति का पता लगाना, फीचर का पता लगाना, और शब्द अर्थ सीखना शामिल हैं।
गणितीय सिद्धांत
एक ऑटोएनकोडर औपचारिक रूप से दो सेटों द्वारा परिभाषित किया जाता है: एनकोडेड संदेशों का स्थान \(\mathcal{Z}\) और डिकोडेड संदेशों का स्थान \(\mathcal{X}\), जो आमतौर पर यूक्लिडियन स्थान होते हैं जिनमें \(\mathcal{X} = \mathbb{R}^m\) और \(\mathcal{Z} = \mathbb{R}^n\) जहां \(m > n\)। इसमें फलनों के दो पैरामीट्रिज्ड परिवार भी शामिल हैं: एक एनकोडर परिवार \(E_\phi: \mathcal{X} \to \mathcal{Z}\) और एक डिकोडर परिवार \(D_\theta: \mathcal{Z} \to \mathcal{X}\)। इनपुट \(x\) के लिए, एनकोडर एक अव्यक्त चर \(z = E_\phi(x)\) उत्पन्न करता है, और डिकोडर एक पुनर्निर्माण \(x' = D_\theta(z)\) आउटपुट करता है। एनकोडर और डिकोडर दोनों आमतौर पर बहुपरत परसेप्ट्रॉन होते हैं; उदाहरण के लिए, एक-परत एनकोडर \(\sigma(Wx + b)\) की गणना करता है, जहां \(\sigma\) एक सक्रियण फलन है, \(W\) एक भार मैट्रिक्स है, और \(b\) एक बायस वेक्टर है।
एक ऑटोएनकोडर को प्रशिक्षित करने के लिए \(\mathcal{X}\) पर एक संदर्भ संभाव्यता वितरण \(\mu_{ref}\) और एक पुनर्निर्माण गुणवत्ता फलन \(d: \mathcal{X} \times \mathcal{X} \to [0, \infty]\) द्वारा परिभाषित एक कार्य की आवश्यकता होती है। हानि फलन अपेक्षित पुनर्निर्माण त्रुटि है \(L(\theta, \phi) = \mathbb{E}_{x \sim \mu_{ref}}[d(x, D_\theta(E_\phi(x)))]\)। लक्ष्य पैरामीटर \(\theta\) और \(\phi\) खोजना है जो इस हानि को कम करते हैं, आमतौर पर एडम या स्टोकेस्टिक ग्रेडिएंट डिसेंट प्रकारों जैसे ग्रेडिएंट-आधारित अनुकूलन विधियों का उपयोग करके।
प्रकार और नियमितीकरण
कई ऑटोएनकोडर प्रकार विशिष्ट गुणों को प्रोत्साहित करने के लिए हानि फलन या वास्तुकला को संशोधित करते हैं। स्पार्स ऑटोएनकोडर छिपी इकाइयों के सक्रियण पर एक दंड जोड़ते हैं, जो स्पार्स प्रतिनिधित्व को बढ़ावा देते हैं। डिनॉइज़िंग ऑटोएनकोडर इनपुट को शोर से दूषित करते हैं और नेटवर्क को साफ मूल का पुनर्निर्माण करने के लिए प्रशिक्षित करते हैं, जिससे प्रतिनिधित्व शोर के प्रति मजबूत हो जाता है। कॉन्ट्रैक्टिव ऑटोएनकोडर एनकोडर के जैकोबियन पर एक दंड जोड़ते हैं, जो प्रतिनिधित्व को छोटे इनपुट परिवर्तनों के प्रति असंवेदनशील होने के लिए प्रोत्साहित करता है। इन नियमितीकृत रूपों का उपयोग अक्सर वर्गीकरण पाइपलाइनों में फीचर निष्कर्षण के लिए किया जाता है।
वैरिएशनल ऑटोएनकोडर (VAE) एक संभाव्य दृष्टिकोण अपनाते हैं, जो अव्यक्त चर पर एक वितरण सीखते हैं और जनरेटिव मॉडलिंग को सक्षम करते हैं। VAE जनरेटिव एआई में प्रभावशाली रहे हैं और छवि संश्लेषण और दवा खोज जैसे अनुप्रयोगों में उपयोग किए जाते हैं।
अनुप्रयोग
ऑटोएनकोडर कई डोमेन में लागू होते हैं। कंप्यूटर विज़न में, उनका उपयोग चेहरे की पहचान और विसंगति का पता लगाने के लिए किया जाता है, जहां पुनर्निर्माण त्रुटि असामान्य पैटर्न को उजागर करती है। प्राकृतिक भाषा प्रसंस्करण में, वे शब्द एम्बेडिंग और अर्थ संबंधी प्रतिनिधित्व सीखने में मदद करते हैं। वे गहन शिक्षण वास्तुकलाओं में बिल्डिंग ब्लॉक के रूप में भी काम करते हैं, जैसे कि छवि विभाजन के लिए यू-नेट, जो ऑटोएनकोडर के समान एक एनकोडर-डिकोडर संरचना का उपयोग करता है।
उद्योग में, ऑटोएनकोडर धोखाधड़ी का पता लगाने, नेटवर्क घुसपैठ का पता लगाने, और पूर्वानुमानित रखरखाव के लिए तैनात किए जाते हैं। उदाहरण के लिए, एडब्ल्यूएस और गूगल क्लाउड मशीन लर्निंग सेवाएं प्रदान करते हैं जो ऑटोएनकोडर-आधारित विसंगति का पता लगाने को शामिल करती हैं। एमआईटी सीएसएआईएल और स्टैनफोर्ड एआई लैब जैसे अनुसंधान संस्थानों ने ऑटोएनकोडर सिद्धांत और अनुप्रयोगों को आगे बढ़ाने में योगदान दिया है।
अन्य मॉडलों से संबंध
ऑटोएनकोडर एनकोडर-डिकोडर मॉडल और अनुक्रम-से-अनुक्रम वास्तुकलाओं से निकटता से संबंधित हैं जो ट्रांसफॉर्मर में उपयोग किए जाते हैं। जबकि ट्रांसफॉर्मर अनुवाद जैसे कार्यों के लिए मल्टी-हेड अटेंशन और स्थितीय एनकोडिंग का उपयोग करते हैं, ऑटोएनकोडर अनुपरीक्षित प्रतिनिधित्व सीखने पर ध्यान केंद्रित करते हैं। कुछ आधुनिक बड़े भाषा मॉडल प्रीट्रेनिंग के लिए ऑटोएनकोडर-जैसे उद्देश्यों को शामिल करते हैं, जैसे कि मास्क्ड भाषा मॉडलिंग, जिसे पाठ पर एक डिनॉइज़िंग ऑटोएनकोडर के रूप में देखा जा सकता है।
सीमाएं और विस्तार
एक बुनियादी ऑटोएनकोडर एक पहचान फलन सीख सकता है यदि अव्यक्त स्थान बहुत बड़ा है, इसलिए बाधाएं जैसे कि बाधा परतें या नियमितीकरण आवश्यक हैं। ओवरफिटिंग एक चिंता है, जिसे ड्रॉपआउट और बैच सामान्यीकरण जैसी तकनीकों द्वारा संबोधित किया जाता है। विस्तार में स्टैक्ड ऑटोएनकोडर शामिल हैं, जहां कई परतों को लालची ढंग से प्रशिक्षित किया जाता है, और कम्प्यूटेशनल लागत को कम करने के लिए मॉडल प्रूनिंग। मजबूती और व्याख्यात्मकता में सुधार पर अनुसंधान जारी है, जिसमें ओपनएआई और गूगल डीपमाइंड जैसे समूहों का योगदान है।