Machine-learning-with-python-lone-normalization

提供:Dev Guides
移動先:案内検索

L1正規化

各行の絶対値の合計が常に最大1になるようにデータセット値を変更する正規化手法として定義できます。 最小絶対偏差とも呼ばれます。

この例では、L1正規化手法を使用して、以前に使用した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='l1').fit(array)
Data_normalized = Data_normalizer.transform(array)

また、選択に応じて出力用のデータを要約することもできます。 ここでは、精度を2に設定し、出力の最初の3行を表示しています。

set_printoptions(precision=2)
print ("\nNormalized data:\n", Data_normalized [0:3])

出力

Normalized data:
[[