您的位置:首页 > 编程语言 > MATLAB

utilities(matlab)—— l2row/l2col

2016-05-10 23:53 295 查看
对一个矩阵在行的方向进行 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^2∥2∥∥∥∥1

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

对特征进行归一化的一个属性就是它会隐含的进行特征间的竞争。归一化会使得如果只有一个特征分量f(i)增大,那么其他所有的特征分量的值将会减小。相似的,如果只有一个特征分量f(i)减小,那么其他所有的特征分量的值将会增大。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: