R - H20 - ОШИБКА: непредвиденный код состояния HTTP: 500 Ошибка сервера - PullRequest
0 голосов
/ 27 июня 2018

Я пытаюсь использовать h2o.automl из пакета H2O. Тем не менее, я получаю сообщение об ошибке ERROR: Unexpected HTTP Status code: 500 Server Error

Эта ошибка возникает всякий раз, когда я устанавливаю

                  max_runtime_secs = 0,      # Max time (sec.)
                  max_models = NULL, 

Вот вывод:

> model_automl = h2o.automl(x = features,
+                           y = target,
+                           training_frame = h_train,
+                           validation_frame = NULL,  # Optional; Early Stopping of individual models
+                           leaderboard_frame = NULL, # If provided, then Leaderboard scored using this dataframe
+                           nfolds = 10,
+                           fold_column = NULL,       # Column with cross-validation fold index assignment per observation
+                           weights_column = NULL,    # 0 = excluding; 2 = repeating that row twice
+                           balance_classes = TRUE,   # Over/under-sampling available
+                           class_sampling_factors = NULL,
+                           max_after_balance_size = 10,
+                           max_runtime_secs = 0,      # Max time (sec.)
+                           max_models = NULL,         # Max no. of models
+                           stopping_metric = "AUC", # Metric to optimize   #'AUC'
+                           stopping_tolerance = NULL,
+                           stopping_rounds = 5,
+                           seed = n_seed,
+                           project_name = "final1",
+                           exclude_algos = NULL,    # If you want to exclude any algo 
+                           keep_cross_validation_predictions = TRUE,
+                           keep_cross_validation_models = FALSE,
+                           sort_metric = "AUTO")

ERROR: Unexpected HTTP Status code: 500 Server Error (url = http://localhost:54321/99/AutoML/final1)

java.lang.ArrayIndexOutOfBoundsException
 [1] "java.lang.ArrayIndexOutOfBoundsException: 0"                                                                        
 [2] "    ai.h2o.automl.Leaderboard.toTwoDimTable(Leaderboard.java:735)"                                                  
 [3] "    ai.h2o.automl.Leaderboard.toTwoDimTable(Leaderboard.java:727)"                                                  
 [4] "    water.automl.api.schemas3.AutoMLV99.fillFromImpl(AutoMLV99.java:78)"                                            
 [5] "    water.automl.api.AutoMLHandler.fetch(AutoMLHandler.java:17)"                                                    
 [6] "    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)"                                                    
 [7] "    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)"                                  
 [8] "    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)"                          
 [9] "    java.lang.reflect.Method.invoke(Method.java:498)"                                                               
[10] "    water.api.Handler.handle(Handler.java:63)"                                                                      
[11] "    water.api.RequestServer.serve(RequestServer.java:451)"                                                          
[12] "    water.api.RequestServer.doGeneric(RequestServer.java:296)"                                                      
[13] "    water.api.RequestServer.doGet(RequestServer.java:220)"                                                          
[14] "    javax.servlet.http.HttpServlet.service(HttpServlet.java:735)"                                                   
[15] "    javax.servlet.http.HttpServlet.service(HttpServlet.java:848)"                                                   
[16] "    org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684)"                                         
[17] "    org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:503)"                                     
[18] "    org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)"                             
[19] "    org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:429)"                                      
[20] "    org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)"                              
[21] "    org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)"                                  
[22] "    org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)"                          
[23] "    org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)"                                
[24] "    water.JettyHTTPD$LoginHandler.handle(JettyHTTPD.java:197)"                                                      
[25] "    org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)"                          
[26] "    org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)"                                
[27] "    org.eclipse.jetty.server.Server.handle(Server.java:370)"                                                        
[28] "    org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494)"                 
[29] "    org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:53)"                  
[30] "    org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:971)"                
[31] "    org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1033)"
[32] "    org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)"                                               
[33] "    org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)"                                          
[34] "    org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:72)"                         
[35] "    org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:264)"                   
[36] "    org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)"                               
[37] "    org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)"                                
[38] "    java.lang.Thread.run(Thread.java:748)"                                                                          

Error in .h2o.doSafeREST(h2oRestApiVersion = h2oRestApiVersion, urlSuffix = page,  : 


ERROR MESSAGE:

0

1 Ответ

0 голосов
/ 27 июня 2018

Ошибка говорит, что она не может сделать таблицу лидеров. Как говорит Лорен, это может быть ошибкой, но это угловой случай. Вместо этого просто не делайте этого:

max_runtime_secs = 0,
max_models = NULL, 

Установите одно или другое (или оба) на ненулевое значение. Иначе ни одна модель не будет построена, и нет смысла называть h2o.automl(). Смотри http://docs.h2o.ai/h2o/latest-stable/h2o-docs/automl.html#required-stopping-parameters

Настройка max_models=1 может показаться самым простым решением, если вы хотите, чтобы h2o.automl() выполнял минимальные усилия машины.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...