- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
矩阵的 L2-范数的平方应与所有行/列的 L2-范数的平方和相匹配。引用:http://mathworld.wolfram.com/L2-Norm.html
考虑 Matlab 中的随机 (4,3) 矩阵
Computed using a = rand(4,3)
0.0400 0.4357 0.9144
0.5551 0.9048 0.5755
0.1675 0.1772 0.3001
0.4189 0.0403 0.2407
整个矩阵的L2范数为:
norm(a1)^2 = 2.7806
L2 列平方和范数:
norm(a1(:,1))^2 + norm(a1(:,2))^2 + norm(a1(:,3))^2 = 2.9337
行平方和的 L2 范数:
norm(a1(1,:))^2 + norm(a1(2,:))^2 + norm(a1(3,:))^2 = 2.2214
这在 Python (numpy) 中匹配:
a = np.random.rand(4,3)
array([[ 0.91033221, 0.9082118 , 0.6864961 ],
[ 0.15157616, 0.70232112, 0.06709103],
[ 0.61008197, 0.15648347, 0.02693866],
[ 0.53646277, 0.22186601, 0.77530143]])
整个矩阵的L2范数
numpy.linalg.norm(a)**2 = 3.9810836846898465
L2 范数行平方和:
numpy.linalg.norm(a[0])**2 + numpy.linalg.norm(a[1])**2 +
numpy.linalg.norm(a[2])**2 + numpy.linalg.norm(a[3])**2 = 3.9810836846898465
Matlab 是否没有以更高的精度进行运算,从而累计累加整个矩阵范数和行列方面的差异?
Matlab 中是否有任何选项可以让我正确地执行此操作?
最佳答案
Matlab 对矩阵使用与向量不同的范数。来自 norm
的 Matlab 文档:
n = norm(X) returns the 2-norm or maximum singular value of matrix X, which is approximately max(svd(X)).
因此,要获得与行和列计算类似的结果,您必须对矩阵进行矢量化。
M =[0.0400, 0.4357, 0.9144;
0.5551, 0.9048, 0.5755;
0.1675, 0.1772, 0.3001;
0.4189, 0.0403, 0.2407 ];
norms = [];
norms(end+1) = norm(M)^2; % 2.46
norms(end+1) = norm(M(:))^2; % 2.87
norms(end+1) = norm(M(1,:))^2 + norm(M(2,:))^2 + norm(M(3,:))^2 + norm(M(4,:))^2; % 2.87
norms(end+1) = norm(M(:,1))^2 + norm(M(:,2))^2 + norm(M(:,3))^2; % 2.87
norms
关于matlab - 在Matlab中,为什么整个矩阵的L2范数的平方与行/列的L2范数的平方和不匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49064372/
与在 SVM 的相同成本函数中使用 2-范数权重相比,我们如何通过在成本函数中使用 1-范数权重来提高稀疏性。 对于 1-范数:成本函数 - 最小化 ||w||_1 对于 2-范数:成本函数 - 最小
我有几个与 l1 规范相关的问题。和TV(Total Variation)一样吗?如何在matlab中计算图像的L1范数?我确实阅读了电视的 wiki 页面,但它对我来说太复杂了。 最佳答案 L1范数
我想最小化实现一组给定的非负整数值 b 的成本,这些非负整数值 b 是从 GEKKO 中的两组非负整数变量 x、y 线性计算出来的。 如果以某种方式说明了我的问题,则 b 是 x 和 y 的约束。我的
我有一个 TensorFlow 占位符,它有 4 个维度,代表一批图像。每个图像为 32 x 32 像素,每个像素有 3 个颜色 channel 。第一个维度表示图像的数量。 X = tf.place
我想取变量列表的 2-范数。如何将序列转换为 CVXPY 兼容的变量“列表”?有办法处理这个问题吗?提前致谢。例如, test_a=cvxpy.Variable(1) test_b=c
我想知道 Python 中是否有一个函数可以完成与 scipy.linalg.lstsq 相同的工作,但使用“最小绝对偏差”回归而不是“最小二乘”回归 (OLS)。我想使用 L1 规范,而不是 L2
如何在 Python 中计算两个向量的差的 1-范数 ||a - b||_1 = sum(|a_i - b_i|)? a = [1,2,3,4] b = [2,3,4,5] ||a - b||_1
我有一个矢量 e <- c(0.1, -0.1, 0.1)我想计算 L1 和 L2 范数。我正在使用 norm(e, type="2")这适用于 L2 规范,但当我将其更改为 norm(e, type
我正在尝试将 Boost.Units 与 Eigen 3.3.1 一起使用,但在遵循说明后 here , 和一些信息 found around ,我仍然不知道如何使 norm() 工作。 这是我到目前
在 Eigen 库中,我知道有 visitors 和 reductions 用于密集的 Eigen::Matrix 类,我可以有效地使用它们来计算他们的 1-norm, inf-norm, etc.
我有一个矩阵 X,它在 d 维空间中有 n 列数据 vector 。给定一个 vector xj,v[j]是它的l1范数(所有abs(xji)的总和), w[j] 是它的 l2 范数的平方(所有 xj
我是一名优秀的程序员,十分优秀!