2017-03-17 48 views
2

我正在使用H2O,在一個大型數據集上,有8百萬行和10列。我使用h2o.randomForest訓練了我的randomForest。該模型訓練良好,預測工作正確。現在我想將我的預測轉換爲data.frame。我這樣做:如何以快速的方式將我的H2O預測轉換爲data.frame

A2=h2o.predict(m1,Tr15_h2o) 
pred2=as.data.frame(A2) 

但它太慢,需要永遠。有沒有更快的方法來完成從H2o到data.frame或data.table的轉換?

回答

2

下面是一些代碼,演示瞭如何使用data.table包在後端,對我的MacBook一些基準沿:

library(h2o) 
h2o.init(nthreads = -1, max_mem_size = "16G") 
hf <- h2o.createFrame(rows = 10000000) 

options("h2o.use.data.table"=FALSE) #no data.table 
system.time(df <- as.data.frame(hf)) 
# user system elapsed 
# 224.387 13.274 272.252 

options("datatable.verbose"=TRUE) 
options("h2o.use.data.table"=TRUE) # use data.table 
system.time(df2 <- as.data.frame(hf)) 
# user system elapsed 
# 50.686 4.020 82.946 

你可以得到更詳細的信息使用data.table如果您在打開這個選項:options("datatable.verbose"=TRUE)

0

當輸出到預測數據框或將其轉換爲其他類型需要很長時間時,我們已經看到大型預測數據集的這個問題。我已經打開了以下JIRA現在跟蹤它:

https://0xdata.atlassian.net/browse/PUBDEV-4166

+0

感謝您的快速響應。希望這個也能快速解決。 :) –

0

是有一些新的選項中打開使用data.table::fread加快步伐。鍵入h2o:::as.data.frame.H2OFrame可查看包含選項或H2O發佈說明的少量R源代碼。請同時嘗試從dev開始的最新fread,現在平行截至昨天。

一旦用戶報告成功,我們可以默認打開默認打開。

相關問題