2

h2oパッケージインを使用しRてランダム フォレスト モデルを構築しています。私のタスクでは、テスト データを後で繰り返しスコアリングする必要があるため、ランダム フォレスト モデル オブジェクトを次のように保存します。

save("D:/model_random_forest.RData")

データをスコアリングするために、後で次のようにモデル オブジェクトをメモリに再度ロードします。

 load("D:/model_random_forest.RData")

しかし、私が使用して得点するとき

scores <- h2o.predict(model_random_forest, test_data) 

次のエラーが表示されます

    ERROR: Unexpected HTTP Status code: 404 Not Found (url =     http://127.0.0.1:54321/3/Predictions/models/DRF_model_R_1442519642868_26/frames/test17_normal.hex_2)

water.exceptions.H2OKeyNotFoundArgumentException
 [1] "water.api.ModelMetricsHandler.predict(ModelMetricsHandler.java:203)"   
 [2] "sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)"           
 [3] "sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)"           
 [4] "sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)"       
 [5] "java.lang.reflect.Method.invoke(Unknown Source)"                       
 [6] "water.api.Handler.handle(Handler.java:58)"                             
 [7] "water.api.RequestServer.handle(RequestServer.java:637)"                
 [8] "water.api.RequestServer.serve(RequestServer.java:578)"                 
 [9] "water.JettyHTTPD$H2oDefaultServlet.doGeneric(JettyHTTPD.java:617)"     
 [10] "water.JettyHTTPD$H2oDefaultServlet.doPost(JettyHTTPD.java:565)"          
 [11] "javax.servlet.http.HttpServlet.service(HttpServlet.java:755)"          
 [12] "javax.servlet.http.HttpServlet.service(HttpServlet.java:848)"          
 [13]     "org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684)"

Error in .h2o.doSafeREST(conn = conn, h2oRestApiVersion = h2oRestApiVersion,    : 
  Object 'DRF_model_R_1442519642868_26' not found in function: predict for  argument: model

R パッケージを使用してモデルを構築すると、保存、読み込み、およびスコアリングのアプローチ全体がうまく機能しますが、ここではどういうわけか失敗します。誰かがそれに対する解決策を提供してもらえますか? データをスコアリングするたびにモデルを再構築し続けることはできません。

モデルが新しく構築され、まだメモリに存在する場合、スコアリングはスムーズに行われるため、H2o 接続は問題ないようです。

4

1 に答える 1