कैंडिडेट जनरेशन के बारे में खास जानकारी

सुझाव का पहला चरण, उम्मीदवारों को जनरेट करना है. क्वेरी पूछे जाने पर, सिस्टम, काम के उम्मीदवारों का एक सेट जनरेट करता है. नीचे दी गई टेबल में आम तौर पर दो तरह की उम्मीदवारों के सुझाव दिए गए हैं:

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

एम्बेडिंग स्पेस

कॉन्टेंट के हिसाब से फ़िल्टर करने और साथ मिलकर काम करने, दोनों से जुड़े कॉन्टेंट को फ़िल्टर करने से, हर आइटम और हर क्वेरी (या संदर्भ) को एम्बेड करने की एक ऐसी जगह से एम्बेड किया जा सकता है जिसे एम्बेड करना हो. \(E = \mathbb R^d\)आम तौर पर, एम्बेड करने की जगह कम डाइमेंशन वाली होती है (यानी कि \(d\) कॉर्पस के साइज़ से काफ़ी छोटी होती है). साथ ही, आइटम या क्वेरी सेट के कुछ लैटंट स्ट्रक्चर को कैप्चर करती है. मिलते-जुलते आइटम, जैसे कि YouTube वीडियो जिन्हें आम तौर पर एक ही उपयोगकर्ता देखते हैं, दोनों को एम्बेड किए गए स्पेस में बंद कर दिया जाता है. &कोटेशन;कोटेशन की भावना, समानता के माप से तय होती है.

समानता के माप

समानता का मेज़रमेंट फ़ंक्शन एक फ़ंक्शन है \(s : E \times E \to \mathbb R\) जो एम्बेडिंग का एक जोड़ा लेता है और उससे मिलता-जुलता स्केलर दिखाता है. एम्बेड करने की सुविधा का इस्तेमाल उम्मीदवार के जनरेशन के लिए किया जा सकता है. जैसे: क्वेरी को एम्बेड करने \(q \in E\)के बाद, सिस्टम उन आइटम को खोजता है जो एम्बेड किए गए हैं \(x \in E\) जो कि \(q\)के करीब हैं, यानी कि ऐसे एम्बेडिंग का इस्तेमाल करता है जो ज़्यादा समान हैं \(s(q, x)\).

समानता का स्तर तय करने के लिए, ज़्यादातर सुझाव सिस्टम इनमें से एक या ज़्यादा पर भरोसा करते हैं:

  • कोटिज्या
  • डॉट प्रॉडक्ट
  • इयूक्लिडीन दूरी

कोसाइन

यह दो वेक्टर के बीच के कोण की कोसाइन है \(s(q, x) = \cos(q, x)\)

डॉट प्रॉडक्ट

दो वेक्टर का डॉट प्रॉडक्ट \(s(q, x) = \langle q, x \rangle = \sum_{i = 1}^d q_i x_i\)है. इसे \(s(q, x) = \|x\| \|q\| \cos(q, x)\) (cos के कोसाइन से गुणा करके पाई गई वैल्यू का गुणांक) से भी निकाला जाता है. इसलिए, अगर एम्बेड करना सामान्य बात है, तो बिंदु प्रॉडक्ट और कोसाइन एक साथ आते हैं.

इयूक्लिडीन दूरी

यूक्लिडियन स्पेस में यह आम तौर पर दूरी में होता है, \(s(q, x) = \|q - x\| = \left[ \sum_{i = 1}^d (q_i - x_i)^2\right]^{\frac{1}{2}}\). कम दूरी का मतलब है कि मिलती-जुलती जगहें. ध्यान दें कि जब एम्बेड करने की प्रक्रिया को सामान्य बनाया जाता है, तो यूक्लिडियन स्क्वेयर का बिंदु, प्रॉडक्ट के साथ (और कोसाइन) किसी स्थिर बिंदु से जुड़ता है, क्योंकि इस मामले में \(\frac{1}{2}\|q - x\|^2 = 1 - \langle q, x \rangle\).

इमेज में, दो डाइमेंशन वाली एम्बेड करने की जगह दिखाई गई है. इसमें क्वेरी एम्बेड करने की सुविधा और तीन उम्मीदवार आइटम शामिल हैं.

समानता के मापों की तुलना

दाईं ओर इमेज में दिया गया उदाहरण देखें. काला वेक्टर, क्वेरी एम्बेड करने का तरीका दिखाता है. अन्य तीन एम्बेडिंग वेक्टर (आइटम A, आइटम B, आइटम C) उम्मीदवार के आइटम दिखाते हैं. समानता का इस्तेमाल किए जाने के आधार पर, आइटम की रैंकिंग अलग-अलग हो सकती है.

इमेज का इस्तेमाल करके, आइटम की रैंक तय करने के लिए, इन तीन तरीकों का इस्तेमाल करें: कोसाइन, डॉट प्रॉडक्ट, और यूकलिडियन डिस्टेंस.

कौनसा समानता चुनें?

कोसाइन की तुलना में, डॉट प्रॉडक्ट समानता एम्बेडिंग के मानदंड के लिए संवेदनशील होती है. इसका मतलब है कि एम्बेड करने की वजह का मानदंड जितना ज़्यादा होगा, उसकी समानता उतनी ही ज़्यादा होगी. साथ ही, उस आइटम को {0}एक्ज़ीट ऐंगल वाले आइटम के लिए) जितना ज़्यादा माना जाएगा और आइटम के सुझाव देने की संभावना भी उतनी ही ज़्यादा होगी. ऐसा करने से, सुझाव पर असर पड़ सकता है:

  • कई आइटम एक-दूसरे के हिसाब से एम्बेड होते हैं. जैसे: लोकप्रिय YouTube वीडियो, जो ट्रेनिंग के सेट में अक्सर दिखते हैं. अगर लोकप्रियता की जानकारी कैप्चर करना ज़रूरी है, तो आपको डॉट प्रॉडक्ट को प्राथमिकता देनी चाहिए. हालांकि, अगर आप सावधान नहीं हैं, तो मशहूर आइटम, सुझावों पर हावी हो सकते हैं. व्यावहारिक तौर पर, आप मिलते-जुलते होने के दूसरे तरीकों का इस्तेमाल कर सकते हैं जो आइटम के मानक वर्शन पर ज़्यादा ज़ोर नहीं देते. उदाहरण के लिए,\(s(q, x) = \|q\|^\alpha \|x\|^\alpha \cos(q, x)\) कुछ \(\alpha \in (0, 1)\)के बारे में बताएं.

  • हो सकता है कि ट्रेनिंग के दौरान बहुत कम अपडेट होने वाले आइटम अपडेट न हों. ऐसे में, अगर उन्हें एक बड़े नियम के साथ शुरू किया जाता है, तो सिस्टम ज़्यादा काम के आइटम के बजाय दुर्लभ आइटम का सुझाव दे सकता है. इस समस्या से बचने के लिए, इंटिग्रेशन को एम्बेड करने के बारे में सावधानी बरतें. साथ ही, सही रेगुलराइज़ेशन का इस्तेमाल करें. हम पहले व्यायाम में इस समस्या के बारे में विस्तार से बताएंगे.