2015-01-09 2 views
0

Мой код ниже:Проблемы с кареткой: R

library('RMySQL') 
library('DMwR') 
library('tm') 
library('Snowball') 
library('SnowballC') 



rt_outlier <- dbGetQuery(con, "SELECT *,tweet_text from outlier_info,tweets where outlier_info.tweet_id=tweets.tweet_id limit 500") 

rt_not_outlier <- dbGetQuery(con,"Select *, tweet_text from not_outlier_info,tweets where not_outlier_info.tweet_id=tweets.tweet_id limit 500"); 

dbDisconnect(con) 

all_tweets = rbind(rt_outlier,rt_not_outlier) 
all_tweets[,"tweet_text"] <- iconv(all_tweets[,"tweet_text"], to = "utf-8") 

corpus = Corpus(VectorSource(all_tweets[,"tweet_text"])) 
corpus = tm_map(corpus,removePunctuation) 
corpus <- tm_map(corpus, tolower) 
corpus <- tm_map(corpus, stemDocument) 
corpus <- tm_map(corpus,removeWords,stopwords("english")) 
corpus <- tm_map(corpus,stripWhitespace) 
corpus <- tm_map(corpus,removeNumbers) 
mydata.dtm <- TermDocumentMatrix(corpus,control=list(weighting=weightTfIdf, minWordLength=2, findFreqTerms=5)) 


dataframe <- as.data.frame(inspect(mydata.dtm)) 

d=as.data.frame(t(dataframe)) 

classData = c(rep(0,500),rep(1,500)) 
classData = as.factor(classData) 

library('caret') 
ctrl = trainControl(method = "repeatedcv", repeats = 3,) 
set.seed(2) 
mymodel <- train(d, classData,trControl=ctrl,method="J48",model=FALSE) 

В принципе, то, что происходит здесь в том, что я получаю ошибки и предупреждения:

Error in train.default(d, classData, method = "J48", model = FALSE) : 
    final tuning parameters could not be determined 
In addition: Warning messages: 
1: In train.default(d, classData, method = "J48", model = FALSE) : 
    Models using Weka will not work with parallel processing with multicore/doMC 
2: In nominalTrainWorkflow(x = x, y = y, wts = weights, info = trainInfo, : 
    There were missing values in resampled performance measures. 
3: In train.default(d, classData, method = "J48", model = FALSE) : 
    missing values found in aggregated results 

Что я делаю неправильно ? Кроме того, обратите внимание, я использую модель = FALSE в обучении, чтобы сохранить память, как это было проблемой

ответ

0

Вы видите сообщение:

«Models using Weka will not work with parallel processing with multicore/doMC»?

Попробуйте выполнить последовательно.

Еще лучше, используйте C5.0 в параллель. J48 не является большой реализацией C4.5, особенно когда речь идет о разделении категориальных предикторов.

Макс

+0

То есть предупреждение, я попробовал ж/о многоядерной и все еще имел ту же ошибку: Ошибка в train.default (д, classData, метод = «J48», модель = FALSE): окончательную настройку параметры не могут быть определены – user2680293

Смежные вопросы