이 글의 내용은 파이썬에서 다차원 배열을 정규화하는 방법을 공유하는 것입니다. 특정 참조 값이 있으므로 필요한 친구가 참고할 수 있습니다.
오늘 저는 다차원 배열을 정규화해야 하는 문제에 직면했습니다. 그런데 온라인에서 찾아보니 정규화된 배열의 행이나 열에 관한 정보가 많네요. 다차원 배열을 정규화하는 방법에 대한 정보는 상대적으로 적습니다. 하지만 텐서플로우에서는 다차원 데이터가 필요한 경우가 많습니다. 신경망을 훈련시킵니다. 따라서 다차원 배열을 정규화하는 것은 매우 필요합니다.
많은 정보를 상담한 결과 sklearn 라이브러리의 전처리가 다차원 배열을 직접 정규화할 수 있다는 것을 발견했습니다.
1. sklearn.preprocessing.scale() 함수를 사용하여 주어진 데이터를 표준화합니다. 구체적인 공식은 (x - 평균)/std입니다. 그 의미는 이 열에 있는 데이터에서 각 열의 평균을 뺀 다음 이 열에 있는 데이터의 표준 편차로 나누는 것입니다. 얻은 최종 데이터는 모두 0에 가깝고 분산은 1입니다. 구체적인 프로그램 예시는 다음과 같습니다.
from sklearn import preprocessing data_normal = preprocessing.scale(data)#data是多维数据
2, sklearn.preprocessing.StandardScaler 클래스를 사용하면 데이터의 각 열에 대한 평균과 분산을 계산하고, 평균과 분산을 기반으로 원본 데이터를 직접 정규화할 수 있습니다. 간단한 예는 다음과 같습니다:
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.]])
3, sklearn.preprocessing.MinMaxScaler 클래스는 데이터를 지정된 범위로 확장합니다. 구체적인 예는 다음과 같습니다.
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_
4. 첨부 sklearn.preprocessing도 정규화를 수행할 수 있습니다.
(1) preprocessing.normalize()는 데이터를 정규화합니다.
data_normalized = preprocessing.normalize(data, norm='l2')
(2) preprocessing. ) 먼저 데이터를 맞춘 다음 데이터에 대해 정규화 변환을 수행합니다
normalizer = preprocessing.Normalizer().fit(data) #拟合原始数据,data是多维数组 normalizer.transform(data) #正则化
관련 권장 사항:
파이썬 분할 및 정복 방법 2차원 배열 찾기 Local peak method_python
위 내용은 다차원 배열을 정규화하는 Python 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!