जैसा कि अभी दिखाया गया है, k-means अपने सबसे नज़दीकी सेंट्रोइड को पॉइंट असाइन करता है. लेकिन "सबसे नज़दीकी" का क्या मतलब है?
फ़ीचर डेटा पर k-means लागू करने के लिए, आपको मिलती-जुलती चीज़ों को मेज़र करने का तरीका तय करना होगा. यह तरीका, सभी फ़ीचर डेटा को एक संख्या वाली वैल्यू में जोड़ता है. इसे मैन्युअल तरीके से मिलती-जुलती चीज़ों को मेज़र करने का तरीका कहा जाता है.
जूते के डेटासेट पर विचार करें. अगर उस डेटासेट में सिर्फ़ जूते का साइज़ है, तो दो जूतों की समानता का पता लगाने के लिए, उनके साइज़ के अंतर का इस्तेमाल किया जा सकता है. साइज़ के बीच का अंतर जितना कम होगा, जूतों के बीच का अंतर उतना ही ज़्यादा होगा.
अगर जूते के उस डेटासेट में साइज़ और कीमत जैसी दो संख्या वाली सुविधाएं थीं, तो उन्हें एक ही संख्या में जोड़कर, मिलते-जुलते प्रॉडक्ट की जानकारी दी जा सकती है. सबसे पहले डेटा को स्केल करें, ताकि दोनों सुविधाओं की तुलना की जा सके:
- साइज़: जूते का साइज़ शायद गॉसियन डिस्ट्रिब्यूशन बनाता है. इसकी पुष्टि करें. इसके बाद, डेटा को नॉर्मलाइज़ करें.
- कीमत (p): हो सकता है कि डेटा, पॉइसन डिस्ट्रिब्यूशन हो. इसकी पुष्टि करें. अगर आपके पास ज़रूरत के मुताबिक डेटा है, तो डेटा को क्वंटील में बदलें और पर स्केल करें.
इसके बाद, रूट मीन स्क्वेयर्ड एरर (आरएमएसई) का हिसाब लगाकर, दोनों फ़ीचर को जोड़ें. मिलते-जुलते कॉन्टेंट का यह अनुमानित आकलन,करता है.
एक आसान उदाहरण के लिए, अमेरिका के साइज़ 8 और 11 वाले दो जूतों और 120 और 150 की कीमतों के लिए मिलते-जुलते प्रॉडक्ट का हिसाब लगाएं. हमारे पास डिस्ट्रिब्यूशन को समझने के लिए ज़रूरत के मुताबिक डेटा नहीं है. इसलिए, हम डेटा को नॉर्मलाइज़ किए बिना या क्वंटील का इस्तेमाल किए बिना स्केल करेंगे.
कार्रवाई | तरीका |
---|---|
साइज़ को स्केल करें. | मान लें कि जूते का ज़्यादा से ज़्यादा साइज़ 20 है. 8 और 11 को ज़्यादा से ज़्यादा साइज़ 20 से भाग देने पर, 0.4 और 0.55 मिलता है. |
कीमत को बढ़ाएं या घटाएं. | 120 और 150 को ज़्यादा से ज़्यादा कीमत 150 से भाग दें, ताकि आपको 0.8 और 1 मिल सके. |
साइज़ में अंतर देखें. | |
कीमत में अंतर देखें. | |
आरएमएसई का हिसाब लगाएं. |
आम तौर पर, जब फ़ीचर डेटा ज़्यादा मिलता-जुलता होगा, तो मिलती-जुलती चीज़ों की मेज़रमेंट बढ़नी चाहिए. इसके बजाय, आपके मिलते-जुलते डेटा का मेज़र (आरएमएसई) कम हो जाता है. अपने अनुमान के मुताबिक, मिलती-जुलती चीज़ों की मेज़रमेंट करने के लिए, 1 से घटाएं.
आम तौर पर, डेटा तैयार करना में बताए गए तरीके से संख्या वाला डेटा तैयार किया जा सकता है. इसके बाद, यूक्लिडियन डिस्टेंस का इस्तेमाल करके डेटा को जोड़ा जा सकता है.
अगर उस डेटासेट में जूते का साइज़ और रंग, दोनों शामिल हैं, तो क्या होगा? कलर, कैटगरी वाला डेटा होता है. इस बारे में, मशीन लर्निंग के क्रैश कोर्स में कैटगरी वाले डेटा के साथ काम करना सेक्शन में बताया गया है. कैटगरी वाले डेटा को संख्या वाले डेटा के साथ जोड़ना मुश्किल होता है. यह इनमें से कोई हो सकता है:
- एक वैल्यू वाली (यूनीवैलेंट), जैसे कि कार का रंग ("सफ़ेद" या "नीला", लेकिन कभी दोनों नहीं)
- एक से ज़्यादा वैल्यू वाली (मल्टीवैलेंट), जैसे कि फ़िल्म की शैली (एक फ़िल्म, "ऐक्शन" और "कॉमेडी", दोनों हो सकती है या सिर्फ़ "ऐक्शन" हो सकती है)
अगर एक ही वैल्यू वाला डेटा मैच करता है, तो उदाहरण के लिए, नीले रंग के दो जोड़े जूतों के मामले में, उदाहरणों के बीच समानता 1 होगी. ऐसा न होने पर, मिलती-जुलती चीज़ों की संख्या 0 होती है.
फ़िल्म की शैलियों जैसे कई वैल्यू वाले डेटा के साथ काम करना मुश्किल होता है. अगर मूवी की शैलियों का एक तय सेट है, तो मिलती-जुलती चीज़ों का हिसाब, एक जैसी वैल्यू के अनुपात का इस्तेमाल करके लगाया जा सकता है. इसे जैकार्ड मिलती-जुलती चीज़ों का हिसाब कहा जाता है. जैक्कार्ड मिलते-जुलतेपन के हिसाब लगाने का उदाहरण:
- [“comedy”,”action”] and [“comedy”,”action”] = 1
- [“comedy”,”action”] और [“action”] = ½
- [“comedy”,”action”] और [“action”, "drama"] = ⅓
- [“comedy”,”action”] और [“non-fiction”,”biographical”] = 0
कैटगरी वाले डेटा के लिए, जैकर्ड मिलती-जुलती वैल्यू ही मैन्युअल तरीके से मिलती-जुलती वैल्यू का आकलन करने का एकमात्र तरीका नहीं है. दो अन्य उदाहरण:
- पिन कोड को उनके बीच की यूक्लिडियन दूरी का हिसाब लगाने से पहले, अक्षांश और देशांतर में बदला जा सकता है.
- रंग को न्यूमेरिक आरजीबी वैल्यू में बदला जा सकता है. इसके लिए, वैल्यू में अंतर को यूक्लिडियन डिस्टेंस में जोड़ा जाता है.
ज़्यादा जानने के लिए, कैटगरी वाले डेटा के साथ काम करना देखें.
आम तौर पर, मैन्युअल तरीके से मिलती-जुलती कॉन्टेंट की जांच करने पर, यह पता चलता है कि कॉन्टेंट असल में कितना मिलता-जुलता है. अगर आपकी चुनी गई मेट्रिक ऐसा नहीं करती है, तो इसका मतलब है कि वह उस जानकारी को एन्कोड नहीं कर रही है जिसे आपको एन्कोड करना है.
मिलते-जुलते डेटा का आकलन करने से पहले, अपने डेटा को ध्यान से प्रोसेस करें. इस पेज पर दिए गए उदाहरण आसान हैं. असल दुनिया के ज़्यादातर डेटासेट बड़े और जटिल होते हैं. जैसा कि पहले बताया गया है, संख्या वाले डेटा को प्रोसेस करने के लिए, क्वंटाइल डिफ़ॉल्ट रूप से एक अच्छा विकल्प है.
डेटा ज़्यादा जटिल होने पर, मैन्युअल तरीके से मिलती-जुलती चीज़ों का आकलन करना मुश्किल हो जाता है. ऐसे में, निगरानी में रखी गई मिलती-जुलती चीज़ों की मेज़रमेंट पर स्विच करें. इसमें, निगरानी में रखा गया मशीन लर्निंग मॉडल, मिलती-जुलती चीज़ों का हिसाब लगाता है. इस बारे में ज़्यादा जानकारी बाद में दी जाएगी.