是否有计算 Accelerate Framework for iPhone 中点数组的线性回归的函数? [关闭]

Posted

技术标签:

【中文标题】是否有计算 Accelerate Framework for iPhone 中点数组的线性回归的函数? [关闭]【英文标题】:Is there a function to calculate linear regression for array of points in Accelerate Framework for iPhone? [closed] 【发布时间】:2011-05-31 10:38:05 【问题描述】:

我正在寻找一种最快/最简单的解决方案来计算存储在数组中的一堆双点的回归。 我试图在 Accelerate 框架或教程中找到合适的功能,但没有成功。

有人做过吗?

【问题讨论】:

【参考方案1】:

假设您已经知道模型的参数,您可以使用矩阵向量乘法来实现。线性回归是样本矩阵X和模型参数向量Theta的inner product。

// Simple scenario for linear regression: Y = theta0 + theta1*X
int rows = 4;
int cols = 2;
double theta[] = 5.0, 2.0;
double x[] = 1.0, 10.0, 
              1.0, 20.0, 
              1.0, 30.0, 
              1.0, 40.0;
double y[rows];

// This is matrix-matrix multiplication function, 
// but vector is just a matrix with one row/column. 
vDSP_mmulD(x, 1, theta, 1, y, 1, rows, 1, cols);

NSLog(@"[%f, %f, %f, %f]", y[0], y[1], y[2], y[3]);

[25.000000, 45.000000, 65.000000, 85.000000]

更多详情请阅读intro to linear regression on wikipedia

【讨论】:

以上是关于是否有计算 Accelerate Framework for iPhone 中点数组的线性回归的函数? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

使用 Accelerate 框架的对称带矩阵的特征值

Accelerate Framework 可以基于单独的索引数组聚合数组值吗?

如何使用 vDSP / Accelerate in swift for iOS 计算向量元素的平方根

iOS — 确定 Accelerate.framework 在运行时是不是可用

OpenCV for Mac 是不是使用 Accelerate 框架?

使用 Accelerate 进行并行编程 (Data.Array.Accelerate)