首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >nlm包在R中的时间复杂度?

nlm包在R中的时间复杂度?
EN

Stack Overflow用户
提问于 2020-02-13 14:46:37
回答 1查看 111关注 0票数 1

我估计一个非线性系统(通过看似不相关的回归- SUR),使用systemfit (nlsystemfit()函数)软件包,包含4个方程,32个参数来估计(!)和412项观察。但是我的代码需要花费很长时间(我的笔记本电脑,它不是超级强大的)。到目前为止,这一过程持续了13个小时。我不是计算方面的专家,但不久前有人解释了算法时间复杂性的概念(或大o),然后根据这个概念,计算某一算法的时间可以依赖于观察到的数目和/或系数的特定函数关系。

因此,我正在考虑停止我的过程,试图简化模型(暂时),并尝试运行一些更简单的东西,只是检查估计的参数到目前为止是否有感觉。然后运行一个完整的模型。

但是,如果我能够更改模型中的关键元素,那么所有这些都是有意义的,这可以大大减少处理时间。这就是为什么我关注谷歌( nlm-package,nlsystemfit()函数依赖于nlm)的时间复杂性,但没有成功。所以,这是我的问题:在运行整个模型之前,有人知道我在哪里可以找到这些信息,或者至少给我一些关于如何测试非线性系统的建议?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-13 16:12:13

由于您没有提供关于您的模型的任何实质性信息,也没有提供相应的代码,因此很难对您的情况进行改进。

从你说的:

因此,我正在考虑停止我的过程,尝试简化模型(暂时),并尝试运行一些更简单的东西,但是如果估计的参数到目前为止已经确定了,我只想检查一下。然后运行一个完整的模型。

您似乎需要基准测试或获得执行所需的测量时间,就像在您的情况下一样。(尽管它还可以处理内存使用或其他性能指标)

在R中对代码进行基准测试有很多种方法,包括在执行算法/函数之前和之后使用Sys.time()system.time(),或者库,例如rbenchmark (它是system.time函数的简单包装器)、tictocbenchmicrobenchmark

最后两个选项是较好的选择,因为bench::mark包括system_time(),一个较高精度的替代system.time()microbenchmark是准确测量和比较R表达式/算法执行时间的可靠来源。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60210469

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档