mitrabhanu
mitrabhanu

Reputation: 399

How to save a C5.0 model in R and load in another environment

I have created a model using C50 library in R for classifying emails into various categories. I now want to use the model for classifying new incoming emails in real time using R predict via java. I am not sure how I can save the model from R and load it in another R instance that is used with Java. Is there any way to save the model to a file and then load the file into R to get the model back for prediction?

Upvotes: 1

Views: 652

Answers (2)

mitrabhanu
mitrabhanu

Reputation: 399

I used below to save the model from randomForest as I migrated to Radom Forests from Trees. :) . I have also used combine so as to have multiple Random Forests added in same model.

mod <- randomForest(as.factor(type)~.-type,data1_rf[,c(5:52)],proximity=FALSE,mtry=5,nodesize=10,ntree=500,importance=FALSE)
mod1 <- randomForest(as.factor(type)~.-type,data2_rf[,c(5:52)],proximity=FALSE,mtry=5,nodesize=10,ntree=500,importance=FALSE)
mod <- combine(mod,mod1)

Then just save the final model into a file.

save(mod,file="/Rscripts/Models/MULTI23Jul2016.RData")

For using it, load the model.

mod<-get(load("/Rscripts/Models/MULTI23Jul2016.RData"))

Upvotes: 0

MachLearn
MachLearn

Reputation: 26

This post has your answer to how to save a model (which is a java object) into a file, and then later load that file back again:

Save/load a M5 RWeka caret model fails

library(RWeka) 
j48.model <- J48(formula=class ~ ., data=data) 
library(rJava) 
.jcache(j48.model$classifier) 
save(j48.model, file="j48.model.rda")

Upvotes: 1

Related Questions