一、介紹
數據歸一化是將不同範圍的數據映射到相同的標準範圍內,常見的歸一化方法有線性歸一化、均值方差歸一化等。這些方法在數據挖掘、機器學習等領域中廣泛應用。
二、線性歸一化
線性歸一化即將數據映射為0-1之間的數值,應用最廣泛,也是最簡單的歸一化方法。具體公式如下:
def linear_scale(data): max_val = max(data) min_val = min(data) return [(val - min_val) / (max_val - min_val) for val in data]
該函數接收一個列表類型的數據,返回一個經過線性歸一化後的列表。
三、均值方差歸一化
1. 均值方差歸一化介紹
均值方差歸一化是將數據映射為均值為0、方差為1的正態分布數據。該方法要求數據服從正態分布,且對異常值比較敏感。均值方差歸一化的公式如下:
x’是歸一化後的結果,x是原始數據,μ是均值,σ是方差。
2. 均值方差歸一化代碼示例
import numpy as np def mean_std_scale(data): std_val = np.std(data) mean_val = np.mean(data) return [(val - mean_val) / std_val for val in data]
該函數接收一個列表類型的數據,返回一個經過均值方差歸一化後的列表。
四、小數定標歸一化
小數定標歸一化是用科學計數法表示數據,通過移動小數點的位置把數值映射到[-1, 1)之間。具體公式如下:
x’是歸一化後的結果,x是原始數據,j是移動的位數,通常j取數據中絕對值最大的項的位數。
3. 小數定標歸一化代碼示例
def decimal_scale(data): j = len(str(int(max(data)))) return [val / (10 ** j) for val in data]
該函數接收一個列表類型的數據,返回一個經過小數定標歸一化後的列表。
五、總結
數據歸一化是將不同範圍的數據映射到相同的標準範圍內,常見的歸一化方法有線性歸一化、均值方差歸一化和小數定標歸一化。通過數據歸一化,可以更好地處理數據,提高演算法的精度和泛化能力。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/256768.html