क्लस्टरिंग क्या है?
क्लस्टरिंग (Clustering) का मतलब है मिलती-जुलती चीज़ों को एक ही समूह में रखना। समूहों के नाम हमें पहले से नहीं दिए जाते। कंप्यूटर डेटा देखकर ख़ुद समूह खोजता है। इसे बिना निगरानी वाली सीख (unsupervised learning) कहते हैं।
हर चीज़ एक बिंदु है। मेज़ पर उसकी जगह उसकी संख्याओं से तय होती है, जिन्हें गुण (features) कहते हैं। 3D में एक गुण खेल के घंटे हैं और दूसरा पढ़ाई के घंटे।
समानता यानी दूरी
दो बिंदु मिलते-जुलते हैं, यह कैसे कहें? हम देखते हैं कि वे कितनी दूर हैं। दूरी कम = बहुत मिलते-जुलते। दूरी ज़्यादा = अलग।
दो गुणों के लिए सीधी दूरी:
d = √[(x₂ − x₁)² + (y₂ − y₁)²]
यह वही पाइथागोरस का नियम है जो आप त्रिभुज में पढ़ चुके हैं। उदाहरण: (0, 0) से (3, 4) की दूरी √(9 + 16) = 5 है।
अगर गुणों की माप बहुत अलग हो (जैसे उम्र और तनख़्वाह), तो पहले उन्हें एक जैसे पैमाने पर लाइए, वरना बड़ी संख्या हमेशा जीतेगी।
K-मीन्स क़दम-दर-क़दम
- K चुनिए: आप कितने समूह चाहते हैं।
- K केंद्र रखिए (पहला अंदाज़ा, अक्सर K यूँ ही चुने बिंदु)।
- बाँटिए: हर बिंदु अपने सबसे पास वाले केंद्र से जुड़ता है।
- खिसकाइए: हर केंद्र अपने बिंदुओं के माध्य (औसत जगह) पर जाता है। इस नए केंद्र को सेंट्रॉइड (centroid) कहते हैं।
- दोहराइए: क़दम 3 और 4 तब तक, जब तक कोई बिंदु समूह न बदले।
हर चक्र में समूह और कसे हुए होते हैं, इसलिए प्रक्रिया ज़रूर रुकती है।
K कैसे चुनें और सीमाएँ
K-means को सही K नहीं पता होता। K = 2, 3, 4 आज़माइए और देखिए कि असली समस्या के लिए कौन-सा बँटवारा सही लगता है। K बहुत छोटा हो तो अलग चीज़ें मिल जाती हैं। K बहुत बड़ा हो तो एक असली समूह टुकड़ों में कट जाता है।
अलग पहली शुरुआत से अलग समूह मिल सकते हैं, इसलिए लोग इसे कई बार चलाते हैं। K-means तब अच्छा चलता है जब समूह गोल और लगभग बराबर हों। बाक़ी सबसे दूर पड़े अजीब बिंदु (outlier) इसे खींच भी लेते हैं।
करके देखिए
3D में: अगला क़दम दबाने से पहले अंदाज़ा लगाइए कि कौन-से बिंदु रंग बदलेंगे। फिर जाँचिए। तीन बार नई शुरुआत दबाइए: क्या हर बार वही तीन समूह मिलते हैं?
घर पर: 10 दोस्तों की लंबाई और जूते का नाप काग़ज़ पर बिंदु बनाकर लिखिए। जो समूह दिखें, उनके चारों ओर 2 घेरे खींचिए। हर घेरे का बीच ढूँढिए और देखिए कि कौन-से बिंदु दूसरे बीच के ज़्यादा पास हैं।
मुख्य सूत्र और परिभाषाएँ
- दूरी: d = √[(x₂ − x₁)² + (y₂ − y₁)²]
- सेंट्रॉइड (माध्य जगह): x̄ = (x₁ + x₂ + … + xₙ) / n, ȳ = (y₁ + y₂ + … + yₙ) / n
- मुख्य शब्द: cluster = समूह, centroid = समूह का बीच, K = समूहों की संख्या, feature = बिंदु का वर्णन करने वाली संख्या
हल किए गए उदाहरण
1. बिंदुओं (1, 2) और (4, 6) के बीच की दूरी ज्ञात कीजिए।
क़दम 1: अंतर 4 − 1 = 3 और 6 − 2 = 4। क़दम 2: d = √(3² + 4²) = √(9 + 16) = √25 = 5।
2. बिंदु (2, 2) केंद्र A (0, 0) और केंद्र B (5, 5) के बीच है। वह किससे जुड़ेगा?
A से दूरी = √(4 + 4) = √8 ≈ 2.8। B से दूरी = √(9 + 9) = √18 ≈ 4.2। A पास है, इसलिए बिंदु A से जुड़ेगा।
3. एक समूह में बिंदु (2, 4), (4, 8) और (6, 6) हैं। उसका केंद्र कहाँ खिसकेगा?
x का माध्य = (2 + 4 + 6) / 3 = 4। y का माध्य = (4 + 8 + 6) / 3 = 6। नया केंद्र (4, 6) है।
आम गलतियाँ
- यह सोचना कि K-means K ख़ुद ढूँढ लेता है। K आपको चुनना होता है।
- बिंदु बाँटने के बाद केंद्र खिसकाना भूल जाना। बाँटना और खिसकाना दो अलग क़दम हैं।
- बहुत अलग माप वाले गुण, जैसे सेंटीमीटर में लंबाई और लाखों में आमदनी, बिना पैमाना बराबर किए मिला देना।
- यह मान लेना कि एक बार चलाना हमेशा सबसे अच्छा है। अलग शुरुआत से अलग समूह मिल सकते हैं।