डिस्क्रिमाइजिंग डिस्कोगन | एआई की ओर

डिग्गन नेटवर्क, शू इमेज और वाइस वर्सा से मैचिंग बैग्स बनाना

परिचय

एक डिस्कवरी GAN (DiscoGAN) एक जनरेटिव एडवरसैरियल नेटवर्क है जो डोमेन B में उत्पादों की छवियों को उत्पन्न करता है। डोमेन A. की छवि दी गई है। यह शैलीगत तत्वों को एक छवि से दूसरी छवि में स्थानांतरित करता है, इस प्रकार एक बैग के रूप में एक फैशन आइटम से बनावट और सजावट को स्थानांतरित करता है। जूते की एक जोड़ी के रूप में एक और फैशन आइटम। इस GAN के गेमिंग और फैशन उद्योग में कई अनुप्रयोग हैं और इच्छुक पाठक के लिए आगे की खोज के लायक है।

स्टैंडर्ड गण (गुडफेलो एट अल।, 2014)एक पुनर्निर्माण नुकसान के साथ GANप्रस्तावित मॉडल (डिस्कोगन) को दो अप्रकाशित, गैर-सूचीबद्ध डेटासेट के बीच संबंधों की खोज के लिए बनाया गया है

उच्च-स्तरीय डिक्सन का आर्किटेक्चर आरेख

उच्च-स्तरीय डिक्सन का आर्किटेक्चर आरेख

डिस्कोगन के पास दो जनरेटर्स होंगे, एक हैंडबैग से मैपिंग के लिए (ए द्वारा निरूपित) से जूते (बी द्वारा चिह्नित), दूसरा इसके विपरीत।

  • पहला जनरेटर डोमेन ए से डोमेन बी तक इनपुट छवि को मैप करता है,
  • दूसरा जनरेटर छवि को डोमेन B से डोमेन A में फिर से बनाता है।
  • डोमेन बी में उत्पन्न चित्र शैली और पैटर्न दोनों में डोमेन ए में छवियों से मिलते जुलते हैं। इस संबंध को प्रशिक्षण के दौरान दो डोमेन से स्पष्ट रूप से युग्मित छवियों के बिना सीखा जा सकता है।
  • डिक्सनगन्स दो जेनरेटर फंक्शन G (ab) और G (ba) सीखने की कोशिश करता है। जब एक छवि एक्सए, जेनरेटर जी (एब) के माध्यम से खिलाती है, तो यह एक छवि एक्सएबी उत्पन्न करेगा, जो डोमेन बी में यथार्थवादी दिखता है।
  • जब यह छवि एक्सएबी, अन्य जेनरेटर नेटवर्क जी (बीए) के माध्यम से खिलाती है, तो उसे एक छवि एक्सएबीए का उत्पादन करना चाहिए जो मूल छवि एक्सए के समान होना चाहिए।
  • इस संबंध को प्रशिक्षण के दौरान दो डोमेन से स्पष्ट रूप से युग्मित छवियों के बिना सीखा जा सकता है। यह काफी शक्तिशाली क्षमता है, यह देखते हुए कि वस्तुओं की जोड़ी एक समय लेने वाला कार्य है।

गणितीय रूप से, इसे निम्नानुसार दर्शाया जा सकता है

जेनरेटर फ़ंक्शन के संबंध में, निम्नलिखित संबंध सही होना चाहिए

जेनरेटर के कार्यों के लिए यह संभव नहीं है कि जी (एबी) और जी (बा) एक दूसरे के व्युत्क्रमानुपाती हों, इसलिए हमें पुनर्निर्मित छवि और मूल छवि के बीच के नुकसान को कम करना होगा। इस उद्देश्य के लिए, हम या तो एल 1 या एल 2 नियमितीकरण का उपयोग कर सकते हैं।

  • एल 1 नियमितीकरण प्रत्येक डेटा बिंदु के लिए पूर्ण त्रुटि का योग है।
  • एल 2 नियमितीकरण प्रत्येक डेटा बिंदु के लिए चुकता नुकसान का योग है।
  • हम निम्न छवि के लिए L2 नियमितीकरण हानि फ़ंक्शन दिखा सकते हैं।
  • L2 मानदंड हानि को कम करना पर्याप्त नहीं होगा। हमें यह सुनिश्चित करना होगा कि बनाई गई छवि xB डोमेन B में यथार्थवादी दिखती है। जैसे यदि हम डोमेन B में डोमेन A से जूते में बैग की मैपिंग कर रहे हैं, तो हमें यह सुनिश्चित करना होगा कि xB एक जूते की तरह दिखाई दे।
  • डोमेन बी पर एक डिस्क्रिमिनेटर डीबी एक्सबी को नकली के रूप में पहचान लेगा यदि छवि एक जूते के रूप में पर्याप्त यथार्थवादी नहीं है, तो इस नुकसान को ध्यान में रखा जाना चाहिए।
  • प्रशिक्षण में, दोनों चित्र (xAB = G (ab) (xA) और मूल (yB) डोमेन B में उत्पन्न डिस्क्रिमिनेटर के इनपुट के रूप में फीड किए जाएंगे ताकि यह नकली से वास्तविक चित्रों को वर्गीकृत करना सीखे
  • डोमेन ए में एक छवि एक्सए को डोमेन बी में मैप करने का जेनरेटर नुकसान नीचे लिखा जा सकता है।
  • और एल 2 मानदंड के तहत पुनर्निर्माण नुकसान को नीचे दिखाया गया है।

जनरेटर एक छवि को बदलने की कोशिश करता है एक्सएबी डिस्क्रिमिनेटर को यथार्थवादी दिखता है।

डिस्क्रिमिनेटर रूपांतरित छवि को एक नकली छवि के रूप में टैग करने की कोशिश करता है, इसलिए जेनरेटर जी (एबी) को छवि एक्सएबी को इस तरह से उत्पन्न करना चाहिए कि नकली छवि होने का लॉग नुकसान जितना संभव हो उतना कम हो।

यदि डोमेन B में डिस्क्रिमिनेटर D (b) वास्तविक छवियों के लिए 1 और नकली छवियों के लिए 0 है। वास्तविक होने की संभावना डी (बी) (।) द्वारा दी गई है।

तब जेनरेटर डिस्क्रिमिनेटर नेटवर्क के तहत वास्तविक रूप में इमेज एक्सएबी को टैग करने के लिए अत्यधिक संभावित बनाने की कोशिश करता है, इसका मतलब है कि जेनरेटर डी (बी) (एक्सबी) = डी (बी) (जी (एबी) (एक्सए) बनाने की कोशिश करता है जितना करीब है 1 जितना संभव हो।

लॉग लॉस के संदर्भ में, जनरेटर को संभावना के नकारात्मक लॉग को कम करना चाहिए, जो हमें सी (डी (एब)) देता है, जैसा कि नीचे लिखा गया है।

उपरोक्त फ़ंक्शन को मिलाते हुए, हम डोमेन A से डोमेन B तक की छवि की मैपिंग की कुल जनरेटर लागत C_GAB प्राप्त कर सकते हैं।

जेनरेटर जी (बीए) डोमेन बी से डोमेन ए तक मैप इमेजेज। डोमेन बी में एक इमेज एक्सबी जेनरेटर जी (बीए) द्वारा एक इमेज एक्सबीए में तब्दील हो जाती है और डोमेन ए पर डिस्क्रिमिनेटर डी (ए) द्वारा दिया जाता है, फिर लागत फ़ंक्शन जुड़ा हुआ है। इस तरह के एक परिवर्तन के साथ निम्नलिखित द्वारा दिया जाता है।

दोनों डोमेन में सभी छवियों के लिए जनरेटर का नुकसान निम्नलिखित द्वारा दिया जाएगा।

डिस्क्रिमिनेटर की लागत समारोह

दोनों डोमेन में डिस्क्रिमिनेटर नकली छवियों से वास्तविक छवियों को भेदभाव करने की कोशिश करते हैं, इसलिए डिस्क्रिमिनेटर जी (बी) नीचे दिखाए गए अनुसार लागत C_D (बी) को कम करने की कोशिश करते हैं।

इसी तरह, डिस्क्रिमिनेटर डी (ए) नीचे दिखाए गए अनुसार लागत C_DA को कम करने की कोशिश करता है।

कुल डिस्क्रिमिनेटर लागत सी (डी) द्वारा दी गई है, निम्नानुसार है।

CycleGAN और डिस्कोगन के बीच समानता

  • CycleGAN और डिस्कोगन दोनों लगभग समान हैं। CycleGAN में एक परिवर्तन है, समग्र हानि फ़ंक्शन में पुनर्निर्माण / चक्र-स्थिरता हानि के योगदान को समायोजित करने के लिए इसके अतिरिक्त हाइपरपरमेट्स है। यह लचीलापन निर्धारित करता है कि GAN हानि या डिस्क्रिमिनेटर को होने वाले नुकसान के संबंध में पुनर्निर्माण नुकसान को कितना वजन असाइन करना है।
  • यह हाइपर-पैरामीटर प्रशिक्षण के दौरान नेटवर्क को तेजी से परिवर्तित करने में मदद करने के लिए नुकसान को संतुलित करता है।
  • CycleGANs के कार्यान्वयन के बाकी डिक्जैन्स के समान ही हैं।

इस पद के लिए जुपाइटर नोटबुक को जीथब पर पाया जा सकता है।

निष्कर्ष

डिक्सगैन के शांत अनुप्रयोगों में से एक फैशन आइटम से सजावट को स्थानांतरित कर रहा है जैसे कि एक बैग से दूसरे फैशन आइटम जैसे जूते की एक जोड़ी।

मुझे उम्मीद है कि इस लेख ने आपको अपने खुद के डिक्गनेंस का निर्माण शुरू करने में मदद की। मुझे लगता है कि यह कम से कम डिस्कोगन के बारे में एक अच्छी व्याख्या और समझ प्रदान करेगा।