2017-09-05 68 views
1

我使用了rxNeuralNet並獲得了很好的結果。我想保存它以備將來使用。如何保存rxNeuralNet(mlModel)的輸出以供重用?

nnOutput <- rxNeuralNet(formula = savedFormula, data = inputData, 
         type = "regression", acceleration = "sse") 

我可以在rxPredict中使用nnOutput,並驗證我的答案。

rxPredict(nnOutput, data = testSet, outData = tempXDF) 

現在我想保存輸出,以便稍後重用。 (培訓時間並不重要。)我似乎無法找到任何實例。我試過了:

rxDataStep(inData = nnOutput, outFile = tempXDF, overwrite = TRUE) 
rxImport(inData = nnOutput, outFile = tempXDF, overwrite = TRUE) 
write.csv(nnOutput, file = "c:\\temp\\temp.csv") 

有什麼建議嗎?

回答

0

如果您有SQL Server,可以使用rxSerializeModel和/或rxWriteObject將模式作爲二進制持久化保存到SQL。

您也可以使用「bog標準」R serialize函數或savesaveRDS

+0

這正是我需要的。謝謝。 –

1

A rxNeuralNet模型對象只是一個普通的R對象。您可以使用通常的R方法來處理它。

例如,假設你的數據是數據幀:

glmMod <- glm(y ~ x1 + x2 + x3, data=dat) 
nnMod <- rxNeuralNet(y ~ x1 + x2 + x3, data=dat, 
        type="regression", accel="sse") 
save(glmMod, nnMod, file="models.rdata") 
下一次

啓動R:

load("models.rdata") 
glmPred <- predict(glmMod, newdat) 
nnPred <- rxPredict(nnMod, newdat, outData=NULL) 
+0

也是一個很好的方法。在SQL上保存似乎更適合我的特殊用例,但這也太好了! –

+0

如果答案是有用的,你應該upvote和/或接受它。 –

+0

我嘗試了upvote,但我沒有足夠的分數,但顯然。 –