Eag*_*gle 4 c++ boost linear-algebra linear-regression lapack++
首先,我是 C++ 新手。
我正在为我的硕士论文编写一个程序,其中一部分假设以递归方式解决回归问题。
我想解决:
Ax = y
Run Code Online (Sandbox Code Playgroud)
就我而言,计算速度不可忽视,这就是我想知道 Boost::BLAS 是否使用
x = (A^T A)^{-1}A^Ty
Run Code Online (Sandbox Code Playgroud)
需要比 Lapackpp 更少的计算时间(我使用的是 gentoo)。
PS 我能够在 Lapackpp 项目站点找到类文档,但找不到示例。有人可以给我提供一些例子,以防 Lapack 比 Boost::BLAS 更快吗
谢谢
从数值分析的角度来看,您永远不想编写这样的代码
A^T A
形成回归的正规方程矩阵 ( )与直接解决同一问题的替代方案相比,这两种方法都需要更多工作,但准确性较低(并且可能不太稳定)。
每当你看到一些数学显示矩阵求逆时,这应该被理解为“求解线性方程组”,或者对矩阵进行因式分解并使用因式分解来求解该系统。BLAS 和 Lapack 都有执行此操作的例程。
同样,对于回归,请调用计算回归的库函数,或自行阅读如何执行此操作。正规方程法是教科书上错误的做法。
归档时间: |
|
查看次数: |
4760 次 |
最近记录: |