Answers:
这称为基于单位的归一化。如果有向量,则可以通过执行以下操作来获得向量的规范化版本:。
在数组中找到最大的正数和最小的(最负数)数。将最小(最负数)数的绝对值添加到数组中的每个值。将每个结果除以最大数与最小数之差。
说你有一个向量/值数组 v = [1, -2, 3]
minV = Math.min.apply(Math, v);;
for(var i=0; i<v.length; i++) {v[i] -= minV;}
maxV = Math.max.apply(Math, v);;
for(var i=0; i<v.length; i++) {v[i] /= ( maxV - minV );}
最后的输出将是v = [0.6, 0, 1]
。说明:
将值的整个范围从0开始,这样我们就不会出现负数
将值除以(max-min)范围,这样max将为1