हालांकि, मशीन लर्निंग के लिए डेटा तैयार करना और सुविधा इंजीनियरिंग कोर्स में सामान्य डेटा तैयार करना शामिल है, लेकिन यह कोर्स क्लस्टरिंग के लिए खास तैयारी पर ध्यान देता है.
क्लस्टरिंग में, आप उन उदाहरणों के लिए सभी सुविधा डेटा को अंकों में जोड़कर, दो उदाहरणों के बीच समानता का हिसाब लगाते हैं. सुविधा डेटा को जोड़ने के लिए डेटा का लेवल एक जैसा होना चाहिए. इस सेक्शन में, सामान्य आंकड़ों को बदलने, उनका रूप बदलने, और उनका इस्तेमाल करने के बारे में बताया गया है. साथ ही, इस बात की भी जानकारी दी गई है कि किसी भी डेटा डिस्ट्रिब्यूशन को बदलने के लिए, क्वानटाइल सबसे डिफ़ॉल्ट विकल्प क्यों होते हैं. डिफ़ॉल्ट विकल्प होने से, आप डेटा डिस्ट्रिब्यूशन की जांच किए बिना अपना डेटा बदल सकते हैं.
डेटा सामान्य बनाना
आप डेटा को सामान्य बनाकर, कई सुविधाओं का डेटा एक ही साइज़ में बदल सकते हैं. खास तौर पर, सामान्य डेटा डिस्ट्रिब्यूशन को प्रोसेस करने के लिए, नॉर्मलाइज़ेशन का इस्तेमाल करना सबसे सही होता है. गाज़ियन डिस्ट्रिब्यूशन. सामान्य डेटा की तुलना में, सामान्य नतीजों का हिसाब लगाने के लिए, बहुत कम डेटा की ज़रूरत होती है. z-स्कोर की गिनकर डेटा को सामान्य बनाएं:
\[x'=(x-\mu)/\sigma\\ \begin{align*} \text{where:}\quad \mu &= \text{mean}\\ \sigma &= \text{standard deviation}\\ \end{align*} \]
आइए, उदाहरण के तौर पर दिए गए उदाहरणों को बिना सामान्य बनाने के मिलते-जुलते शब्दों से देखते हैं. पहली इमेज में, आपको लगता है कि लाल रंग, नीले रंग से लाल रंग से ज़्यादा मिलता-जुलता है. हालांकि, x और y-ऐक्सिस की सुविधाओं का साइज़ एक जैसा नहीं है. इसलिए, देखा गया समानता, बड़े पैमाने पर नहीं मिले डेटा का आर्टफ़ैक्ट हो सकता है. z-स्कोर का इस्तेमाल करने के बाद, सभी सुविधाओं का स्केल एक जैसा होता है. अब, आपने देखा है कि लाल रंग काफ़ी हद तक पीले रंग से मिलता-जुलता है. इस प्रकार, डेटा को सामान्य बनाने के बाद, आप ज़्यादा सटीक रूप से गणना कर सकते हैं.
खास जानकारी में, नीचे दी गई कोई भी बात सही होने पर नॉर्मलाइज़ेशन लागू करें:
- आपके डेटा में गॉसियन डिस्ट्रिब्यूशन है.
- आपके डेटा सेट में, क्वानटाइल बनाने के लिए ज़रूरी डेटा नहीं है.
लॉग ट्रांसफ़ॉर्म का इस्तेमाल करके
कुछ मामलों में, डेटा सेट पावर डिस्ट्रिब्यूशन के मुताबिक होता है, जो डेटा के निचले हिस्से में इकट्ठा होता है. इमेज 2 में, लाल रंग के मुकाबले लाल रंग, पीले रंग से ज़्यादा करीब है.
लॉग ट्रांसफ़ॉर्म का इस्तेमाल करके, पावर-लॉ डिस्ट्रिब्यूशन को प्रोसेस करें. इमेज 3 में, लॉग ट्रांसफ़ॉर्म आसानी से डिस्ट्रिब्यूशन बनाता है और लाल रंग, पीले रंग से ज़्यादा करीब होता है.
क्वांटाइल का इस्तेमाल करना
नॉर्मलाइज़ेशन और लॉग, खास डेटा डिस्ट्रिब्यूशन को बदल देते हैं. अगर डेटा गॉसियन या पावर-लॉ डिस्ट्रिब्यूशन के मुताबिक नहीं है, तो क्या होगा? क्या डेटा इकट्ठा करने के किसी आम तरीके पर लागू होता है?
आइए, इस डिस्ट्रिब्यूशन को पहले से प्रोसेस करने की कोशिश करें.
आसान बात यह है कि अगर दोनों उदाहरणों के बीच कुछ ही उदाहरण हैं, तो ये दो उदाहरण एक जैसे हैं, फिर चाहे उनकी वैल्यू कुछ भी हो. इसके उलट, अगर दो उदाहरणों के बीच कई उदाहरण हैं, तो दोनों उदाहरण एक जैसे नहीं हैं. इसलिए, उनके बीच उदाहरणों की संख्या बढ़ने पर दो उदाहरणों के बीच समानता घट जाती है.
डेटा को सामान्य बनाने से डेटा का डिस्ट्रिब्यूशन आसान हो जाता है, क्योंकि नॉर्मलाइज़ेशन एक लीनियर बदलाव होता है. लॉग ट्रांसफ़ॉर्म लागू करने पर यह नहीं पता चलता कि समानता कैसे काम करती है, जैसा कि नीचे दिए गए पांचवें डायग्राम में दिखाया गया है.
इसके बजाय, डेटा को अंतराल में बांटें, जहां हर अंतराल में उदाहरणों की बराबर संख्या होती है. इन इंटरवल सीमाओं को क्वांटाइल कहा जाता है.
यह तरीका अपनाकर, अपने डेटा को क्वानटाइल में बदलें:
- इंटरवल की संख्या तय करें.
- अंतराल इस तरह परिभाषित करें कि हर अंतराल के उदाहरणों की संख्या बराबर हो.
- हर उदाहरण को इंटरवल के इंडेक्स से बदलें.
- इंडेक्स की वैल्यू को [0,1] पर स्केल करके, इंडेक्स को अन्य सुविधा के डेटा की रेंज पर लाएं.
डेटा को क्वानटाइल में बदलने के बाद, दो उदाहरणों के बीच समानता उन दो उदाहरणों के उदाहरणों की संख्या के उलट होती है. या, गणित के हिसाब से, जहां डेटासेट में “x” का कोई उदाहरण है:
- \(sim(A,B) \approx 1 − | \text{prob}[x > A] − \text{prob}[x > B] |\)
- \(sim(A,B) \approx 1 − | \text{quantile}(A) − \text{quantile}(B) |\)
डेटा को बदलने के लिए, क्वांटाइल सबसे अच्छे विकल्प हैं. हालांकि, सामान्य डेटा डिस्ट्रिब्यूशन के भरोसेमंद इंडिकेटर बनाने के लिए, आपको बहुत ज़्यादा डेटा की ज़रूरत होगी. बुनियादी नियम के मुताबिक, \(n\) क्वांटाइल बनाने के लिए, आपके पास कम से कम \(10n\) उदाहरण होने चाहिए. अगर आपके पास ज़रूरत के मुताबिक डेटा नहीं है, तो इसे सामान्य बनाए रखें.
अपनी समझ को समझना
नीचे दिए गए सवालों के लिए, मान लें कि आपके पास क्वानटाइल बनाने के लिए ज़रूरी डेटा है.
पहला सवाल
- डेटा डिस्ट्रिब्यूशन गॉसियन है.
- आपके पास डेटा के बारे में अहम जानकारी है. इससे यह पता चलता है कि डेटा को बिना किसी बदलाव के बदला नहीं जाना चाहिए. इस वजह से, आप क्वानटाइल के इस्तेमाल से बच सकते हैं. ऐसे में, आप डेटा को सामान्य बनाने का विकल्प चुन सकते हैं.
दूसरा सवाल
डेटा मौजूद नहीं है
अगर आपके डेटासेट में ऐसे उदाहरण हैं जिनमें किसी सुविधा के लिए वैल्यू मौजूद नहीं हैं, लेकिन ऐसे उदाहरण बहुत कम मिलते हैं, तो आप इन उदाहरणों को हटा सकते हैं. अगर ऐसे उदाहरण अक्सर इस्तेमाल होते हैं, तो हमारे पास इस सुविधा को पूरी तरह से हटाने का विकल्प है. इसके अलावा, हमारे पास मशीन लर्निंग मॉडल का इस्तेमाल करके, दूसरे उदाहरणों से भी ऐसी वैल्यू का अनुमान लगाने का विकल्प है जो मौजूद नहीं हैं. उदाहरण के लिए, मौजूदा सुविधा के डेटा पर आधारित रिग्रेशन मॉडल का इस्तेमाल करके, न्यूमेरिक डेटा का अनुमान लगाया जा सकता है.