最后编辑于2020-05
这个是官网课程的公式:
平时用的归一化公式是:x=(x-min)/(max-min),这里是(x-平均值)/(max-min),
用了课程的方法,显示数据,发现取值并不在[0,1)之间:
请登录后评论
TOP
切换版块
这个最终范围是-1到1吧,应该也可以自我感觉
比如我有两个数据 0、100,标准化后为-1、1。再取abs两个数据就都变成1了,对应原数据就是100、100了。
比如我又两个数据 0,100,标准化后为-1,1.再取abs两个数据就都变成1了,对应元数据就是100,100了。
如果数据有正有负,取个abs是不是改变数据分布了?
这个理解了。
如果有正数 也有负数 取个abs就行
没影响
最大值和最小值是对称的,不过一般标准化用的多一点
全是负数的目的是什么,能加速优化么?还是没影响?
减去最小值后数据就会全部是正数
减去平均值就能使数据正负数平衡了。
不是,只是单纯缩放特征。正态分布是(x - mean)/ std
请问这个是不是想搞标准正态分布的类似 均值是0 方差为1
如果向保证(0,1)之间,可以试试(x - min)/ (max - min)
如果你仔细观察就会发现,maximums[i]和minimums[i]中的值是axis=0,即列上的值,所以很有可能某一个特征减去最大最小成了负数,但是最终的结果一定在(-1,1)之间,举个例子吧:
假设我们的数据如下,最后一列是y,其他列代表x的一个特征
面积 年龄 是否朝南 楼层数 价格
100 10 1 3 100W
200 5 0 5 300W
300 1 1 3 800W
以面积100为例,(100 - mean)/ (max - min)= (100 - 200)/ (300 - 100) = -0.5
减最大值其实也行
load_data()函数主要步骤就是那个归一化,但是不理解那个公式那个变量是平均值而不是最小值
load_data()函数看看?