我正在运行分类算法。
r.cache
包所以我认为将模型加载到RAM中是有意义的。这样可以节省时间并加快处理速度。
我调整了函数(参见下面的代码),将模型加载到列表中,并在全局环境中保存模型(假设全局环境在RAM中)。
但是,功能速度没有变化,RAM内存使用情况似乎没有变化。
问题:
我现在假设全局环境变量缓存到磁盘了吗?
是否可以在RAM中保存大型内存占用模型列表(每个型号的范围从50mb到400mb)?
目前的代码如下:
注意: loadCache是r.cache包中的一个方法。它从磁盘缓存加载模型。 显然,这是测试代码。如果它确实有效,我会把它分解成更小的函数
if(is.null(modelsList))
{
modelsList=list()
for(majorFinal in majorAsFactor)
{
print(paste("\n\n\n\npredicting.....",majorFinal))
key=list(paste("KSVM",majorFinal,sep='_'))
svm_model <- loadCache(key)
modelsList[[count]] <- svm_model
count <- count+1
svm_pred <- predict(svm_model, onerowdfcache)
if(as.character(svm_pred)!="OTHER")
{
results<-c(results,as.character(svm_pred))
print(results)
}
}
}
else
{
count=as.numeric(1)
for(svm_model in modelsList)
{
print(paste("\n\n\n\npredicting.....",count))
count=count+1
svm_pred <- predict(svm_model, onerowdfcache)
if(as.character(svm_pred)!="OTHER")
{
results<-c(results,as.character(svm_pred))
print(results)
}
}
}