Normalization = แปลงช่วงค่าให้มาตรฐาน ข้อมูล input ต้อง consistent และ structured ทุก feature ต้องอยู่ scale เดียวกัน ข้อมูลจริงมัก unstructured ไม่ใช่ scale เดียวกัน จึงต้อง normalize
L1 Normalization = Least Absolute Deviations ทำให้ sum of absolute values = 1 ในแต่ละแถว
ตัวอย่าง
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]]
คำอธิบาย
- นำเข้าแพ็กเกจ
- สร้างข้อมูล input ด้วย NumPy
- ใช้ 'normalize' ใน 'preprocessing' norm='l1' ทำให้ sum of absolute values = 1 ต่อแถว
- แสดงข้อมูลที่ normalized
L1 norm: ||x||₁ = Σ|xᵢ| normalization: x' = x / ||x||₁