我在远程服务器上运行H2O 3.10.5.3(在hadoop cdh5.8上),使用R(3.4.1)和'h2o.init(startH2O = F,port = 54321)'连接到我的本地机器。
以下代码可以正常使用:
Train.hex <- as.h2o(iris)
h2o.gbm(x="Sepal.Length", y="Petal.Width", training_frame = Train.hex)
但xgboost不起作用并生成以下错误消息:
h2o.xgboost(x="Sepal.Length", y="Petal.Width", training_frame = Train.hex)
ERROR: Unexpected HTTP Status code: 500 Server Error (url = http://localhost:54321/3/ModelBuilders/xgboost)
java.lang.ArrayIndexOutOfBoundsException
[1] "java.lang.ArrayIndexOutOfBoundsException: -1"
[2] " hex.ModelBuilder.make(ModelBuilder.java:117)"
[3] " water.api.ModelBuildersHandler.fetch(ModelBuildersHandler.java:35)"
[4] " sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)"
[5] " sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)"
[6] " sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)"
[7] " java.lang.reflect.Method.invoke(Method.java:498)"
[8] " water.api.Handler.handle(Handler.java:63)"
[9] " water.api.RequestServer.serve(RequestServer.java:448)"
[10] " water.api.RequestServer.doGeneric(RequestServer.java:297)"
[11] " water.api.RequestServer.doGet(RequestServer.java:221)"
[12] " javax.servlet.http.HttpServlet.service(HttpServlet.java:707)"
[13] " javax.servlet.http.HttpServlet.service(HttpServlet.java:820)"
[14] " org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684)"
[15] " org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:503)"
[16] " org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)"
[17] " org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:429)"
[18] " org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)"
[19] " org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)"
[20] " org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)"
[21] " org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)"
[22] " water.JettyHTTPD$LoginHandler.handle(JettyHTTPD.java:183)"
[23] " org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)"
[24] " org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)"
[25] " org.eclipse.jetty.server.Server.handle(Server.java:366)"
[26] " org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494)"
[27] " org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:53)"
[28] " org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:971)"
[29] " org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1033)"
[30] " org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)"
[31] " org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)"
[32] " org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:72)"
[33] " org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:264)"
[34] " org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)"
[35] " org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)"
[36] " java.lang.Thread.run(Thread.java:745)"
Error in .h2o.doSafeREST(h2oRestApiVersion = h2oRestApiVersion, urlSuffix = page, :
ERROR MESSAGE:
-1
任何人都可以帮我理解发生了什么吗?
非常感谢, KERE
答案 0 :(得分:1)
不幸的是,Windows暂时不支持H2O Xgboost
,因为H2O
的{{3}}表示:
限制
本节提供了XGBoost限制的列表-其中一些 将在以后的版本中解决。
...
- Windows不支持XGBoost。
...
答案 1 :(得分:0)
XGBoost 在 Windows 上不受支持。
限制列表包括:
- Xstrongo在 Windows 上不受支持。
- 支持的平台列表包括:Linux或OS X
遇到相同问题时,我打开我的 COLAB 帐户,然后在此尝试。它确实对我有用。