K- साधन (या उसके करीबी परिजन) केवल एक दूरी मैट्रिक्स के साथ क्लस्टरिंग करें, न कि पॉइंट-बाय-फीचर्स डेटा


22

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

मैंने K- साधनों को पहले लागू किया है, लेकिन यह बिंदु डेटासेट इनपुट के साथ था; और दूरी मैट्रिक्स इनपुट के साथ यह मेरे लिए स्पष्ट नहीं है कि बिंदु-प्रतिनिधित्व के बिना क्लस्टर "केंद्र" होने के लिए क्लस्टर को कैसे अपडेट किया जाए। यह सामान्य रूप से कैसे किया जाएगा? क्या इसके लिए के-साधन या तरीकों के संस्करण करीब हैं?


आपका क्या मतलब है कि बिंदुओं के रूप में वर्णित नहीं हैं?
जिज्ञासु

जवाबों:


24

जाहिर है, k-साधन की जरूरत है की गणना करने में सक्षम होना साधन

हालांकि, वहाँ इसके बारे में एक अच्छी तरह से ज्ञात भिन्नता के रूप में जाना जाता है k-medoids या पीएएम (Medoids लगभग विभाजन), जहां medoid है मौजूदा क्लस्टर के लिए सबसे केंद्रीय वस्तु। K-medoids को केवल जोड़ीदार दूरी की आवश्यकता होती है।


21

आप वास्तव में गिरी की स्थापना के समस्या का वर्णन कर रहे हैं -means; जब आप एक यूक्लिडियन वेक्टर के रूप में डेटा बिंदु का प्रतिनिधित्व नहीं कर सकते, लेकिन यदि आप अभी भी दो डेटा बिंदुओं के बीच आंतरिक उत्पाद की गणना (या परिभाषित) कर सकते हैं तो आप एल्गोरिथ्म को कर्नेल कर सकते हैं । निम्नलिखित वेबपेज एल्गोरिथ्म का संक्षिप्त विवरण प्रदान करता है:k

कर्नेल -means पेजk

यह कर्नेल ट्रिक स्टैटिस्टिक्स और मशीन लर्निंग में एक बहुत लोकप्रिय और मौलिक विचार है।

कर्नेल ट्रिक पर विकी पेज

यदि आप रुचि रखते हैं, तो बर्नहार्ड श्लोकोफ़ और अलेक्जेंडर जे। स्मोला द्वारा कर्नल्स के साथ लर्निंग बुक बहुत अच्छा परिचय होगा।

मैक्स वेलिंग का यह नोट बहुत अच्छा लगता है; इसके अलावा, यदि आप R का उपयोग कर रहे हैं तो आप इस R पैकेज पर एक नज़र डाल सकते हैं

एमडीएस आपकी समस्या को हल करने का एक तरीका हो सकता है, लेकिन यह उस समस्या पर सीधे हमला नहीं करता है जिसे आप हल करना चाहते हैं; जबकि कर्नेल k- साधन करता है।


मैं अधिक लिंक शामिल करना चाहता था, लेकिन कम प्रतिष्ठा के कारण नहीं कर सका। मैक्स Welling से इस नोट टिप्पणी बहुत अच्छा लगता है, यदि आप R का उपयोग कर रहे हैं, तो आप इस R पैकेज
d_ijk_stra

(+1) साइट पर आपका स्वागत है। मैंने आपकी टिप्पणी के लिंक को पोस्ट की बॉडी के साथ-साथ स्कोल्कोफ़ और स्मोला टेक्स्ट में जोड़ दिया है।
कार्डिनल

9

@gung आपको दूरस्थ मैट्रिक्स से डेटा बनाने के लिए प्रारंभिक उपकरण के रूप में बहुआयामी स्केलिंग (MDS) का सुझाव देते हुए बिल्कुल सही है points X dimensions। मुझे बस कुछ स्ट्रोक जोड़ने हैं। K- साधन क्लस्टरिंग का मतलब यूक्लिडियन दूरियां है । एमडीएस आपको पॉइंट-इन-डायमेंशन निर्देशांक देगा जिससे आपको यूक्लिडियन दूरी की गारंटी मिलेगी। आपको मीट्रिक एमडीएस का उपयोग करना चाहिए और यथासंभव आयामों की संख्या का अनुरोध करना चाहिए, क्योंकि आपका उद्देश्य डेटा को पुन: संयोजित करने की त्रुटि को कम करना है, न कि इसे 2 डी या 3 डी में मैप करना।

क्या होगा यदि आपके पास एमडीएस सॉफ़्टवेयर नहीं है, लेकिन कुछ मैट्रिक्स फ़ंक्शन हैं जैसे कि eigenvalue अपघटन या एकवचन-मूल्य अपघटन? फिर आप स्वयं साधारण मीट्रिक एमडीएस कर सकते हैं - टॉर्गरसन एमडीएस, जिसे प्रिंसिपल कोऑर्डिनेट्स एनालिसिस (पीसीओए) के रूप में भी जाना जाता है। यह प्रिंसिपल कंपोनेंट्स एनालिसिस के लिए थोड़ा "ट्विस्टेड" होता है। मैं यहाँ इसका वर्णन नहीं करूँगा, हालाँकि यह काफी सरल है। आप इसके बारे में कई जगहों पर पढ़ सकते हैं, जैसे यहाँ

अंत में, सीधे पीसीओए या किसी अन्य मेट्रिक एमडीएस को करने वाले कार्यों को कॉल करने या लिखने के बिना - "दूरी मैट्रिक्स इनपुट के लिए के-साधन" प्रोग्राम करना संभव है । हम जानते हैं, कि (ए) केन्द्रक से वर्ग विचलन का योग, अंकों की संख्या से विभाजित जोड़ीदार वर्ग यूक्लिडियन की राशि के बराबर है ; और (b) पता है कि दूरी मैट्रिक्स से बाहर क्लस्टर सेंट्रोइड्स के बीच की दूरी की गणना कैसे करें ; (c) और हम आगे जानते हैं कि S-of-squares K- साधनों में किस प्रकार परस्पर जुड़े हैं। यह सब एक साथ एल्गोरिथ्म के लेखन को बनाता है जिसे आप एक सीधा और एक जटिल उपक्रम चाहते हैं। हालांकि यह याद रखना चाहिए कि K- साधन केवल यूक्लिडियन दूरी / यूक्लिडियन स्थान के लिए है। गैर-यूक्लिडियन दूरियों के लिए के-मेडोइड या अन्य तरीकों का उपयोग करें।

एक ऐसा ही सवाल


7

मैं निश्चित रूप से नहीं जानता कि यह "सामान्य रूप से" कैसे किया जाता है, और रिकॉर्ड के लिए, मुझे क्लस्टर विश्लेषण के बारे में ज्यादा जानकारी नहीं है। हालाँकि, क्या आप बहुआयामी स्केलिंग से परिचित हैं ? ( यहां एक और संदर्भ है, विकी , और आप CV को टैग के तहत खोज सकते हैं ।) बहुआयामी स्केलिंग जोड़ीदार दूरी के एक मैट्रिक्स में लेता है, जो आपकी स्थिति की तरह लगता है। एमडीएस से, आप वस्तुओं के स्थानों को न्यूनतम आयामी स्थान में प्राप्त कर सकते हैं जो उन्हें पर्याप्त रूप से प्रतिनिधित्व करने के लिए आवश्यक है। मुझे लगता है कि आप उन स्थानों का उपयोग k- साधनों की तरह बाद में क्लस्टर विश्लेषण करने के लिए कर सकते हैं; वैकल्पिक रूप से, एक बार आपके पास आउटपुट होने के बाद, आपको CA की आवश्यकता नहीं रह सकती है।

मुझे नहीं पता कि आप R का उपयोग करते हैं, लेकिन यहां साइकोमेट्रिक्स के लिए कार्य दृश्य है, जिसमें R. में एमडीएस पर एक अनुभाग शामिल है। आशा है कि मदद करता है।


4

k

आपके मामले में, आपको मूल रूप से क्या करने की आवश्यकता है:

  1. Dशून्य स्व-असमानता के साथ ।
  2. मामले में यह पहले से ही सममित नहीं है, औसत से समरूपता हैDijDji
  3. केंद्र इसे (यानी पंक्ति और स्तंभ का मतलब घटाएं) प्राप्त करने के लिएDc
  4. गणना करेंSc=12Dc
  5. ScScS~c
  6. S~c=VΛV
  7. n1X=VΛ1/2

n


वर्णित कदम प्रिंसिपल कोऑर्डिनेट्स एनालिसिस से कम नहीं हैं जिनका मैं अपने उत्तर में उल्लेख करता हूं।
ttnphns

कृपया, अपने चरण का अनुकरण करें। S मैट्रिक्स तत्वों से अंतिम (ऋणात्मक) eigenvalue (s) को हटाने से ऐसा लगता है कि यह S सकारात्मक अर्धचालक बनाने में मदद नहीं करता है।
ttnphns

@ttnphns: यह मूल रूप से पीसीए है, हाँ, लेकिन इसके लिए मीट्रिक की दूरी की आवश्यकता नहीं है। चरण 5 का वर्णन दुर्भाग्यपूर्ण था, इसे स्थान देने के लिए धन्यवाद। क्या यह अब स्पष्ट है?
ब्लब करें

सभी eigenvalues ​​से नकारात्मक eigenvalues ​​का योग घटाना और फिर एस मैट्रिक्स मैट्रिक्स एस के विकर्ण तत्वों से उस योग को घटाने के बराबर है। यह एंडीड S सकारात्मक (अर्ध) निश्चित करता है, लेकिन ...
tnnphns

... लेकिन यह तरीका इस मायने में बहुत बुरा है कि परिणामी यूक्लिडियन डेटा एक्स यूक्लिडियन दूरियों का उत्पादन करता है D_new जो मूल असमानताओं से बहुत दूर हैं। इसलिए, मैं आपके चरण 5 की सिफारिश नहीं करूंगा। यह सिर्फ नकारात्मक सेट करने के लिए बहुत बेहतर लगता है 0 के लिए eigenvalues ​​और चरण 7 पर जाएं। या, थोड़ा और अधिक ठीक दृष्टिकोण: नकारात्मक eigenvalues ​​को 0 पर सेट करें, सकारात्मक eigenvalues ​​को फिर से सेट करें ताकि वे मूल (= ट्रेस (S)) हो, और फिर चरण 7 पर जाएं। ऐसा प्रतीत होता है मेरे लिए।
ttnphns

2

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


2

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


1

क्लस्टरिंग और एमडीएस के संबंध में मैं निम्नलिखित संसाधनों का सुझाव दूंगा:

  • न्यूमेरिकल इकोलॉजी (पियरे लिजेंड और लुई लीजेंड्रे): http://www.sciencedirect.com/science/bookseries/01678892/20 या http://tinyurl.com/cgrdfqk (google books) - अध्याय 'इकोना समानता' पर
  • क्लस्टर विश्लेषण (ब्रायन एस। एविट, सबाइन लैंडौ, मोवेन लेसे, डैनियल स्टाल): http://tinyurl.com/bld7k8h (google books) - अध्याय 'निकटता का मापन' पर
  • ओहियो विश्वविद्यालय में प्रोफेसर ब्रायन सी। मैकार्थी द्वारा कोर्स 'बायोस्टैटिस्टिक्स- II, मल्टीवेरेट मेथड्स': http://www.ohio.edu/plantbio/staff/mccarthy/multivariate/multivariate.htm

ये संदर्भ बाइनरी और निरंतर डेटा के लिए समानता और दूरी कार्यों (निकटता उपायों) के विषयों को भी अच्छी तरह से कवर करते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.