मिश्रित डेटा को यूक्लिडियन-आधारित क्लस्टरिंग एल्गोरिदम के लिए एक समस्या क्यों है?


21

अधिकांश शास्त्रीय क्लस्टरिंग और डायमेंशन कम करने वाले एल्गोरिदम (पदानुक्रमित क्लस्टरिंग, प्रिंसिपल कंपोनेंट एनालिसिस, के-मीन्स, सेल्फ-ऑर्गनाइजिंग मैप्स ...) विशेष रूप से न्यूमेरिक डेटा के लिए डिज़ाइन किए गए हैं, और उनके इनपुट डेटा को यूक्लिडियन स्पेस में पॉइंट के रूप में देखा जाता है।

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

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

मेरा सवाल है: हम मिश्रित चरों पर यूक्लिडियन दूरी का उपयोग क्यों नहीं कर सकते? या ऐसा करना क्यों बुरा है? हम सिर्फ डमीज को क्यों नहीं बदल सकते हैं ?

यह वास्तव में आसान है, और कभी नहीं किया है, इसलिए मुझे लगता है कि यह बहुत गलत है, लेकिन क्या कोई मुझे बता सकता है कि क्यों? और / या मुझे कुछ रेफ दे? धन्यवाद


5
आप उन्हें यूक्लिडियन स्थान में बिंदुओं के रूप में प्रतिनिधित्व करने के लिए अपने डेटा के साथ अपनी पसंद का सब कुछ कर सकते हैं, लेकिन सुविधाओं का अर्थ दूर हो सकता है। समस्या माप के पैमाने के स्तर पर है, अंतरिक्ष के स्तर पर नहीं। साधारण पैमाने पर ठीक से मात्रा निर्धारित की जानी चाहिए, डमी कोडिंग मदद नहीं करेगा। असममित अर्थ (वर्तमान बनाम अनुपस्थित) के द्विआधारी पैमाने स्वाभाविक रूप से यूक्लिडियन दूरी की तुलना में अन्य दूरी मीट्रिक के लिए कहते हैं; इसके अलावा प्रक्षेप की समस्या (कोई ठोस मतलब हां और ना के बीच मौजूद हो सकता है)।
ttnphns

(प्रतियोगिता।) यूक्लिडियन अंतरिक्ष दो चीजों के बारे में है: यह निरंतर (ठीक दाने वाला) है और यह किसी भी दिशा की अनुमति देता है। सभी डेटा प्रकारों को डेटा की प्रकृति से उत्पन्न होने वाली असमानताओं को समायोजित करने के लिए इस तरह के स्थान की आवश्यकता या शुभकामनाएं नहीं हैं।
ttnphns

पदानुक्रमित क्लस्टरिंग किसी भी प्रकार की समानता, बीटीडब्ल्यू के साथ काम करता है। (वार्ड जैसे कुछ मामलों को छोड़कर) - विशेष रूप से, आप उदाहरण के लिए Jaccard गुणांक का उपयोग कर सकते हैं जो कुछ श्रेणीबद्ध / द्विआधारी मामलों के लिए सार्थक है।
ऐनी-मूस -रिटनेट मोनिका

जवाबों:


5

यह कुछ गणना करने में सक्षम नहीं होने के बारे में नहीं है

कुछ सार्थक को मापने के लिए बहुत दूर का उपयोग किया जाता है । यह बहुत पहले से ही वर्गीकृत डेटा के साथ विफल हो जाएगा। यदि यह कभी भी एक से अधिक वेरिएबल के साथ काम करता है, तो ...

यदि आपके पास जूता आकार और शरीर द्रव्यमान का गुण है, तो यूक्लिडियन दूरी बहुत मायने नहीं रखती है। यह अच्छा है जब x, y, z दूरियां हैं। फिर यूक्लिडियन दूरी बिंदुओं के बीच दृष्टि दूरी की रेखा है।

अब अगर आप डमी-एनकोड करते हैं, तो इसका क्या अर्थ है?

इसके अलावा, यूक्लिडियन दूरी का कोई मतलब नहीं है जब आपका डेटा असतत हो।

यदि केवल पूर्णांक x और y मान मौजूद हैं, तो यूक्लिडियन दूरी अभी भी गैर-पूर्णांक दूरी प्राप्त करेगी। वे डेटा पर वापस मैप नहीं करते हैं। इसी प्रकार, डमी-एन्कोडेड चर के लिए, दूरी डमी चरों की मात्रा में वापस नहीं आएगी ...

जब आप उदाहरण के लिए k- साधन क्लस्टरिंग का उपयोग करने की योजना बनाते हैं, तो यह केवल दूरी के बारे में नहीं है, बल्कि इसका मतलब कंप्यूटिंग के बारे में है । लेकिन डमी-एन्कोडेड चर पर कोई उचित मतलब नहीं है, वहाँ है?

अंत में, आयामीता का अभिशाप है । यूक्लिडियन दूरी को तब कम करने के लिए जाना जाता है जब आप चर की संख्या बढ़ाते हैं। डमी-एन्कोडेड वैरिएबल को जोड़ने का मतलब है कि आप काफी तेजी से दूरी के विपरीत खो देते हैं। सब कुछ सब कुछ के समान है, क्योंकि एक एकल डमी चर सभी अंतर बना सकता है।


3

इन मीट्रिक आधारित क्लस्टरिंग समस्याओं के केंद्र में प्रक्षेप का विचार है।

आप जिस भी विधि का हवाला देते हैं, उसे लें और हमें एक सतत चर जैसे वजन पर विचार करें। आपके पास 100kg है और आपके डेटा में 10kg है। जब आप एक नया 99 किग्रा देखते हैं, तो मीट्रिक आपको 100 किग्रा तक पहुंचने में सक्षम करेगा --- भले ही आपने इसे कभी नहीं देखा हो। दुर्भाग्य से, असतत डेटा के लिए कोई प्रक्षेप मौजूद नहीं है।

इस सवाल का एक और तर्क यह है कि ऐसा करने का कोई प्राकृतिक तरीका नहीं है। आप R में 3 मान निर्दिष्ट करना चाहते हैं और उन्हें प्रत्येक जोड़ी के बीच समान-दूरी बनाना चाहते हैं, यह असंभव होगा। यदि आप उन्हें अलग-अलग श्रेणियों में असाइन करते हैं और कहते हैं कि चलो पीसीए कहते हैं, तो आप उस जानकारी को खो देते हैं जो वे वास्तव में उसी श्रेणी में दर्शाते हैं।


1
धन्यवाद! मैं प्रक्षेप समस्या को समझता हूं, लेकिन कई अनुप्रयोगों में यह कोई समस्या नहीं है (उदाहरण के लिए जब हम जानते हैं कि बसें हरे, लाल या नीले हैं, और कोई अन्य रंग हमारे डेटासेट में मौजूद नहीं है)। और मुझे लगता है कि डमी चर को मानकीकृत करने के आसान तरीके हैं ताकि प्रत्येक श्रेणीगत चर में प्रत्येक संख्यात्मक चर के समान "वजन" हो (यदि संख्यात्मक चर भी पहले से मानकीकृत थे)। या अलग-अलग चर को मनमाने ढंग से वजन करने के लिए ...
जुबां

0

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

इसे संभालने का एक तरीका उन्हें नई सुविधाएँ (कॉलम) बनाना है। प्रत्येक अलग मूल्य के लिए आप एक नई बाइनरी सुविधा बनाते हैं और इसे सही / गलत पर सेट करते हैं (दूसरे शब्दों में बाइनरी मानों को सांकेतिक शब्दों में बदलना और प्रत्येक बिट को एक स्तंभ बनाते हैं)। सुविधाओं के इस नए सेट से प्रत्येक डेटा पैटर्न के लिए, केवल एक ही सुविधा का मूल्य 1 और अन्य सभी 0. होगा। लेकिन यह आमतौर पर एक से अधिक सुविधाओं के 1 से 1 सेंटीमीटर के मान को असाइन करने के लिए प्रशिक्षण एल्गोरिथ्म को बंद नहीं करता है। यह टोक़ व्याख्या मुद्दों का कारण हो सकता है क्योंकि यह डेटा डोमेन में कोई मतलब नहीं है।

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

और टोर्कास्ट है कि आप अलग-अलग प्रकृति या माप की इकाई या अलग-अलग मानों की सुविधाओं का उपयोग करते हैं तो आपको हमेशा मानों को सामान्य करना चाहिए।

/programming/19507928/growing-self-organizing-map-for-mixed-type-data/19511894#19511894

/programming/13687256/is-it-right-to-normalize-data-and-or-weight-vectors-in-a-som/13693409#13693409


यही कारण है कि मैं श्रेणीबद्ध चर के लिए "डमी एन्कोडिंग" से मतलब था, लेकिन धन्यवाद। और btw मैं आदेश दिए गए कारकों ("क्षमता वर्ग") के बारे में आपके बयान से सहमत नहीं हूं क्योंकि उदाहरण के लिए चुनने का कोई तरीका नहीं है। (1,2,3) या (1,2,100), जो कि दूरी-आधारित एल्गोरिथ्म के लिए बहुत बड़ा अंतर होगा।
जुबां

0

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

कारक स्तरों को 0/1 मान के रूप में प्रस्तुत करना केवल एक विश्लेषणात्मक समीकरण में समझ में आता है, जैसे कि एक रेखीय मॉडल (यह उन लोगों के लिए एक आसान अवधारणा है जो सांख्यिकीय मॉडल के गुणांक की व्याख्या कर सकते हैं)। एक डमी वैरिएबल में, अंतर्निहित श्रेणीबद्ध चर की जानकारी बिट्स के क्रम में संग्रहीत की जाती है। एक इनपुट स्पेस को इनपुट स्पेस में मैप करने के लिए आयामों के रूप में उन बिट्स का उपयोग करते समय (जैसा कि समानता / दूरी मैट्रिक्स के मामले में), बिट्स के क्रम में जानकारी पूरी तरह से खो जाती है।


1
धन्यवाद! वास्तव में, मेरा कहना है कि डमी-एन्कोडेड श्रेणीबद्ध वैरिएबल एक निश्चित दूरी में (एक निश्चित) अर्थ बनाते हैं: यदि मान अलग-अलग हैं तो यह 2 को वर्ग दूरी में जोड़ता है, यदि यह 0. नहीं जोड़ता है और आप विभिन्न में डमी को सामान्य कर सकते हैं तरीकों, श्रेणियों की संख्या या उनकी संभावनाओं को ध्यान में रखना।
जुबां
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.