Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> प्रोग्रामिंग

एन्ट्रॉपी-आधारित विवेकीकरण क्या है?

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

विशिष्ट विवेकीकरण A के लिए एक अवधारणा पदानुक्रम बनाता है। मान लीजिए D में एक विशेषता समूह और एक वर्ग-लेबल विशेषता द्वारा वर्णित डेटा टपल्स शामिल हैं। वर्ग-लेबल विशेषता प्रति टपल वर्ग डेटा का समर्थन करती है। एक सेट के भीतर विशेषता A के एन्ट्रॉपी-आधारित विवेकीकरण के लिए मूल दृष्टिकोण इस प्रकार है:

A के प्रत्येक मान को A के लिए संभावित अंतराल सीमा या विभाजन-बिंदु (संकेतित विभाजन बिंदु) के रूप में माना जा सकता है। यानी, A के लिए एक विभाजन-बिंदु D में टपल्स को दो उपसमुच्चय में विभाजित कर सकता है जो शर्तों A ≤ विभाजन बिंदु और A > विभाजन बिंदु को क्रमशः पूरा करते हैं, जिससे एक बाइनरी विवेकीकरण बनता है।

एन्ट्रॉपी-आधारित विवेकीकरण टपल्स के वर्ग लेबल के बारे में डेटा का उपयोग करता है। यह एन्ट्रॉपी-आधारित विवेकीकरण के पीछे की अंतर्ज्ञान को परिभाषित करने के लिए, इसे वर्गीकरण पर एक झलक लेनी चाहिए। मान लीजिए D में टपल्स को विशेषता A और कुछ विभाजन-बिंदु पर विभाजन करके परिभाषित करना आवश्यक है।

उदाहरण के लिए, यदि हमारे पास दो वर्ग थे, तो यह आशा कर सकता है कि कुछ टपल्स, जैसे, वर्ग C1 एक विभाजन में गिरेंगे, और वर्ग C2 के कुछ टपल्स दूसरे विभाजन में गिरेंगे। लेकिन यह असंभव है। उदाहरण के लिए, पहला विभाजन C1 के कई टपल्स को शामिल कर सकता है, लेकिन C2 के भी कुछ। इस मात्रा को A द्वारा विभाजन के आधार पर D में एक टपल को परिभाषित करने के लिए अपेक्षित डेटा आवश्यकता के रूप में जाना जाता है। यह द्वारा दिया जाता है:

$$\mathrm{Info_A(D)\:=\:\frac{\mid\:D_1\:\mid}{\mid\:D\:\mid}Entrophy(D_1)\:+\:\frac{\mid\:D_2\:\mid}{\mid\:D\:\mid}Entrophy(D_2)}$$

जहां D1 और D2 क्रमशः शर्तों A ≤ विभाजन बिंदु और A > विभाजन बिंदु को ताज़ा करने वाले D में टपल्स से मेल खाते हैं; |D| D में टपल्स की संख्या है, आदि। एक दिए गए सेट के लिए एन्ट्रॉपी फ़ंक्शन की गणना सेट में टपल्स के वर्ग वितरण के आधार पर की जाती है।

उदाहरण के लिए, m वर्ग दिए गए, C1, C2... Cm, D1 की एन्ट्रॉपी है:

$$\mathrm{Entrophy(D_1)}\:=\:-\displaystyle\sum\limits_{i=1}^m P_i{\log_{2}(P_i)}$$

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

  1. - C# 4.0 में Tuples क्या हैं?

    C# में Tuples (टपल्स) टपल एक हल्का डेटा स्ट्रक्चर है जो अलग-अलग टाइप्स के मानों का निश्चित-आकार अनुक्रम रखता है। C# 4.0 में System.Tuple<T1, T2, ...> क्लासेस पेश की गईं। C# 7+ में वैल्यू टपल्स (ValueTuple) और टपल सिंटैक्स शुगर जोड़ा गया। पुराना सिंटैक्स (C# 4.0 - Reference Type Tuple) using S

  1. - पायथन में नेम्ड टुपल्स क्या हैं?

    एक टुपल ऑब्जेक्ट का उपयोग आमतौर पर कॉमा-सेपरेटेड फील्ड वैल्यूज को पैरेंथेसिस में रखकर डेटा स्ट्रक्चर परिभाषित करने के लिए किया जाता है। टुपल में प्रत्येक फील्ड की वैल्यू इंडेक्स द्वारा पहचानी जाती है। >>> student = (1, Ravi, 23, 546) >>> rollno = student[0] >>> name = stu

  1. - पायथन टपल बनाने का सही सिंटैक्स क्या है?

    पायथन में, टपल ऑब्जेक्ट आइटम्स का एक अपरिवर्तनीय संग्रह है, जरूरी नहीं कि एक ही प्रकार का हो। आइटम्स कॉमा से अलग किए जाते हैं और पैरेंथेसिस के अंदर रखे जाते हैं, हालांकि वे वैकल्पिक हैं।>>> T1 = (1, one, 3.45, [1,2,3])\n>>> T2 = 1, 2, 3, 4खाली टपल ऑब्जेक्ट पैरेंथेसिस के अंदर कुछ न