沿一个特定维度归一化矩阵

用户名

我有一个shape矩阵[1000,500],我想沿第二维对矩阵进行归一化。以下实现正确吗?

def norm(x):
    return (x - np.mean(x)) / (np.std(x) + 1e-7)

for row_id in range(datamatrix.shape[0]):
    datamatrix[row_id,:] = norm(datamatrix[row_id,:])
勒克斯

您的实现确实会沿行轴进行归一化(我不确定您所说的第二维是什么意思,因为行通常是矩阵的第一维,而numpy从维0开始)。您不需要包括冒号,因为它隐含了您想要所有的行。

切记float32在数据矩阵中使用dtype而不是整数dtype,因为它不会自动进行类型转换。

可能会使用更有效或更干净的实现sklearn.preprocessing.normalize

但是请注意,您使用的是标准分数归一化,假设您的数据集呈正态分布。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章