- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想知道迭代求解器是否是求解线性系统(非稀疏、对称、正定)的更快方法。
我尝试了 R 包中的共轭梯度方法 Rlinsolve
和 cPCG
,但与非迭代 base::solve()
相比,两者似乎都不太准确且速度较慢.
library(Rlinsolve)
library(cPCG)
library(microbenchmark)
n <- 2000
A <- tcrossprod(matrix(rnorm(n^2),nrow=n) + diag(rep(10,n)))
x <- rnorm(n)
b <- A%*%x
mean(abs(x - solve(A,b)))
## [1] 1.158205e-08
mean(abs(x - lsolve.cg(A,b)$x))
## [1] 0.03836865
mean(abs(x - cgsolve(A,b)))
## [1] 0.02642611
mean(abs(x - pcgsolve(A,b)))
## [1] 0.02638013
microbenchmark(solve(A, b), lsolve.cg(A, b),
cgsolve(A, b), pcgsolve(A, b), times=5)
## Unit: milliseconds
## expr min lq mean median uq max neval cld
## solve(A, b) 183.3039 188.6678 189.7362 188.8665 189.8514 197.9914 5 a
## lsolve.cg(A, b) 7178.7477 7784.7646 7934.8406 8114.5838 8218.7356 8377.3714 5 d
## cgsolve(A, b) 1907.0940 2020.8368 2226.0513 2121.2917 2483.1947 2597.8393 5 b
## pcgsolve(A, b) 4059.5856 4109.0319 4203.4093 4242.7750 4275.9537 4329.7005 5 c
最佳答案
作为Rlinsolve
的创建者包,我有点不同意这个问题隐含的争论。如果你有密集矩阵 A
,使用定制计算存储稀疏矩阵的所有好处立即消失。当高斯模型下的协方差结构带状时,我已经看到了稀疏求解器的一些不错的用法,但此类文献非常少。
请记住 没有一种工具可以解决所有问题 .如果您有对称的正定矩阵,cholesky 或基于 EVD 的解决方案是一个很好的工具。
仅供引用,我见过 Rlinsolve
用于比较基于 EM 的迭代求解器的性能的统计计算论文,这是他们的创造,与我的包提供的方法。我相信这在某种程度上起到了很好的作用。
关于r - R 中线性系统迭代求解器的典型用例是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58212341/
我最近购买了《C 编程语言》并尝试了 Ex 1-8这是代码 #include #include #include /* * */ int main() { int nl,nt,nb;
早上好!我有一个变量“var”,可能为 0。我检查该变量是否为空,如果不是,我将该变量保存在 php session 中,然后调用另一个页面。在这个新页面中,我检查我创建的 session 是否为空,
我正在努力完成 Learn Python the Hard Way ex.25,但我无法理解某些事情。这是脚本: def break_words(stuff): """this functio
我是一名优秀的程序员,十分优秀!