utilities(matlab)—— l2row/l2col

对一个矩阵在行的方向进行 normalize,也即每一行的二范数归一化为 1。

简单脚本实现

>> X = magic(3);
>> N = sqrt(sum(X.^2, 2) + 1e-8);
>> X = X ./ (N*ones(1, 3));

函数

function [Y, N] = l2row(X)
N = sqrt(sum(X.^2, 2) + 1e-8);
Y = X ./ (N*ones(1, size(X, 2)));
end

当然 l2col 只需对 X 求转置(l2row(X'))即可;

性质

f^1=f^f^221

  • the normalized features f^ are constrained to lie on the unit 2 -ball(单位超球体上).

  • 对特征进行归一化的一个属性就是它会隐含的进行特征间的竞争。归一化会使得如果只有一个特征分量 f(i) 增大,那么其他所有的特征分量的值将会减小。相似的,如果只有一个特征分量 f(i) 减小,那么其他所有的特征分量的值将会增大。

你可能感兴趣的:(utilities(matlab)—— l2row/l2col)