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