महत्वपूर्ण विशेषताओं को कैसे निर्दिष्ट करें?


15

कई डेटा स्रोतों से बना शिथिल संरचित डेटा (जैसे वेब टेबल / लिंक्ड ओपन डेटा) का एक सेट मान लें। डेटा के बाद कोई सामान्य स्कीमा नहीं है और प्रत्येक स्रोत मूल्यों का वर्णन करने के लिए समानार्थी विशेषताओं का उपयोग कर सकता है (उदाहरण के लिए "राष्ट्रीयता" बनाम "जन्मजात")।

मेरा लक्ष्य कुछ "महत्वपूर्ण" विशेषताओं को खोजना है जो किसी भी तरह से उन संस्थाओं को "परिभाषित" करते हैं जो वे वर्णन करते हैं। इसलिए, जब मुझे ऐसी विशेषता के लिए समान मूल्य मिलेगा, तो मुझे पता चलेगा कि दो विवरण एक ही इकाई (जैसे एक ही व्यक्ति) के बारे में सबसे अधिक संभावना है।

उदाहरण के लिए, विशेषता "अंतिम नाम" विशेषता "राष्ट्रीयता" की तुलना में अधिक भेदभावपूर्ण है।

मैं (सांख्यिकीय रूप से) ऐसी विशेषताएं कैसे पा सकता हूं जो दूसरों की तुलना में अधिक महत्वपूर्ण हैं?

एक भोली समाधान प्रत्येक विशेषता के मूल्यों के औसत आईडीएफ को लेना होगा और इसे विशेषता का "महत्व" कारक बनाना होगा। एक समान दृष्टिकोण यह गिनना होगा कि प्रत्येक विशेषता के लिए कितने भिन्न मूल्य दिखाई देते हैं।

मैंने मशीन लर्निंग में टर्म फीचर, या विशेषता चयन को देखा है, लेकिन मैं शेष विशेषताओं को नहीं छोड़ना चाहता, मैं केवल सबसे महत्वपूर्ण लोगों को उच्च भार डालना चाहता हूं।

जवाबों:


16

एक संभावित समाधान प्रत्येक विशेषता से जुड़ी सूचना लाभ की गणना करना है :

जानकारी हासिल करें

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

ऐसे अभिकलन के लिए कार्यान्वयन उपलब्ध हैं। निर्णय के पेड़ आमतौर पर सबसे अच्छी जानकारी प्राप्त करने के साथ सुविधाओं पर अपने चयन का आधार बनाते हैं। आप इन महत्वपूर्ण वस्तुओं को खोजने के लिए परिणामी पेड़ संरचना का उपयोग कर सकते हैं ।


क्या यह एन्ट्रापी है? मैं उलझन में हूं।
वैलेंटाइन

देर से उत्तर के लिए क्षमा करें। करने के लिए लाभ के बारे में जानकारी करने के लिए है को कम समग्र एन्ट्रापी; इसलिए वे मूल रूप से एक ही अवधारणा हैं। "एन्ट्रॉपी" और "सूचना लाभ" की परिभाषा पर एक नज़र डालें
रुबेंस

7

वास्तव में यहाँ उत्तर देने के लिए एक से अधिक प्रश्न हैं:

  1. योजनाबद्ध / ढीले / अनुपस्थित डेटा पर कैसे काम करें
  2. किसी व्यक्ति को लेबल कैसे करें (मैं क्या अनसुना समझ रहा हूं) से और एक पहचानकर्ता बनाएं
  3. अपने सिस्टम को कैसे प्रशिक्षित किया जाए ताकि यह आपको बता सके कि व्यक्ति को पहचानने के लिए आपको किन विशेषताओं का उपयोग करना चाहिए

जैसा कि रूबेन्स ने उल्लेख किया है, आप निर्णय के पेड़ के तरीकों का उपयोग कर सकते हैं , विशेष रूप से रैंडम फॉरेस्ट की गणना, सूचना लाभ के आधार पर सबसे महत्वपूर्ण विशेषताओं की गणना करने के लिए यदि आपने पहले से ही किसी व्यक्ति को लेबल करने के तरीके की पहचान करने का तरीका ढूंढ लिया है।

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

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


2

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

यदि आपके पास गैर-सूचीबद्ध डेटा है, तो प्रिंसिपल कंपोनेंट एनालिसिस (पीसीए) की जाँच करें ।


0

बस इसके लिए, लगभग 5 वर्षों के बाद, मैंने सोचा कि मैं इस समस्या को हल करने के लिए अपने पीएचडी में जो वास्तव में उपयोग करता हूं, वह साझा कर सकता हूं, जो कि नया नहीं है, या मेरे पीएचडी का योगदान है, अगर यह किसी और की मदद करता है।

जो उपाय हमने महत्वपूर्ण विशेषताओं के चयन के लिए उपयोग किया है, वह है हार्मोनिक माध्य (उर्फ एफ-माप) supportऔर के बीच discriminability

विशेषता पी का समर्थन सहज ज्ञान युक्त है कि हमारे डेटासेट में कितनी बार संस्थाओं में इस विशेषता के लिए मान हैं:

support(p) = |instances(p)|/ |D|, 

जहां उदाहरण (p) उन संस्थाओं का समूह है, जिनका p, और D के लिए मान है डेटासेट डी में संस्थाओं की संख्या है।

discriminability(p) = |values(p)| / |instances(p)|, 

जहाँ मान (p) एक सेट है (अलग, क्योंकि यह एक सेट है) मान जो विशेषता p हमारे डेटासेट में हो सकते हैं। यह वास्तव में इस विशेषता के लिए मूल्य है कि संस्थाओं की संख्या से सामान्यीकृत है।

दूसरे शब्दों में, समर्थन उस आवृत्ति को मापता है जिसमें डेटासेट में पी दिखाई देता है और भेदभाव यह बताता है कि यह "कुंजी" होने के कितने करीब है।

अधिक जानकारी के लिए, आप मेरे शोध प्रबंध (खंड 4.3.2) को पढ़ सकते हैं , या आप हमारे EDBT 2019 के पेपर (धारा 2) में एक छोटा संस्करण पा सकते हैं ।

आपके रचनात्मक जवाब के लिए आप सभी का धन्यवाद!

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