Machine-learning-with-python-ltwo-normalization
提供:Dev Guides
L2正規化
各行の平方和が常に最大1になるようにデータセット値を変更する正規化手法として定義できます。 最小二乗とも呼ばれます。
例
この例では、L2正規化手法を使用して、前に使用したPima Indians Diabetesデータセットのデータを正規化します。 最初に、CSVデータがロードされ(前の章で行われたように)、次に_Normalizer_クラスを使用して正規化されます。
次のスクリプトの最初の数行は、CSVデータの読み込み中に前の章で書いたものと同じです。
from pandas import read_csv
from numpy import set_printoptions
from sklearn.preprocessing import Normalizer
path = r'C:\pima-indians-diabetes.csv'
names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
dataframe = read_csv (path, names=names)
array = dataframe.values
これで、L1でNormalizerクラスを使用してデータを正規化できます。
Data_normalizer = Normalizer(norm='l2').fit(array)
Data_normalized = Data_normalizer.transform(array)
また、選択に応じて出力用のデータを要約することもできます。 ここでは、精度を2に設定し、出力の最初の3行を表示しています。
set_printoptions(precision=2)
print ("\nNormalized data:\n", Data_normalized [0:3])
出力
Normalized data:
[[