[云炬python3玩转机器学习]4-7机器学习算法训练和测试样本集数据同时归一化
生活随笔
收集整理的這篇文章主要介紹了
[云炬python3玩转机器学习]4-7机器学习算法训练和测试样本集数据同时归一化
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
07 數據歸一化處理
In?[4]:
import numpy as np import matplotlib.pyplot as plt import datetime print(datetime.datetime.now()) 2022-01-16 20:56:04.186800最值歸一化 Normalization
In?[5]:
x = np.random.randint(0, 100, 100)In?[6]:
xOut[6]:
array([84, 67, 90, 84, 51, 6, 90, 89, 28, 97, 26, 19, 43, 39, 63, 18, 90,10, 54, 10, 46, 1, 48, 4, 74, 55, 45, 16, 59, 82, 98, 98, 63, 75,8, 51, 1, 43, 74, 60, 9, 7, 11, 31, 36, 2, 7, 7, 71, 75, 75,86, 82, 82, 85, 6, 28, 47, 96, 25, 66, 47, 24, 48, 0, 78, 33, 92,90, 19, 15, 45, 60, 56, 64, 66, 33, 24, 29, 54, 78, 35, 78, 5, 41,44, 80, 86, 38, 34, 30, 48, 71, 91, 39, 88, 24, 14, 48, 32])In?[7]:
(x - np.min(x)) / (np.max(x) - np.min(x))Out[7]:
array([0.85714286, 0.68367347, 0.91836735, 0.85714286, 0.52040816,0.06122449, 0.91836735, 0.90816327, 0.28571429, 0.98979592,0.26530612, 0.19387755, 0.43877551, 0.39795918, 0.64285714,0.18367347, 0.91836735, 0.10204082, 0.55102041, 0.10204082,0.46938776, 0.01020408, 0.48979592, 0.04081633, 0.75510204,0.56122449, 0.45918367, 0.16326531, 0.60204082, 0.83673469,1. , 1. , 0.64285714, 0.76530612, 0.08163265,0.52040816, 0.01020408, 0.43877551, 0.75510204, 0.6122449 ,0.09183673, 0.07142857, 0.1122449 , 0.31632653, 0.36734694,0.02040816, 0.07142857, 0.07142857, 0.7244898 , 0.76530612,0.76530612, 0.87755102, 0.83673469, 0.83673469, 0.86734694,0.06122449, 0.28571429, 0.47959184, 0.97959184, 0.25510204,0.67346939, 0.47959184, 0.24489796, 0.48979592, 0. ,0.79591837, 0.33673469, 0.93877551, 0.91836735, 0.19387755,0.15306122, 0.45918367, 0.6122449 , 0.57142857, 0.65306122,0.67346939, 0.33673469, 0.24489796, 0.29591837, 0.55102041,0.79591837, 0.35714286, 0.79591837, 0.05102041, 0.41836735,0.44897959, 0.81632653, 0.87755102, 0.3877551 , 0.34693878,0.30612245, 0.48979592, 0.7244898 , 0.92857143, 0.39795918,0.89795918, 0.24489796, 0.14285714, 0.48979592, 0.32653061])In?[8]:
X = np.random.randint(0, 100, (50, 2))In?[9]:
X = np.array(X, dtype=float)In?[10]:
X[:10,:]Out[10]:
array([[42., 66.],[69., 82.],[30., 40.],[93., 52.],[64., 63.],[59., 52.],[ 0., 60.],[82., 57.],[84., 2.],[21., 36.]])In?[11]:
X[:,0] = (X[:,0] - np.min(X[:,0])) / (np.max(X[:,0]) - np.min(X[:,0])) X[:,1] = (X[:,1] - np.min(X[:,1])) / (np.max(X[:,1]) - np.min(X[:,1]))In?[12]:
X[:10,:]Out[12]:
array([[0.44680851, 0.65979381],[0.73404255, 0.82474227],[0.31914894, 0.39175258],[0.9893617 , 0.51546392],[0.68085106, 0.62886598],[0.62765957, 0.51546392],[0. , 0.59793814],[0.87234043, 0.56701031],[0.89361702, 0. ],[0.22340426, 0.35051546]])In?[13]:
plt.scatter(X[:,0], X[:,1]) plt.show()In?[14]:
np.mean(X[:,0])Out[14]:
0.4902127659574468In?[15]:
np.std(X[:,0])Out[15]:
0.2892509174659027In?[16]:
np.mean(X[:,1])Out[16]:
0.5416494845360824In?[17]:
np.std(X[:,1])Out[17]:
0.3021249010594013均值方差歸一化 Standardization
In?[18]:
X2 = np.random.randint(0, 100, (50, 2))In?[19]:
X2 = np.array(X2, dtype=float)In?[20]:
X2[:10,:]Out[20]:
array([[23., 2.],[71., 3.],[ 9., 94.],[35., 84.],[ 9., 31.],[28., 79.],[95., 98.],[28., 30.],[80., 69.],[58., 69.]])In?[21]:
X2[:,0] = (X2[:,0] - np.mean(X2[:,0])) / np.std(X2[:,0]) X2[:,1] = (X2[:,1] - np.mean(X2[:,1])) / np.std(X2[:,1])In?[22]:
plt.scatter(X2[:,0], X2[:,1]) plt.show()In?[23]:
np.mean(X2[:,0])Out[23]:
-8.881784197001253e-18In?[24]:
np.std(X2[:,0])Out[24]:
1.0In?[25]:
np.mean(X2[:,1])Out[25]:
-7.993605777301127e-17In?[26]:
np.std(X2[:,1])Out[26]:
1.0In?[?]:
總結
以上是生活随笔為你收集整理的[云炬python3玩转机器学习]4-7机器学习算法训练和测试样本集数据同时归一化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 别怕,是我......程序猿
- 下一篇: 【日常踩坑】Android机微信webv