2011-08-28 7 views
8

मैं के-मीन्स के साथ कैनोपी क्लस्टरिंग एल्गोरिदम लागू करने की कोशिश कर रहा हूं। मैंने कुछ खोज ऑनलाइन कर दी हैं जो आपके शुरुआती शुरुआती बिंदुओं को के-साधनों में खिलाने के लिए कैनोपी क्लस्टरिंग का उपयोग करने के लिए कहती हैं, समस्या यह है कि कैनोपी क्लस्टरिंग में, आपको चंदवा के लिए 2 थ्रेसहोल्ड मान निर्दिष्ट करने होंगे: टी 1 और टी 2, जहां आंतरिक दहलीज में अंक दृढ़ता से उस चंदवा से बंधे होते हैं और व्यापक सीमा में बिंदु उस चंदवा से कम बंधे होते हैं। इन दहलीज, या चंदवा केंद्र से दूरी कैसे निर्धारित की जाती है?कैनोपी क्लस्टरिंग के लिए टी 1 और टी 2 थ्रेसहोल्ड मान कैसे चुनें?

समस्या संदर्भ:

समस्या मैं हल करने के लिए कोशिश कर रहा हूँ

, मैं 50 के बारे में सेट आकारों के साथ इस तरह के [1,30] या [1250] के रूप में संख्या का एक सेट है वहाँ डुप्लिकेट तत्वों को हो सकता है और वे फ्लोटिंग पॉइंट नंबर भी हो सकते हैं, जैसे 8, 17.5, 17.5, 23, 66, ... मैं इष्टतम क्लस्टर, या संख्याओं के सेट के सबसेट ढूंढना चाहता हूं।

तो, यदि के-साधनों के साथ कैनोपी क्लस्टरिंग एक अच्छी पसंद है, तो मेरे प्रश्न अभी भी खड़े हैं: आप टी 1, टी 2 मान कैसे प्राप्त करते हैं? यदि यह एक अच्छा विकल्प नहीं है, तो क्या उपयोग करने के लिए एक बेहतर, सरल लेकिन प्रभावी एल्गोरिदम है?

+0

यहां एक और समान प्रश्न है http://stats.stackexchange.com/questions/13895/how-do-i-algorithmically-determine-values-of-t1-t2-for-canopy-clustering – cyraxjoe

+0

क्या आपके पास कोई है इसके साथ भाग्य अभी तक? मैं के-मीन्स को खिलाने के लिए प्रारंभिक क्लस्टर सेट खोजने के लिए कैनोपी क्लस्टरिंग का उपयोग करना चाहता हूं। मैं यहां वर्णित अनुसार "जंप विधि" का उपयोग कर सकता हूं [http://en.wikipedia.org/wiki/Determining_the_number_of_clusters_in_a_data_set) (जो विधि के समान लगता है @rpd उसके उत्तर में वर्णित है), लेकिन यदि आपको मिला है टी 1 और टी 2 निर्धारित करने का एक अच्छा तरीका मैं इसके बजाय कैनोपी क्लस्टरिंग का उपयोग करना चाहता हूं। – JesseBuesking

उत्तर

2

शायद मूर्खतापूर्ण, मुझे स्पेक्ट्रल-अनुमान के मामले में समस्या दिखाई देती है। मान लीजिए मेरे पास 10 वैक्टर हैं। मैं सभी जोड़ों के बीच की दूरी की गणना कर सकता हूं। इस मामले में मुझे 45 ऐसी दूरी मिल जाएगी। उन्हें विभिन्न दूरी श्रृंखलाओं में हिस्टोग्राम के रूप में प्लॉट करें। जैसे 10 दूरी 0.1 और 0.2 के बीच है, 5 0.2 और 0.3 आदि के बीच है और आपको यह पता चलता है कि वैक्टरों के बीच की दूरी कैसे वितरित की जाती है। इस जानकारी से आप टी 1 और टी 2 चुन सकते हैं (उदाहरण के लिए उन्हें चुनें ताकि आप दूरी सीमा को कवर कर सकें जो सबसे अधिक आबादी वाला है)।

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

2

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

संबंधित मुद्दे