Der Inhalt dieses Artikels besteht darin, Ihnen die Methode zur Normalisierung mehrdimensionaler Arrays in Python mitzuteilen. Sie hat einen bestimmten Referenzwert.
Heute bin ich auf ein Problem gestoßen, das erforderlich ist Es gibt jedoch relativ wenige Informationen darüber, wie man ein mehrdimensionales Array normalisiert. Zum Trainieren neuronaler Netze werden häufig dimensionale Daten benötigt. Daher ist die Normalisierung mehrdimensionaler Arrays unbedingt erforderlich.
Nachdem ich viele Informationen konsultiert hatte, stellte ich fest, dass die Vorverarbeitung in der Sklearn-Bibliothek mehrdimensionale Arrays direkt normalisieren kann.
1. Verwenden Sie die Funktion sklearn.preprocessing.scale(), um die angegebenen Daten zu standardisieren: Die spezifische Formel lautet (x – Mittelwert)/Std. Seine Bedeutung ist: Subtrahieren Sie den Mittelwert jeder Spalte von den Daten in dieser Spalte und dividieren Sie ihn dann durch die Standardabweichung der Daten in dieser Spalte. Die erhaltenen Enddaten liegen alle nahe bei 0, mit einer Varianz von 1. Spezifische Programmbeispiele sind wie folgt:
from sklearn import preprocessing data_normal = preprocessing.scale(data)#data是多维数据
2. Verwenden Sie die Klasse sklearn.preprocessing.StandardScaler. Diese Klasse kann den Mittelwert und die Varianz jeder Datenspalte berechnen und direkt konvertieren der ursprüngliche Wert basierend auf dem Mittelwert und der Varianz der Datennormalisierung. Ein einfaches Beispiel lautet wie folgt:
from sklearn import preprocessing #计算原始数据每行和每列的均值和方差,data是多维数据 scaler = preprocessing.StandardScaler().fit(data) #得到每列的平均值,是一维数组 mean = scaler.mean_ #得到每列的标准差,是一维数组 std = scaler.std_ #标准化数据 data_nomal = scaler.transform(data) #可以直接使用训练集对测试集数据进行转换 scaler.transform([[-1., 1., 0.]])
sklearn.preprocessing.MinMaxScaler skaliert die Daten auf einen angegebenen Bereich. Konkrete Beispiele sind wie folgt:
from sklearn import preprocessing min_max_scaler = preprocessing.MinMaxScaler() #标准化训练集数据 data_train_nomal = min_max_scaler.fit_transform(data_train) #对测试集数据进行相同的归一化处理 data_test_minmax = min_max_scaler.transform(data_test) #获取缩放因子属性,结果是一维数组 min_max_scaler.scale_ min_max_scaler.min_
sklearn.preprocessing kann auch eine Regularisierung durchführen
(1) Vorverarbeitung . normalize() führt eine Regularisierungstransformation für die Daten durch
data_normalized = preprocessing.normalize(data, norm='l2')
Vorverarbeitung.Normalizer() passt zuerst die Daten an und führt dann eine Regularisierungstransformation für die Daten durch
normalizer = preprocessing.Normalizer().fit(data) #拟合原始数据,data是多维数组 normalizer.transform(data) #正则化
So konvertieren Sie einen Python-String in ein zweidimensionales Array
Das obige ist der detaillierte Inhalt vonPython-Methode zur Normalisierung mehrdimensionaler Arrays. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!