基本上,取一个矩阵并对其进行更改,使其均值等于 0,方差为 1。我正在使用 numpy 的数组,所以如果它已经可以做到,那就更好了,但我可以自己实现它,只要我可以找到算法。
编辑:nvm nimrodm 有更好的实现
最佳答案
下面从每个元素中减去A的均值(新均值为0),然后用标准差对结果进行归一化。
import numpy as np
A = (A - np.mean(A)) / np.std(A)
以上是为了将整个矩阵标准化为一个整体,如果 A 有很多维度并且您想单独标准化每一列,请指定 axis :
import numpy as np
A = (A - np.mean(A, axis=0)) / np.std(A, axis=0)
在将这些单行代码集成到您的代码之前,请务必手动验证它们在做什么。方向或尺寸的简单更改可以(无声地)彻底改变 numpy 对它们执行的操作。
关于python - 如何标准化矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4544292/