मुख्य सामग्री पर जाएं

मशीन लर्निंग में क्लस्टरिंग: 5 आवश्यक क्लस्टरिंग एल्गोरिदम

पाँच प्रमुख अनसुपरवाइज़्ड मशीन लर्निंग क्लस्टरिंग एल्गोरिदम—K-Means, DBSCAN, MeanShift, Hierarchical और BIRCH—साथ ही व्यावसायिक अनुप्रयोग और एक सह
अद्यतन 24 जुल॰ 2026  · 15 मि॰ पढ़ना

AI के साथ खोजें

ChatGPT में खोलेंClaude में खोलेंPerplexity में खोलें

क्लस्टरिंग एक अनसुपरवाइज़्ड मशीन लर्निंग तकनीक है, जिसका पैटर्न रिकग्निशन, इमेज विश्लेषण, ग्राहक एनालिटिक्स, मार्केट सेगमेंटेशन, सोशल नेटवर्क विश्लेषण, आदि में व्यापक उपयोग होता है। एयरलाइंस से लेकर हेल्थकेयर तक, अनेक उद्योग क्लस्टरिंग का इस्तेमाल करते हैं। 

यह अनसुपरवाइज़्ड लर्निंग का प्रकार है, जिसका अर्थ है कि क्लस्टरिंग एल्गोरिदम के लिए हमें लेबल्ड डेटा की आवश्यकता नहीं होती; यह अन्य सुपरवाइज़्ड लर्निंग तरीकों जैसे क्लासिफिकेशन पर क्लस्टरिंग का एक बड़ा लाभ है। इस लेख में, मैं बताऊंगा कि क्लस्टरिंग क्या है, किन व्यावसायिक उपयोग मामलों में यह सहायक है, और आपको पाँच आवश्यक एल्गोरिदम से परिचित कराऊंगा: 

TL;DR

  • क्लस्टरिंग अनसुपरवाइज़्ड मशीन लर्निंग है: लेबल्ड डेटा की आवश्यकता नहीं
  • K-Means सबसे व्यापक रूप से उपयोग किया जाने वाला एल्गोरिदम है; DBSCAN शोर और अनियमित आकारों को संभालता है; Hierarchical एक्सप्लोरेटरी विश्लेषण के लिए उपयुक्त है
  • कोई सार्वभौमिक श्रेष्ठ एल्गोरिदम नहीं है। चुनाव अपने डेटा के आकार, अपेक्षित क्लस्टर संख्या, और शोर स्तर पर आधारित करें
  • क्लस्टर गुणवत्ता को सुपरवाइज़्ड मॉडलों की तरह नहीं मापा जा सकता। Silhouette Score या Davies-Bouldin Index को मार्गदर्शक मानें, अंतिम निर्णय नहीं
  • scikit-learn में यहाँ कवर किए गए पाँचों एल्गोरिदम, और पाँच अतिरिक्त, उपलब्ध हैं

Clustering क्या है?

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

क्लस्टरिंग स्वयं कोई एक विशिष्ट एल्गोरिदम नहीं है, बल्कि हल किया जाने वाला सामान्य कार्य है। आप इसे विभिन्न एल्गोरिदम से प्राप्त कर सकते हैं, जो इस बात की अपनी-अपनी समझ में काफी भिन्न होते हैं कि क्लस्टर क्या है और उन्हें दक्षता से कैसे खोजा जाए। 

क्लस्टरिंग के पीछे सहज समझ बनाना

एल्गोरिदमिक विवरणों में जाने से पहले, फलों के टॉय डेटासेट के उदाहरण से क्लस्टरिंग की सहज समझ बनाते हैं। मान लीजिए हमारे पास तीन फलों—(i) स्ट्रॉबेरी, (ii) नाशपाती, और (iii) सेब—की छवियों वाले बहुत बड़े डेटासेट हैं। 

डेटासेट में सभी छवियाँ मिश्रित हैं, और आपका उपयोग मामला समान फलों को साथ समूहित करना है, यानी तीन समूह बनाना, जिनमें से हर एक में एक प्रकार का फल हो। यही काम एक क्लस्टरिंग एल्गोरिदम करता है। 

clustering algorithm

क्लस्टरिंग विश्लेषण के लिए प्रमुख सफलता मानदंड

क्लस्टरिंग, क्लासिफिकेशन या रिग्रेशन जैसे सुपरवाइज़्ड लर्निंग उपयोग मामलों के विपरीत, पूरी तरह एंड-टू-एंड स्वचालित नहीं की जा सकती। यह जानकारी खोजने की एक आवृत्तिमूलक प्रक्रिया है, जिसमें डोमेन विशेषज्ञता और मानवीय निर्णय शामिल होते हैं, ताकि इच्छित परिणाम पाने के लिए डेटा और मॉडल पैरामीटरों में बार-बार समायोजन किए जा सकें। 

सबसे महत्वपूर्ण बात, क्योंकि क्लस्टरिंग अनसुपरवाइज़्ड लर्निंग है और लेबल्ड डेटा का उपयोग नहीं करती, हम अलग-अलग एल्गोरिदम या डेटा प्रीप्रोसेसिंग तकनीकों की तुलना करने के लिए ऐक्युरेसी, AUC, RMSE आदि जैसे प्रदर्शन मेट्रिक्स की गणना नहीं कर सकते। नतीजतन, क्लस्टरिंग मॉडलों के प्रदर्शन का आकलन करना चुनौतीपूर्ण और व्यक्तिनिष्ठ हो जाता है। 

क्लस्टरिंग मॉडलों में सफलता के प्रमुख मानदंड इस प्रकार हैं:

  • क्या यह व्याख्यायोग्य है?
  • क्या क्लस्टरिंग का आउटपुट व्यवसाय के लिए उपयोगी है?
  • क्या आपने क्लस्टरिंग से पहले अज्ञात रही नई जानकारी या पैटर्न खोजे हैं?

क्लस्टरिंग गुणवत्ता का मापन

लेबल्ड डेटा के बिना आप ऐक्युरेसी या AUC नहीं निकाल सकते। दो मेट्रिक्स यह मात्रा निर्धारित करने में मदद करते हैं कि आपके क्लस्टर कितने अच्छे से अलग हैं। दो सामान्य माप:

  • Silhouette Score मापता है कि कोई बिंदु अपने क्लस्टर से अपने निकटतम पड़ोसी क्लस्टर की तुलना में कितना समान है। इसका मान -1 से 1 तक होता है; 0.5 से ऊपर के स्कोर अच्छे से अलग हुए क्लस्टरों का संकेत देते हैं।
  • Davies-Bouldin Index प्रत्येक क्लस्टर और उसके सबसे समान क्लस्टर के बीच औसत समानता को मापता है — जितना कम उतना बेहतर।

दोनों scikit-learn में उपलब्ध हैं: sklearn.metrics.silhouette_score(X, labels) और sklearn.metrics.davies_bouldin_score(X, labels)

1. K-Means

K-Means क्लस्टरिंग कार्यों के लिए सबसे व्यापक रूप से उपयोग किया जाने वाला एल्गोरिदम है, मुख्यतः क्योंकि इसके चरण समझने में आसान हैं और scikit-learn में इसका इम्प्लीमेंटेशन सीधा है। यह एक सेंट्रॉइड-आधारित एल्गोरिदम है जिसमें उपयोगकर्ता को बनाए जाने वाले क्लस्टरों की संख्या पहले से परिभाषित करनी होती है। 

आमतौर पर यह किसी व्यावसायिक उपयोग मामले से आता है या अलग-अलग क्लस्टर संख्या आजमा कर आउटपुट का मूल्यांकन करके तय किया जाता है। 

K-Means क्लस्टरिंग एक आवृत्तिमूलक एल्गोरिदम है जो नॉन-ओवरलैपिंग क्लस्टर बनाता है, यानी आपके डेटासेट का प्रत्येक इंस्टेंस केवल एक ही क्लस्टर का सदस्य होता है। K-Means की सहज समझ पाने का सबसे आसान तरीका नीचे दिए गए उदाहरण डायग्राम के साथ इसके चरणों को समझना है। प्रक्रिया का विस्तृत विवरण हमारे K-Means Clustering in Python और K-Means Clustering in R ट्यूटोरियल्स में भी है। 

  1. उपयोगकर्ता क्लस्टरों की संख्या निर्दिष्ट करता है।
  2. क्लस्टरों की संख्या के आधार पर सेंट्रॉइड्स को यादृच्छिक रूप से इनिशियलाइज़ करें। नीचे के डायग्राम में, Iteration 1 में, तीन सेंट्रॉइड्स नीले, लाल और हरे रंग में यादृच्छिक रूप से इनिशियलाइज़ किए गए हैं।
  3. डेटा बिंदुओं और प्रत्येक सेंट्रॉइड के बीच दूरी की गणना करें और प्रत्येक डेटा बिंदु को निकटतम सेंट्रॉइड को असाइन करें।
  4. सभी असाइन किए गए डेटा बिंदुओं के आधार पर सेंट्रॉइड का माध्य पुनर्गणित करें, जिससे सेंट्रॉइड की स्थिति बदलेगी, जैसा कि आप Iteration 2 - 9 में देख सकते हैं, जब तक कि यह अभिसरित न हो जाए।
  5. आवृत्ति तब तक जारी रहती है जब तक सेंट्रॉइड के माध्य में कोई परिवर्तन नहीं होता या max_iter पैरामीटर तक पहुँच नहीं जाती, जो प्रशिक्षण के दौरान उपयोगकर्ता द्वारा परिभाषित अधिकतम आवृत्तियों की संख्या है। scikit-learn में, डिफ़ॉल्ट max_iter 300 है।

K-means

छवि स्रोत: Learnbymarketing.com

2. MeanShift

K-Means के विपरीत, MeanShift एल्गोरिदम में क्लस्टरों की संख्या निर्दिष्ट करने की आवश्यकता नहीं होती। एल्गोरिदम स्वयं क्लस्टरों की संख्या स्वतः निर्धारित करता है, जो तब स्पष्ट लाभ है जब आपको अपने डेटा में क्लस्टरों की संख्या ज्ञात न हो। 

MeanShift भी सेंट्रॉइड्स पर आधारित है और प्रत्येक डेटा बिंदु को आवृत्तिमूलक रूप से क्लस्टरों में असाइन करता है। MeanShift क्लस्टरिंग का सबसे सामान्य उपयोग मामला इमेज सेगमेंटेशन कार्य हैं।

MeanShift एल्गोरिदम कर्नेल डेन्सिटी एस्टीमेशन पर आधारित है। K-Means के समान, MeanShift एल्गोरिदम प्रत्येक डेटा बिंदु को निकटतम क्लस्टर सेंट्रॉइड की ओर आवृत्तिमूलक रूप से ले जाता है, जिन्हें यादृच्छिक रूप से इनिशियलाइज़ किया जाता है, और प्रत्येक बिंदु को उस स्थान की दिशा में शिफ्ट किया जाता है जहाँ सबसे अधिक बिंदु हैं, यानी मोड (MeanShift के संदर्भ में, मोड किसी क्षेत्र में डेटा बिंदुओं का उच्चतम घनत्व है)। 

इसीलिए MeanShift एल्गोरिदम को Mode-seeking एल्गोरिदम भी कहा जाता है। इसके चरण इस प्रकार हैं:

  • कोई भी यादृच्छिक बिंदु चुनें और उसके चारों ओर एक विंडो बनाएं।
  • इस विंडो के भीतर सभी बिंदुओं का माध्य निकालें।
  • विंडो को मोड की दिशा में शिफ्ट करें। 
  • अभिसरण तक चरणों को दोहराएँ।

छवि स्रोत: ResearchGate

व्यावहारिक रूप से MeanShift के चरण-दर-चरण walkthrough के लिए हमारा Mean Shift Clustering ट्यूटोरियल देखें।

3. DBSCAN

DBSCAN, या Density-Based Spatial Clustering of Applications with Noise, एक अनसुपरवाइज़्ड क्लस्टरिंग एल्गोरिदम है जो इस धारणा पर काम करता है कि क्लस्टर उच्च-घनत्व वाले क्षेत्र होते हैं जो निम्न-घनत्व क्षेत्रों से अलग होते हैं। 

इस एल्गोरिदम का K-Means और MeanShift पर सबसे बड़ा लाभ यह है कि यह आउटलायर्स के प्रति मज़बूत है, यानी यह आउटलायर डेटा बिंदुओं को किसी भी क्लस्टर में शामिल नहीं करेगा। 

DBSCAN एल्गोरिदम को उपयोगकर्ता से केवल दो पैरामीटरों की आवश्यकता होती है: 

  • प्रत्येक डेटा बिंदु के चारों ओर बनाए जाने वाले वृत्त का त्रिज्या, जिसे epsilon कहा जाता है

  • minPoints, जो उस वृत्त के भीतर आवश्यक न्यूनतम डेटा बिंदुओं की संख्या को परिभाषित करता है ताकि उस डेटा बिंदु को Core बिंदु के रूप में वर्गीकृत किया जा सके।

हर डेटा बिंदु को epsilon त्रिज्या वाले वृत्त से घेरा जाता है, और DBSCAN उन्हें Core बिंदु, Border बिंदु, या Noise बिंदु के रूप में पहचानता है। किसी डेटा बिंदु को Core बिंदु तब माना जाता है जब उसे घेरने वाले वृत्त में minPoints पैरामीटर द्वारा निर्दिष्ट न्यूनतम बिंदु हों। 

यदि बिंदुओं की संख्या आवश्यक न्यूनतम से कम है तो उसे Border बिंदु माना जाता है, और यदि किसी भी डेटा बिंदु के epsilon त्रिज्या के भीतर कोई अतिरिक्त डेटा बिंदु नहीं हैं तो उसे Noise माना जाता है। Noise डेटा बिंदुओं को किसी क्लस्टर में नहीं रखा जाता (मूलतः, वे आउटलायर होते हैं)।

DBSCAN क्लस्टरिंग एल्गोरिदम के कुछ सामान्य उपयोग मामले:

  • उच्च घनत्व बनाम निम्न घनत्व वाले क्लस्टरों को अलग करने में बेहतरीन प्रदर्शन;
  • नॉन-लीनियर डेटासेट पर अच्छा काम करता है, और
  • अनॉमली डिटेक्शन के लिए उपयोगी है क्योंकि यह Noise बिंदुओं को अलग कर देता है और उन्हें किसी क्लस्टर में असाइन नहीं करता।

DBSCAN बनाम K-Means

DBSCAN की K-Means से तुलना करते समय सामान्य अंतर इस प्रकार हैं: 

  • K-Means डेटासेट की सभी इंस्टेंसों को क्लस्टर करता है, जबकि DBSCAN Noise बिंदुओं (आउटलायर्स) को वैध क्लस्टर में असाइन नहीं करता
  • K-Means को नॉन-ग्लोबल क्लस्टरों में कठिनाई होती है, जबकि DBSCAN इसे आसानी से संभालता है
  • K-Means यह मानता है कि डेटासेट के सभी डेटा बिंदु Gaussian वितरण से आते हैं, जबकि DBSCAN डेटा के बारे में कोई धारणा नहीं बनाता।

आप हमारे DBSCAN क्लस्टरिंग एल्गोरिदम गाइड में और जान सकते हैं, जिसमें पैरामीटर ट्यूनिंग और व्यावहारिक उदाहरण शामिल हैं। 

DBSCAN

छवि स्रोत: Medium

4. Hierarchical Clustering

हायरार्किकल क्लस्टरिंग क्लस्टरों का एक पदानुक्रम बनाती है। इसके दो प्रकार हैं। 

  • Agglomerative: यह एक बॉटम-अप दृष्टिकोण है, जहाँ शुरुआत में प्रत्येक ऑब्ज़र्वेशन को अपना अलग क्लस्टर माना जाता है, और नीचे से ऊपर की ओर बढ़ते हुए ऑब्ज़र्वेशनों को जोड़ों में मिलाया जाता है, और जोड़ों को क्लस्टर में। 
  • Divisive: यह "टॉप-डाउन" दृष्टिकोण है: सभी ऑब्ज़र्वेशन एक क्लस्टर में शुरू होते हैं, और ऊपर से नीचे की ओर बढ़ते हुए क्रमिक रूप से विभाजन किए जाते हैं।

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

हायरार्किकल क्लस्टरिंग का सबसे बड़ा लाभ यह है कि इसे समझना और लागू करना आसान है। आमतौर पर, इस क्लस्टरिंग विधि के आउटपुट का विश्लेषण किसी छवि में किया जाता है, जैसा कि नीचे दिखाया गया है। इसे डेंड्रोग्राम कहा जाता है।

आप हमारे हायरार्किकल क्लस्टरिंग ट्यूटोरियल में अधिक जान सकते हैं, जो Python में डेंड्रोग्राम बनाना और पढ़ना सिखाता है। 

छवि स्रोत: ResearchGate

5. BIRCH

BIRCH का अर्थ है Balanced Iterative Hierarchical Based Clustering। इसका उपयोग बहुत बड़े डेटासेट पर किया जाता है, जहाँ K-Means व्यावहारिक रूप से स्केल नहीं कर पाता। BIRCH एल्गोरिदम बड़े डेटा को छोटे क्लस्टरों में विभाजित करता है और यथासंभव अधिकतम जानकारी बरकरार रखने की कोशिश करता है। बड़े डेटासेट को सीधे क्लस्टर करने के बजाय, छोटे समूहों को अंततः क्लस्टर किया जाता है। 

BIRCH का उपयोग अक्सर अन्य क्लस्टरिंग एल्गोरिदम के पूरक के रूप में किया जाता है, सूचना का सारांश बनाकर जिसे अन्य एल्गोरिदम उपयोग कर सकें। उपयोगकर्ताओं को BIRCH के प्रशिक्षण के लिए क्लस्टरों की संख्या परिभाषित करनी होती है, जैसे कि हम K-Means में करते हैं।

BIRCH का एक लाभ यह है कि यह बहु-आयामी डेटा बिंदुओं को क्रमिक और डायनामिक रूप से क्लस्टर कर सकता है। यह दिए गए मेमोरी और समय सीमाओं के भीतर उच्चतम गुणवत्ता के क्लस्टर बनाने के लिए किया जाता है। अधिकांश मामलों में, BIRCH को डेटाबेस पर केवल एक पास की आवश्यकता होती है, जो इसे स्केलेबल बनाता है। 

BIRCH क्लस्टरिंग एल्गोरिदम का सबसे सामान्य उपयोग मामला यह है कि यह K-Means के लिए मेमोरी-कुशल विकल्प है, जिसका उपयोग बड़े डेटासेट को क्लस्टर करने के लिए किया जा सकता है जिन्हें मेमोरी या कंप्यूट सीमाओं के कारण K-Means से संभाला नहीं जा सकता।

क्लस्टरिंग के व्यावसायिक अनुप्रयोग

क्लस्टरिंग के मीडिया, हेल्थकेयर, मैन्युफैक्चरिंग, रिटेल और जहाँ भी बड़े पैमाने पर अनलेबल्ड डेटा हो, जैसे उद्योगों में व्यापक अनुप्रयोग हैं। यहाँ कुछ व्यावहारिक उदाहरण हैं।

कस्टमर सेगमेंटेशन

ग्राहकों को उनकी खरीदारी के व्यवहार या रुचियों के आधार पर क्लस्टरिंग एल्गोरिदम से वर्गीकृत किया जाता है, ताकि केंद्रित मार्केटिंग अभियानों का विकास किया जा सके। 

कल्पना करें कि आपके पास 1 करोड़ ग्राहक हैं, और आप कस्टमाइज़्ड या केंद्रित मार्केटिंग अभियान बनाना चाहते हैं। यह संभावना नहीं है कि आप 1 करोड़ अलग-अलग अभियान बनाएँगे, तो क्या करें? हम क्लस्टरिंग का उपयोग करके 1 करोड़ ग्राहकों को 25 क्लस्टरों में बाँट सकते हैं और फिर 1 करोड़ की जगह 25 अभियान डिज़ाइन कर सकते हैं।

Customer Segmentation

छवि स्रोत: Medium

रिटेल क्लस्टरिंग

रिटेल व्यवसायों में क्लस्टरिंग के कई अवसर हैं। उदाहरण के लिए, आप प्रत्येक स्टोर पर डेटा एकत्र कर सकते हैं और स्टोर स्तर पर क्लस्टर कर सकते हैं, ताकि यह जान सकें कि फुटफॉल, औसत स्टोर बिक्री, SKU की संख्या आदि जैसे गुणों के आधार पर कौन-से स्थान एक-दूसरे से मिलते-जुलते हैं। 

एक अन्य उदाहरण श्रेणी स्तर पर क्लस्टरिंग हो सकता है। नीचे के डायग्राम में हमारे पास आठ स्टोर हैं। अलग-अलग रंग अलग-अलग क्लस्टर दर्शाते हैं। इस उदाहरण में चार क्लस्टर हैं। 

ध्यान दें कि स्टोर 1 में डिओडोरेंट्स श्रेणी को लाल क्लस्टर द्वारा दर्शाया गया है, जबकि स्टोर 2 में डिओडोरेंट्स श्रेणी नीले क्लस्टर द्वारा दर्शाई गई है। यह बताता है कि डिओडोरेंट्स श्रेणी के लिए स्टोर 1 और स्टोर 2 के लक्ष्य बाज़ार बिल्कुल अलग हैं।

Retail cluster

छवि स्रोत: dotactiv.com

क्लिनिकल केयर / रोग प्रबंधन में क्लस्टरिंग

हेल्थकेयर और क्लिनिकल विज्ञान में क्लस्टरिंग के विशेष रूप से मज़बूत अनुप्रयोग हैं। एक उदाहरण Komaru & Yoshida इत्यादि, 2020 का शोध है, जहाँ उन्होंने 101 मरीजों के जनसांख्यिकीय और प्रयोगशाला डेटा एकत्र किए और फिर उन्हें 3 क्लस्टरों में विभाजित किया। 

प्रत्येक क्लस्टर विभिन्न स्थितियों से परिभाषित था। उदाहरण के लिए, क्लस्टर 1 में कम WBC और CRP वाले मरीज हैं। क्लस्टर 2 में उच्च BMP और Serum वाले मरीज हैं, और क्लस्टर 3 में कम Serum वाले मरीज हैं। प्रत्येक क्लस्टर, हेमोडायलिसिस के बाद 1-वर्षीय मृत्युदर के आधार पर, अलग-अलग सर्वाइवल ट्रैजेक्टरी दर्शाता है।

Clinical clustering

छवि स्रोत: elsevierhealth.com

इमेज सेगमेंटेशन

इमेज सेगमेंटेशन किसी छवि को अलग-अलग समूहों में वर्गीकृत करना है। क्लस्टरिंग का उपयोग करते हुए इमेज सेगमेंटेशन पर काफी शोध हुआ है। यदि आप किसी छवि में वस्तुओं को अलग करना चाहते हैं ताकि प्रत्येक वस्तु की पहचान के लिए अलग-अलग विश्लेषण कर सकें, तो इस प्रकार की क्लस्टरिंग उपयोगी है। 

नीचे के उदाहरण में, बाईं ओर मूल छवि है, और दाईं ओर क्लस्टरिंग एल्गोरिदम का परिणाम। आप स्पष्ट रूप से 4 क्लस्टर देख सकते हैं, जो छवि में 4 अलग-अलग वस्तुएँ हैं, जिन्हें पिक्सल के आधार पर निर्धारित किया गया है (बाघ, घास, पानी और रेत)।
Image segmentation

क्लस्टरिंग एल्गोरिदम की तुलना

scikit-learn, जो Python में एक लोकप्रिय मशीन लर्निंग लाइब्रेरी है, में 10 अनसुपरवाइज़्ड क्लस्टरिंग एल्गोरिदम इम्प्लीमेंट किए गए हैं। डेटासेट में क्लस्टरों को निर्धारित और असाइन करने के उनके तरीके में बुनियादी अंतर हैं। 

इन एल्गोरिदम की गणितीय प्रकृति में अंतर्निहित अंतर चार पहलुओं में सिमटते हैं, जिन पर हम उनकी तुलना कर सकते हैं:

  • मॉडल के लिए आवश्यक पैरामीटर 
  • स्केलेबिलिटी 
  • उपयोग मामले, 
  • ज्यामिति, यानी दूरी की गणना के लिए प्रयुक्त मेट्रिक। 

नीचे के डायग्राम में, प्रत्येक कॉलम अलग-अलग क्लस्टरिंग एल्गोरिदम, जैसे K-Means, Affinity Propagation, MeanShift, आदि के आउटपुट का प्रतिनिधित्व करता है। कुल 10 एल्गोरिदम हैं जिन्हें एक ही डेटासेट पर प्रशिक्षित किया गया है।

कुछ एल्गोरिदम ने समान आउटपुट दिए हैं। ध्यान दें कि Agglomerative Clustering, DBSCAN, OPTICS, और Spectral Clustering ने समान क्लस्टर तैयार किए। 

हालाँकि, यदि आप K-Means के आउटपुट की MeanShift के आउटपुट से तुलना करें, तो आप देखेंगे कि दोनों अलग परिणाम देते हैं। K-Means के मामले में केवल दो समूह हैं (क्लस्टर: नीला और नारंगी), जबकि MeanShift के मामले में तीन हैं, यानी नीला, हरा, और नारंगी। 

Comparison of different cluster

छवि स्रोत: scikit-learn

दुर्भाग्यवश (या सौभाग्य से), क्लस्टरिंग में सही या गलत का कोई एक उत्तर नहीं होता। यदि यह संभव होता, तो यह कहना आसान होता कि “यहाँ X एल्गोरिदम सबसे अच्छा प्रदर्शन कर रहा है।” 

यह संभव नहीं है, और इसी कारण क्लस्टरिंग एक बहुत चुनौतीपूर्ण कार्य है। 

अंततः, कौन-सा एल्गोरिदम बेहतर काम करता है, यह किसी आसानी से मापने योग्य मेट्रिक पर नहीं, बल्कि व्याख्या और मौजूदा उपयोग मामले के लिए आउटपुट की उपयोगिता पर निर्भर करता है।

सही क्लस्टरिंग एल्गोरिदम कैसे चुनें

प्रत्येक एल्गोरिदम अलग-अलग डेटा परिस्थितियों के लिए उपयुक्त होता है। इस तालिका को शुरुआती बिंदु के रूप में उपयोग करें, फिर प्रतिबद्ध होने से पहले कम-से-कम दो एल्गोरिदम अपने वास्तविक डेटा पर परीक्षण करें।

एल्गोरिदम कब उपयोग करें मुख्य सीमा आवश्यक पैरामीटर
K-Means लगभग गोलाकार क्लस्टरों वाले बड़े डेटासेट आउटलायर्स के प्रति संवेदनशील; पहले से k चाहिए क्लस्टरों की संख्या (k)
MeanShift अज्ञात क्लस्टर संख्या; इमेज सेगमेंटेशन बड़े डेटासेट पर धीमा; बैंडविड्थ सेट करना पेचीदा बैंडविड्थ (स्वतः-आकलित की जा सकती है)
DBSCAN शोरयुक्त डेटा; अनियमित क्लस्टर आकार; अनॉमली डिटेक्शन जब क्लस्टरों की घनत्व बहुत अलग हो तो संघर्ष करता है epsilon, minPoints
Hierarchical एक्सप्लोरेटरी विश्लेषण; सोशल नेटवर्क डेटा; छोटे डेटासेट मेमोरी-इंटेंसिव; लाखों पंक्तियों तक स्केल नहीं करता लिंकिज़ विधि (ward, complete, average)
BIRCH बहुत बड़े डेटासेट जहाँ K-Means मेमोरी से बाहर हो जाए छोटे डेटासेट पर K-Means की तुलना में कम सटीक ब्रांचिंग फ़ैक्टर, थ्रेशोल्ड, क्लस्टरों की संख्या

एक व्यावहारिक शुरुआत: गति के लिए पहले K-Means आज़माएँ, यदि आपके डेटा में अनियमित आकार या आउटलायर्स हैं तो DBSCAN पर स्विच करें, और जब आप डेंड्रोग्राम के माध्यम से क्लस्टर संरचना को दृश्य रूप से तलाशना चाहें और k चुनने से पहले समझ बनाना चाहें, तो Hierarchical क्लस्टरिंग का उपयोग करें।

अंतिम विचार

क्लस्टरिंग, दो कारणों से, क्लासिफिकेशन और रिग्रेशन जैसी सुपरवाइज़्ड तकनीकों की तुलना में लागू करना कठिन है: आप लेबल्ड टार्गेट्स के विरुद्ध प्रदर्शन नहीं माप सकते, और क्लस्टरों की संख्या जैसे पैरामीटर एल्गोरिदमिक चयन के बजाय डोमेन जजमेंट माँगते हैं। 

क्लस्टरिंग विभिन्न भूमिकाओं के लिए मूल्यवान कौशल है: डेटा वैज्ञानिक, ML इंजीनियर, और विश्लेषक सभी ऐसे समस्याओं का सामना करते हैं जिन्हें क्लस्टरिंग सुलझा सकती है। 

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

Frequently Asked Questions (FAQs)

Clustering अनसुपरवाइज़्ड है या सुपरवाइज़्ड मशीन लर्निंग?

क्लस्टरिंग एक अनसुपरवाइज़्ड मशीन लर्निंग तकनीक है। इसके लिए प्रशिक्षण में लेबल्ड डेटा की आवश्यकता नहीं होती।

क्या क्लस्टरिंग के लिए लेबल्ड डेटा चाहिए?

नहीं, क्लस्टरिंग एल्गोरिदम के लिए हमें लेबल्ड डेटा की आवश्यकता नहीं होती। यदि आपके पास लेबल्ड डेटा है, तो आपको सुपरवाइज़्ड क्लासिफिकेशन एल्गोरिदम चाहिए।

क्या मैं श्रेणीबद्ध डेटा पर क्लस्टरिंग कर सकता/सकती हूँ?

हाँ, ठीक सुपरवाइज़्ड मशीन लर्निंग की तरह, यदि आपके डेटा में श्रेणीबद्ध (categorical) फीचर्स हैं, तो आपको उन्हें वन-हॉट-एन्कोडिंग जैसी तकनीकों से एन्कोड करना होगा। कुछ एल्गोरिदम, जैसे K-Modes, बिना किसी एन्कोडिंग के सीधे श्रेणीबद्ध डेटा स्वीकार करने के लिए बनाए गए हैं।

क्या क्लस्टरिंग मशीन लर्निंग है?

हाँ, क्लस्टरिंग मशीन लर्निंग है। विशेष रूप से, अनसुपरवाइज़्ड मशीन लर्निंग।

क्लस्टरिंग वर्णनात्मक एनालिटिक्स है या भविष्यानुमान?

क्लस्टरिंग का उपयोग वर्णनात्मक (descriptive) और भविष्यानुमान (predictive) दोनों एनालिटिक्स में किया जा सकता है। यह अधिकतर एक्सप्लोरेटरी डेटा एनालिसिस, जो कि वर्णनात्मक एनालिटिक्स है, के आसपास उपयोग होती है।

क्या हम क्लस्टरिंग एल्गोरिदम का प्रदर्शन माप सकते हैं?

सुपरवाइज़्ड मशीन लर्निंग (AUC, Accuracy, R2, आदि) की तरह क्लस्टरिंग एल्गोरिदम के प्रदर्शन को मापने का पक्का तरीका नहीं है। मॉडल की गुणवत्ता आउटपुट की व्याख्या और उपयोग मामले पर निर्भर करती है। हालाँकि, Homogeneity Score, Silhouette Score आदि जैसे कुछ वर्कअराउंड मेट्रिक्स उपलब्ध हैं।

क्या हम सुपरवाइज़्ड मशीन लर्निंग में फीचर इंजीनियरिंग के लिए क्लस्टरिंग का उपयोग कर सकते हैं?

हाँ, क्लस्टरिंग एल्गोरिदम आपके डेटासेट में समूहों के रूप में लेबल असाइन करते हैं। अंततः यह आपके डेटासेट में एक नया श्रेणीबद्ध कॉलम होता है। इसलिए, क्लस्टरिंग का उपयोग अक्सर सुपरवाइज़्ड लर्निंग कार्यों में फीचर इंजीनियरिंग के लिए किया जाता है।

विषय

मशीन लर्निंग के कोर्स

Track

मशीन लर्निंग फंडामेंटल्स in R

24 घंटा
वर्गीकरण और प्रतिगमन के माध्यम से श्रेणीबद्ध और संख्यात्मक प्रतिक्रियाओं की भविष्यवाणी करें, और अनसुपरवाइज़्ड लर्निंग के साथ डेटासेट की छिपी संरचना खोजें।
विस्तृत जानकारी देखेंRight Arrow
कोर्स शुरू करें
और देखेंRight Arrow