1.原因
现在有两个特征u1和u2,u1过大会导致其权重过大,想要学习,反向更新下来会很慢,所以进行特征缩放,将特征值压缩到(0,1)或者(-1,1)之间,尽量让各特征的权重相差不大。
缩放前:
缩放后:
2.特征缩放的方法
3.代码实现
import numpy as np
from sklearn.preprocessing import StandardScaler
from sklearn.preprocessing import MinMaxScaler
data = np.array([[1.0,2.0,3.0],[4.0,5.0,6.0]])
#标准化
ss = StandardScaler()
std_cps = ss.fit_transform(data)
origin_data = ss.inverse_transform(std_cps) #还原
print(origin_data)
#0-1归一化
mm = MinMaxScaler()
mm_data = mm.fit_transform(data)
origin_data = mm.inverse_transform(mm_data)