मल्टी-क्लास न्यूरल नेटवर्क: Softmax

याद रखें कि लॉजिस्टिक रिग्रेशन 0 और 1.0 के बीच दशमलव पैदा करता है. उदाहरण के लिए, अगर ईमेल को अलग-अलग कैटगरी में बांटने वाले टूल से लॉजिस्टिक रिग्रेशन आउटपुट का आउटपुट मिलता है, तो उस ईमेल के स्पैम होने की 80% और स्पैम न होने की संभावना 20% होती है. साफ़ तौर पर, किसी ईमेल के स्पैम होने या स्पैम न होने की संभावना 1.0 है.

Softmax की मदद से इस आइडिया को दुनिया भर के लोगों तक पहुंचाया जा सकता है. इसका मतलब है कि Softmax, एक से ज़्यादा क्लास की समस्या में दशमलव की संभावना असाइन करता है. दशमलव की उन संभावनाओं को 1.0 तक जोड़ना चाहिए. इस अतिरिक्त कंस्ट्रेंट को सीखने में, जल्द से जल्द मदद मिलती है.

उदाहरण के लिए, पहली इमेज में हमें दिखाई गई इमेज के विश्लेषण पर लौटते हुए, सॉफ़्टमैक्स किसी खास क्लास से जुड़ी इमेज की ये संभावनाएं बना सकता है:

कक्षा प्रॉबेबिलिटी
सेब 0.001
भालू 0.04
कैंडी 0.008
कुत्ता 0.95
अंडा 0.001

सॉफ़्टमैक्स को आउटपुट लेयर से ठीक पहले, एक न्यूरल नेटवर्क लेयर की मदद से लागू किया जाता है. सॉफ़्टमैक्स लेयर में उतने ही नोड होने चाहिए जैसे कि आउटपुट लेयर में हैं.

किसी इनपुट लेयर के साथ एक डीप न्यूरल नेट. इसके बाद, दो नॉनडिस्क्रिप्टेड छिपाई गई लेयर होती हैं. इसके बाद, Softmax लेयर होती है. आखिर में, एक आउटपुट लेयर होती है, जिसमें उतने ही नोड होते हैं जिन पर Softmax लेयर होती है.

दूसरा डायग्राम. न्यूरल नेटवर्क में सॉफ़्टमैक्स लेयर.

Softmax के विकल्प

Softmax के इन वैरिएंट पर विचार करें:

  • full Softmax, सॉफ़्टमैक्स है जिसकी हम चर्चा कर रहे हैं. इसका मतलब है कि Softmax हर संभावित क्लास के लिए संभावना की गिनती करता है.

  • उम्मीदवार का सैंपलिंग का मतलब है कि सॉफ़्टमैक्स सभी पॉज़िटिव लेबल के लिए, संभावना की गणना करता है, लेकिन सिर्फ़ नेगेटिव लेबल के रैंडम सैंपल के लिए. उदाहरण के लिए, अगर हम यह तय करने में दिलचस्पी रखते हैं कि कोई इनपुट इमेज बीगल या ब्लडहाउंड हो, तो हम हर गैर-कुत्ती के उदाहरण के लिए संभावनाएं नहीं देते.

फ़ुल सॉफ़्टमैक्स तब काफ़ी सस्ता होता है, जब क्लास की संख्या कम होती है. हालांकि, जब कक्षाओं की संख्या कम होती है, तब यह बहुत महंगा हो जाता है. कैंडिडेट सैंपलिंग की मदद से, कक्षा में बड़ी संख्या में काम करने के दौरान बेहतर तरीके से काम किया जा सकता है.

एक लेबल बनाम कई लेबल

सॉफ़्टमैक्स यह मान लेता है कि हर उदाहरण ठीक एक क्लास का सदस्य है. हालांकि, कुछ उदाहरण एक साथ कई कक्षाओं के सदस्य हो सकते हैं. उदाहरण के लिए:

  • हो सकता है कि आप Softmax का इस्तेमाल न करें.
  • आपको कई लॉजिस्टिक रिग्रेशन पर भरोसा करना चाहिए.

उदाहरण के लिए, मान लें कि उदाहरण में एक ही आइटम शामिल है—यानी कि फलों का एक हिस्सा. Softmax यह तय कर सकता है कि किसी आइटम के नाशपाती, नारंगी, सेब वगैरह खाने की कितनी संभावना है. अगर आपके उदाहरणों में सभी तरह की चीज़ों से जुड़ी इमेज शामिल हैं—जैसे, अलग-अलग तरह के फल—तो फिर आप और #39; की जगह कई लॉजिस्टिक रिग्रेशन का इस्तेमाल करना चाहिए.