नॉर्मलाइज़िंग फ्लोज़ जनरेटिव मॉडल का एक वर्ग है मशीन लर्निंग में, जो एक सरल आधार वितरण पर उलटने योग्य परिवर्तनों के अनुक्रम को लागू करके एक संभाव्यता वितरण को स्पष्ट रूप से मॉडल करते हैं। यह विधि संभाव्यता के परिवर्तन-चर नियम का उपयोग करके एक सरल वितरण, जैसे गाऊसी, को एक जटिल लक्ष्य वितरण में परिवर्तित करती है। संभावना का यह प्रत्यक्ष मॉडलिंग लाभ प्रदान करता है: नकारात्मक लॉग-संभावना की गणना की जा सकती है और हानि फलन के रूप में न्यूनतम किया जा सकता है, और आधार वितरण से नमूना लेकर और फ्लो परिवर्तन लागू करके नए नमूने उत्पन्न किए जा सकते हैं। इसके विपरीत, अन्य जनरेटिव मॉडलिंग विधियाँ, जैसे वैरिएशनल ऑटोएनकोडर (VAE), जनरेटिव एडवर्सेरियल नेटवर्क (GAN), और डिफ्यूज़न मॉडल, संभावना फलन को स्पष्ट रूप से प्रस्तुत नहीं करते हैं।
'नॉर्मलाइज़िंग फ्लो' शब्द दो पहलुओं को दर्शाता है: 'नॉर्मलाइज़िंग' इस तथ्य को संदर्भित करता है कि परिवर्तन एक सामान्यीकृत संभाव्यता घनत्व (एक में समाकलित) उत्पन्न करते हैं, और 'फ्लो' परिवर्तनों के अनुक्रमिक संयोजन को संदर्भित करता है जो आधार वितरण को लक्ष्य में 'प्रवाहित' करते हैं। फ्लो-आधारित मॉडल छवि निर्माण, घनत्व अनुमान, और विसंगति पहचान जैसे क्षेत्रों में लागू किए गए हैं, और वे RealNVP और Glow जैसे अधिक उन्नत आर्किटेक्चर का आधार बनाते हैं।
विधि
मान लीजिए \( z_0 \) एक (संभवतः बहुचर) यादृच्छिक चर है जिसका वितरण \( p_0(z_0) \) है। \( i = 1, \dots, K \) के लिए, मान लीजिए \( z_i = f_i(z_{i-1}) \) \( z_0 \) से परिवर्तित यादृच्छिक चरों का अनुक्रम है। फलन \( f_1, \dots, f_K \) उलटने योग्य होने चाहिए, जिसका अर्थ है कि व्युत्क्रम फलन \( f_i^{-1} \) मौजूद है। अंतिम आउटपुट \( z_K \) लक्ष्य वितरण को मॉडल करता है।
\( z_K \) की लॉग संभावना निम्न द्वारा दी गई है:
\[ \log p_K(z_K) = \log p_0(z_0) - \sum_{i=1}^K \log \left| \det \frac{d f_i(z_{i-1})}{d z_{i-1}} \right| \]
यह सूत्र परिवर्तन-चर नियम से उत्पन्न होता है, जो प्रत्येक परिवर्तन के जैकोबियन के निरपेक्ष निर्धारक द्वारा घनत्व को समायोजित करता है। लॉग संभावना की कुशलता से गणना करने के लिए, फलन \( f_1, \dots, f_K \) आसानी से उलटने योग्य होने चाहिए, और उनके जैकोबियन के निर्धारकों की गणना सरल होनी चाहिए। व्यवहार में, इन फलनों को गहरे तंत्रिका नेटवर्क का उपयोग करके मॉडल किया जाता है, जिन्हें लक्ष्य वितरण से डेटा नमूनों की नकारात्मक लॉग-संभावना को न्यूनतम करने के लिए प्रशिक्षित किया जाता है। आर्किटेक्चर इस तरह डिज़ाइन किए जाते हैं कि व्युत्क्रम और जैकोबियन निर्धारक गणना दोनों के लिए केवल नेटवर्क के अग्र पास की आवश्यकता होती है। उदाहरणों में NICE, RealNVP, और Glow शामिल हैं।
लॉग संभावना की व्युत्पत्ति
\( z_1 \) और \( z_0 \) पर विचार करें। ध्यान दें कि \( z_0 = f_1^{-1}(z_1) \)। परिवर्तन-चर सूत्र द्वारा, \( z_1 \) का वितरण है:
\[ p_1(z_1) = p_0(z_0) \left| \det \frac{d f_1^{-1}(z_1)}{d z_1} \right| \]
व्युत्क्रम फलन प्रमेय का उपयोग करते हुए, व्युत्क्रम के जैकोबियन का निर्धारक अग्र परिवर्तन के जैकोबियन के निर्धारक का व्युत्क्रम है, जो ऊपर दिए गए लॉग-संभावना अभिव्यक्ति की ओर ले जाता है। यह व्युत्पत्ति प्रेरण द्वारा कई परिवर्तनों तक विस्तारित होती है।
आर्किटेक्चरल नवाचार
प्रारंभिक फ्लो-आधारित मॉडल सुगम जैकोबियन वाले परिवर्तनों को डिज़ाइन करने पर केंद्रित थे। NICE (नॉन-लीनियर इंडिपेंडेंट कंपोनेंट्स एस्टिमेशन), जिसे 2014 में Dinh एट अल. द्वारा पेश किया गया था, ने योगात्मक युग्मन परतों का उपयोग किया जो इनपुट को विभाजित करती हैं और सरल एफ़िन परिवर्तन लागू करती हैं, जिससे जैकोबियन त्रिकोणीय हो जाता है जिसका निर्धारक एक होता है। RealNVP (रियल-वैल्यूड नॉन-वॉल्यूम प्रिज़र्विंग) ने इसे एफ़िन युग्मन परतों तक विस्तारित किया, जिससे स्केल और शिफ्ट संचालन की अनुमति मिली, जिससे अभिव्यक्तता में सुधार हुआ जबकि उलटने योग्यता बनी रही। Glow, जिसे 2018 में Kingma और Dhariwal द्वारा पेश किया गया था, ने उलटने योग्य 1x1 कनवल्शन और actnorm परतें जोड़ीं, जिससे उच्च-रिज़ॉल्यूशन छवियों पर कुशल प्रशिक्षण संभव हुआ।
ये आर्किटेक्चर अक्सर कई युग्मन परतों से बने होते हैं, प्रत्येक में आयामों को मिश्रित करने के लिए एक क्रमचय या कनवल्शन होता है। उलटने योग्यता निर्माण द्वारा गारंटीकृत है, और जैकोबियन निर्धारक की गणना त्रिकोणीय जैकोबियन के विकर्ण तत्वों के उत्पाद के रूप में की जाती है, जो कुशल है।
अनुप्रयोग और तुलनाएँ
नॉर्मलाइज़िंग फ्लोज़ का उपयोग घनत्व अनुमान के लिए किया जाता है, जहाँ वे डेटासेट की संभाव्यता वितरण सीखते हैं, और जनरेटिव नमूने के लिए, जहाँ वे नए डेटा बिंदु उत्पन्न करते हैं। उन्हें छवि निर्माण, ऑडियो संश्लेषण, और आणविक अनुरूपता निर्माण पर लागू किया गया है। GAN के विपरीत, जो तीखे नमूनों के लिए जाने जाते हैं लेकिन संभावना अनुमान की कमी रखते हैं, फ्लोज़ सटीक लॉग-संभावनाएँ प्रदान करते हैं, जो मॉडल तुलना और आउटलायर पहचान के लिए उपयोगी हो सकती हैं। डिफ्यूज़न मॉडल की तुलना में, फ्लोज़ से नमूना लेना अक्सर तेज़ होता है क्योंकि उन्हें केवल एक अग्र पास की आवश्यकता होती है, जबकि डिफ्यूज़न मॉडल को पुनरावृत्त डीनॉइज़िंग की आवश्यकता होती है।
हालाँकि, उलटने योग्य आर्किटेक्चर और जैकोबियन गणनाओं की आवश्यकता के कारण फ्लोज़ प्रशिक्षण के लिए कम्प्यूटेशनल रूप से महंगे हो सकते हैं। जटिल वितरणों को पकड़ने के लिए उन्हें अन्य विधियों की तुलना में अधिक पैरामीटर की भी आवश्यकता हो सकती है।
प्रशिक्षण और अनुकूलन
नॉर्मलाइज़िंग फ्लो को प्रशिक्षित करने में प्रशिक्षण डेटा की नकारात्मक लॉग-संभावना को न्यूनतम करना शामिल है। हानि फलन है:
\[ \mathcal{L} = -\frac{1}{N} \sum_{n=1}^N \log p_K(x_n) \]
जहाँ \( x_n \) डेटा नमूने हैं। यह आमतौर पर स्टोकेस्टिक ग्रेडिएंट डिसेंट का उपयोग करके किया जाता है। परिवर्तनों की उलटने योग्यता यह सुनिश्चित करती है कि लॉग-संभावना अच्छी तरह से परिभाषित है, और जैकोबियन निर्धारक की गणना अग्र पास के भाग के रूप में की जाती है। वेट डेके और ड्रॉपआउट जैसी नियमितीकरण तकनीकें नेटवर्क पैरामीटर पर लागू की जा सकती हैं।
संबंधित अवधारणाएँ
नॉर्मलाइज़िंग फ्लोज़ कृत्रिम बुद्धिमत्ता और तंत्रिका नेटवर्क के व्यापक क्षेत्र का हिस्सा हैं। उनकी तुलना अक्सर जनरेटिव एडवर्सेरियल नेटवर्क और वैरिएशनल ऑटोएनकोडर जैसे अन्य जनरेटिव मॉडल से की जाती है। इस क्षेत्र में अनुसंधान को स्टैनफोर्ड एआई लैब और बर्कले एआई रिसर्च जैसे संस्थानों और डैफने कोलर और अनिमा आनंदकुमार जैसे शोधकर्ताओं द्वारा आगे बढ़ाया गया है। सैद्धांतिक नींव मशीन लर्निंग और गहन शिक्षण से जुड़ी हैं।