2015-02-27 2 views
3

Я пытаюсь запустить GBM модель в H2O с помощью R и получить одну из следующих ошибок:R H2O опрос Сообщение об ошибке

|==========================                    | 25% 
Polling fails: 
<simpleError in .h2o.__poll(client, job_key): Got exception 'class java.lang.RuntimeException', with msg 'java.lang.AssertionError: NewChunk.dst.len = 0, oc._len = 1235' 
java.lang.RuntimeException: java.lang.AssertionError: NewChunk.dst.len = 0, oc._len = 1235 
    at hex.FrameExtractor.getResult(FrameExtractor.java:77) 
    at water.util.CrossValUtils.crossValidate(CrossValUtils.java:29) 
    at hex.gbm.GBM.execImpl(GBM.java:201) 
    at water.Func.exec(Func.java:42) 
    at water.Job$3.compute2(Job.java:333) 
    at water.H2O$H2OCountedCompleter.compute(H2O.java:647) 
    at jsr166y.CountedCompleter.exec(CountedCompleter.java:429) 
    at jsr166y.ForkJoinTask.doExec(ForkJoinTask.java:263) 
    at jsr166y.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:974) 
    at jsr166y.ForkJoinPool.runWorker(ForkJoinPool.java:1477) 
    at jsr166y.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:104) 
Caused by: java.lang.AssertionError: NewChunk.dst.len = 0, oc._len = 1235 
    at water.fvec.ChunkSplitter.extractChunkPart(ChunkSplitter.java:44) 
    at hex.NFoldFrameExtractor$FoldExtractTask.map(NFoldFrameExtractor.java:105) 
    at water.MRTask2.compute2(MRTask2.java:404) 
    ... 6 more 
> 
    |=========================================================================================================| 100% 
Error in .h2o.__remoteSend([email protected], model_view, `_modelKey` = xvalKey[i]) : 
    http://127.0.0.1:54321/2/GBMModelView.json returned the following error: 
    Model 'GBM_a1b17d68e29d7ba49cb6243293344b69_xval0' not found! 

Или эта версия:

|===================               | 25% 
Polling fails: 
<simpleError in .h2o.__poll(client, job_key): Got exception 'class java.lang.AssertionError', with msg 'null' 
java.lang.AssertionError 
    at hex.gbm.GBM.buildNextKTrees(GBM.java:505) 
    at hex.gbm.GBM.buildModel(GBM.java:296) 
    at hex.gbm.GBM.buildModel(GBM.java:26) 
    at hex.gbm.SharedTreeModelBuilder.buildModel(SharedTreeModelBuilder.java:276) 
    at hex.gbm.GBM.execImpl(GBM.java:200) 
    at water.Func.exec(Func.java:42) 
    at water.Job.invoke(Job.java:353) 
    at water.Job$ValidatedJob.genericCrossValidation(Job.java:889) 
    at hex.gbm.GBM.crossValidate(GBM.java:709) 
    at water.util.CrossValUtils.crossValidate(CrossValUtils.java:32) 
    at hex.gbm.GBM.execImpl(GBM.java:201) 
    at water.Func.exec(Func.java:42) 
    at water.Job$3.compute2(Job.java:333) 
    at water.H2O$H2OCountedCompleter.compute(H2O.java:647) 
    at jsr166y.CountedCompleter.exec(CountedCompleter.java:429) 
    at jsr166y.ForkJoinTask.doExec(ForkJoinTask.java:263) 
    at jsr166y.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:974) 
    at jsr166y.ForkJoinPool.runWorker(ForkJoinPool.java:1477) 
    at jsr166y.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:104) 
> 
    |============================================================================| 100% 
Error in tail(res$cms, 1)[[1]] : subscript out of bounds 

Вот которая вызывает ошибку:

dat1.gbm <- h2o.gbm(y = 'click_target2', x = xVars, data = train1.hex 
         , nfolds = 3 
         , importance = T 
         , distribution = 'bernoulli' 
         , n.trees = 200 
         , interaction.depth = 10, 
         # , n.minobsinnode = 2 
         , shrinkage = 0.01 
) 

Любые предложения по поводу того, что вызывает эту ошибку?

EDIT:

Я пытался поставить диагноз, если есть проблема с самим CSV-файла, и кажется, что может быть проблемой. Я закончил писать сценарий на python, чтобы разбить большой файл на отдельные файлы csv на week_number. Около 2/3 пути к чтению файла я получаю ошибку исключения NULL байта. Я все еще работаю, чтобы найти исправление для этого.

+0

Разве это не вопрос дополнительной запятой здесь: ', interactive.depth = 10,'? –

+0

Я столкнулся с этой ошибкой, когда в качестве входных данных были смешанные целые числа и факторы. – EngrStudent

ответ

0

Я вижу, что сбой происходит в методе crossValidate(). Перекрестная проверка в последней версии H2O (H2O-3) была переписана.

Попробуйте последнюю стабильную версию отсюда: http://h2o.ai/download

Но я не понимаю, как получить доступ к данным в любом месте в исходном сообщении, поэтому я не могу проверить, проблема действительно исправлена.

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