मूल्यों की एक श्रेणी को मूल्यों की मानकीकृत श्रेणी में परिवर्तित करने की प्रक्रिया को सामान्यीकरण के रूप में जाना जाता है। ये मान -1 से +1 या 0 से 1 के बीच हो सकते हैं। डेटा को घटाव और भाग की मदद से भी सामान्यीकृत किया जा सकता है।
इनपुट के रूप में लर्निंग एल्गोरिथम को खिलाया गया डेटा सुसंगत और संरचित रहना चाहिए। मूल्यों का प्रभावी ढंग से अनुमान लगाने के लिए इनपुट डेटा की सभी विशेषताएं एकल पैमाने पर होनी चाहिए। लेकिन वास्तविक दुनिया में, डेटा असंरचित होता है, और अधिकांश समय, समान पैमाने पर नहीं होता है।
यह तब होता है जब सामान्यीकरण तस्वीर में आता है। यह सबसे महत्वपूर्ण डेटा-तैयारी प्रक्रिया में से एक है।
यह इनपुट डेटासेट के कॉलम के मानों को समान पैमाने पर बदलने में मदद करता है।
सामान्यीकरण की प्रक्रिया के दौरान, मूल्यों की श्रेणी को गैर-विकृत होना सुनिश्चित किया जाता है।
नोट - मशीन लर्निंग एल्गोरिदम को फीड किए गए सभी इनपुट डेटासेट को सामान्यीकृत नहीं करना पड़ता है। सामान्यीकरण की आवश्यकता केवल तभी होती है जब किसी डेटासेट में सुविधाओं का मान पूरी तरह से भिन्न होता है।
सामान्यीकरण विभिन्न प्रकार के होते हैं -
- न्यूनतम-अधिकतम सामान्यीकरण
- Z सामान्यीकरण
- इकाई वेक्टर सामान्यीकरण
आइए समझते हैं कि L1 सामान्यीकरण कैसे काम करता है।
कम से कम निरपेक्ष विचलन के रूप में भी जाना जाता है, यह डेटा को इस तरह बदलता है कि निरपेक्ष मानों का योग प्रत्येक पंक्ति में 1 रहता है।
आइए देखें कि पायथन में स्किकिट लर्न का उपयोग करके L1 सामान्यीकरण कैसे लागू किया जा सकता है -
उदाहरण
import numpy as np from sklearn import preprocessing input_data = np.array( [[34.78, 31.9, -65.5],[-16.5, 2.45, -83.5],[0.5, -87.98, 45.62],[5.9, 2.38, -55.82]] ) data_normalized_l1 = preprocessing.normalize(input_data, norm='l1') print("\nL1 normalized data is \n", data_normalized_l1)
आउटपुट
L1 normalized data is [[ 0.26312604 0.24133757 -0.49553639] [-0.16105417 0.0239141 -0.81503172] [ 0.00372856 -0.65607755 0.34019389] [ 0.09204368 0.03712949 -0.87082683]]
स्पष्टीकरण
-
आवश्यक पैकेज आयात किए जाते हैं।
-
इनपुट डेटा Numpy लाइब्रेरी का उपयोग करके जेनरेट किया जाता है।
-
'प्रीप्रोसेसिंग' वर्ग में मौजूद 'नॉर्मलाइज़' फंक्शन का इस्तेमाल डेटा को नॉर्मल करने के लिए किया जाता है।
-
सामान्यीकरण के प्रकार को 'l1' के रूप में निर्दिष्ट किया गया है।
-
इस तरह, सरणी में कोई भी डेटा सामान्यीकृत हो जाता है और प्रत्येक पंक्ति का योग केवल 1 होगा।
-
यह सामान्यीकृत डेटा कंसोल पर प्रदर्शित होता है।