使用如下方法规范化数组: 200, 300, 400, 600, I 000 ①令min=0,max=1,进行最小一最大规范化。 ②标准差标准化。 ③小数定标规范化
时间: 2024-03-08 17:45:39 浏览: 225
最小最大规范化、 小数定标、z_score规范化算法
5星 · 资源好评率100%
好的,我来回答你的问题。
①最小最大规范化:将每个数减去数组中的最小值,再除以最大值减去最小值的差。即
200 -> (200-200)/(1000-200) = 0
300 -> (300-200)/(1000-200) = 0.1
400 -> (400-200)/(1000-200) = 0.2
600 -> (600-200)/(1000-200) = 0.4
1000 -> (1000-200)/(1000-200) = 1
所以规范化后的数组为:0, 0.1, 0.2, 0.4, 1
②标准差标准化:将每个数减去数组的均值,再除以数组的标准差。即
均值 = (200+300+400+600+1000)/5 = 500
标准差 = sqrt[(200-500)^2+(300-500)^2+(400-500)^2+(600-500)^2+(1000-500)^2]/5 ≈ 292.77
200 -> (200-500)/292.77 ≈ -1.02
300 -> (300-500)/292.77 ≈ -0.68
400 -> (400-500)/292.77 ≈ -0.34
600 -> (600-500)/292.77 ≈ 0.34
1000 -> (1000-500)/292.77 ≈ 1.70
所以规范化后的数组为:-1.02, -0.68, -0.34, 0.34, 1.70
③小数定标规范化:将每个数除以一个基准值10的幂次方,使得所有的数都在[-1, 1)之间。基准值的幂次方为数组中绝对值最大的数的位数。即
基准值 = 10^3
200 -> 200/10^3 = 0.2
300 -> 300/10^3 = 0.3
400 -> 400/10^3 = 0.4
600 -> 600/10^3 = 0.6
1000 -> 1000/10^3 = 1
所以规范化后的数组为:0.2, 0.3, 0.4, 0.6, 1
阅读全文