क्लस्टरिंग एल्गोरिदम

मशीन लर्निंग डेटासेट में लाखों उदाहरण हो सकते हैं. हालांकि, क्लस्टरिंग के सभी एल्गोरिदम, बड़े डेटा के साथ काम नहीं करते. क्लस्टरिंग के कई एल्गोरिदम, उदाहरणों के सभी पेयर के बीच समानता का हिसाब लगाते हैं. इसका मतलब है कि उदाहरणों की संख्या के वर्ग के तौर पर, उनके रनटाइम में बढ़ोतरी होती है n. इसे जटिलता के नोटेशन में O(n2) के तौर पर दिखाया जाता है. O(n2) एल्गोरिदम, लाखों उदाहरणों वाले डेटासेट के लिए काम के नहीं होते.

क-मीन्स एल्गोरिदम की मुश्किली O(n)है. इसका मतलब है कि एल्गोरिदम, nके साथ लीनियर तरीके से स्केल करता है. इस कोर्स में इस एल्गोरिदम पर फ़ोकस किया जाएगा.

क्लस्टर करने के तरीके

क्लस्टर करने के अलग-अलग तरीकों की पूरी सूची के लिए, क्लस्टरिंग एल्गोरिदम की पूरी जानकारी Xu, D. देखें. और टिएन, वाई. ऐन. डेटा. Sci. (2015) 2: 165. हर तरीका, किसी खास डेटा डिस्ट्रिब्यूशन के लिए सबसे सही होता है. इस कोर्स में, चार सामान्य तरीकों के बारे में कम शब्दों में बताया गया है.

सेंट्रोइड पर आधारित क्लस्टरिंग

किसी क्लस्टर का सेंट्रोइड, क्लस्टर के सभी बिंदुओं का अंकगणितीय माध्य होता है. सेंट्रॉइड पर आधारित क्लस्टरिंग, डेटा को बिना हैरारकी वाले क्लस्टर में व्यवस्थित करती है. सेंट्रॉइड पर आधारित क्लस्टरिंग एल्गोरिदम असरदार होते हैं, लेकिन शुरुआती स्थितियों और आउटलायर के लिए संवेदनशील होते हैं. इनमें से, k-means का सबसे ज़्यादा इस्तेमाल किया जाता है. इसके लिए, उपयोगकर्ताओं को सेंट्राइड की संख्या, k तय करनी होती है. साथ ही, यह करीब-करीब एक जैसे साइज़ के क्लस्टर के साथ अच्छी तरह से काम करता है.

सेंट्राइड पर आधारित क्लस्टरिंग का इस्तेमाल करके, क्लस्टर में बांटने के उदाहरण.
           ये लाइनें क्लस्टर के बीच की सीमाएं दिखाती हैं.
पहली इमेज: सेंट्राइड पर आधारित क्लस्टरिंग का उदाहरण.

डेंसिटी पर आधारित क्लस्टरिंग

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

डेंसिटी-आधारित क्लस्टरिंग का इस्तेमाल करके, दो क्लस्टर में बांटा गया डेटा.
      क्लस्टर को लीनियर तरीके से अलग नहीं किया जा सकता.
दूसरी इमेज: डेंसिटी-बेस्ड क्लस्टरिंग का उदाहरण.

डिस्ट्रिब्यूशन के आधार पर क्लस्टरिंग

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

डिस्ट्रिब्यूशन के आधार पर क्लस्टर किए गए उदाहरण. हर क्लस्टर में उदाहरणों की घनत्व को शेड करने से पता चलता है कि क्लस्टर, डिस्ट्रिब्यूशन के हिसाब से कैसे मैप होते हैं.
तीसरी इमेज: डिस्ट्रिब्यूशन के आधार पर क्लस्टर करने का उदाहरण.

हैरारकीकल क्लस्टरिंग

हियरार्किकल क्लस्टरिंग, क्लस्टर का ट्री बनाता है. हैरारकी क्लस्टरिंग, टैक्सोनॉमी जैसे हैरारकी वाले डेटा के लिए सबसे सही है. उदाहरण के लिए, Oksana Lukjancenko, Trudy Wassenaar, और Dave Ussery की 61 क्रम में लगाए गए Escherichia coli जीनोम की तुलना देखें. ट्री को सही लेवल पर काटकर, कितने भी क्लस्टर चुने जा सकते हैं.

हैरारकी वाले ट्री का इस्तेमाल करके, जानवरों को क्लस्टर किया गया है.
चौथी इमेज: जानवरों को हैरारकी वाले ट्री क्लस्टर में दिखाने का उदाहरण.