从NodeJS改进R脚本执行

时间:2019-01-11 15:04:28

标签: r node.js machine-learning raspberry-pi

我是R的新手,并且正在从NodeJS应用程序调用R脚本。调用R脚本时,需要很长时间才能产生输出。我调查并意识到,大部分开销是在加载我正在使用的库和模型时。让我澄清一下,考虑到我正在Raspberry Pi 2 b +中运行此代码,因此任何优化都可以。

我的问题是:有没有办法在R上预加载所有库和模型,然后按需触发预测?这样我就不需要每次想要进行预测时都重新加载库和模型。

1 个答案:

答案 0 :(得分:0)

不。由于您只是在调用脚本,因此每次运行脚本时都必须加载它的所有内容。因为在调用它之前,内存中不存在任何东西。

我建议的一种解决方法是改为运行R脚本,让R脚本作为服务运行,然后从nodejs查询该服务。

我不能为您提供帮助,因为我在R方面的专业知识还很遥远,我也不知道是否有可能拥有R服务器。

另一种选择是,如果不太麻烦,可以将R项目移植到python并挂载某种类型的服务器(使用python非常容易做到),然后从nodejs。由于您将要运行服务器,因此只需在服务器启动时缓存库,然后将所有内容存储在RAM中,即可进行下一次查询。