নর্মালাইজেশন = ভ্যালু রেঞ্জকে স্ট্যান্ডার্ড রেঞ্জে (-1 থেকে +1 বা ০ থেকে ১) কনভার্ট করা। ইনপুট ডেটা কনসিস্টেন্ট ও স্ট্রাকচার্ড থাকতে হয়। সব ফিচার একই স্কেলে থাকলে প্রিডিকশন ভালো হয়। রিয়েল-ওয়ার্ল্ড ডেটা আনস্ট্রাকচার্ড ও ভিন্ন স্কেলের। নর্মালাইজেশন কলাম ভ্যালুগুলোকে একই স্কেলে আনে। নর্মালাইজেশনে রেঞ্জ ডিস্টোর্ট হয় না।
L1 নর্মালাইজেশন (Least Absolute Deviations) ডেটাকে এমনভাবে চেঞ্জ করে যাতে প্রতিটি সারের অ্যাবসোলিউট ভ্যালুর যোগফল ১ হয়।
উদাহরণ
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 দিয়ে ইনপুট ডেটা জেনারেট করা হয়েছে।
preprocessing.normalizeফাংশনnorm='l1'দিয়ে নর্মালাইজ করা হয়েছে।- প্রতিটি সারের অ্যাবসোলিউট ভ্যালুর যোগফল ১ হয়েছে।
- নর্মালাইজড ডেটা কনসোলে দেখানো হয়েছে।