正規化#

sklearn.preprocessing.normalize(X, norm='l2', *, axis=1, copy=True, return_norm=False)[原始碼]#

將輸入向量個別縮放到單位範數(向量長度)。

請在使用者指南中閱讀更多資訊。

參數:
X形狀為 (n_samples, n_features) 的 {類陣列, 稀疏矩陣}

要正規化的資料,逐元素正規化。scipy.sparse 矩陣應為 CSR 格式,以避免不必要的複製。

norm{‘l1’, ‘l2’, ‘max’},預設值=’l2’

用於正規化每個非零樣本(如果軸為 0,則正規化每個非零特徵)的範數。

axis{0, 1},預設值=1

定義用於正規化資料的軸。如果為 1,則獨立正規化每個樣本;否則(如果為 0),則正規化每個特徵。

copy布林值,預設值=True

如果為 False,則嘗試避免複製並就地正規化。這並不能保證總是就地工作;例如,如果資料是具有 int dtype 的 numpy 陣列,即使 copy=False,也會返回一個副本。

return_norm布林值,預設值=False

是否返回計算的範數。

返回:
X形狀為 (n_samples, n_features) 的 {ndarray, 稀疏矩陣}

正規化後的輸入 X。

norms如果 axis=1,則形狀為 (n_samples, ) 的 ndarray;否則形狀為 (n_features, )

沿給定軸的 X 的範數陣列。當 X 為稀疏時,對於範數 ‘l1’ 或 ‘l2’,將引發 NotImplementedError。

另請參閱

正規化器 (Normalizer)

使用轉換器 API 執行正規化(例如,作為預處理管線的一部分)。

注意事項

有關不同縮放器、轉換器和正規化器的比較,請參閱:比較不同縮放器對帶有離群值的資料的影響

範例

>>> from sklearn.preprocessing import normalize
>>> X = [[-2, 1, 2], [-1, 0, 1]]
>>> normalize(X, norm="l1")  # L1 normalization each row independently
array([[-0.4,  0.2,  0.4],
       [-0.5,  0. ,  0.5]])
>>> normalize(X, norm="l2")  # L2 normalization each row independently
array([[-0.66...,  0.33...,  0.66...],
       [-0.70...,  0.     ,  0.70...]])