簡體   English   中英

在R環境中部署Amazon sagemaker生成的XGBoost模型

[英]Deploy an Amazon sagemaker-generated XGBoost model in R environment

我正在嘗試在R環境中部署XGBoost模型,該模型使用Amazon sagemaker進行了培訓。 sagemaker生成的模型存儲為Python泡菜對象。

使用R中的{reticulate}包,我可以將模型導入R。但是,與在同一測試數據集上直接在Amazon sagemaker上直接使用該模型相比,在R中本地使用該模型可以提供非常不同的預測。 我懷疑將python存儲的XGBoost模型轉換為XGBoost模型可能會有問題。這是我用來進行轉換的相關代碼:

library(reticulate)
library(xgboost)

model <- py_load_object("sagemaker-model")
# save the model locally, to be reload into R
model$save_model("local-model")
model_R = xgb.load("local-model")

我首先在本地保存“ sagemaker模型”,然后使用R讀回它的原因是因為我想在R中使用本機xgboost進行預測,而不是依賴於網狀結構進行預測。 但是,這些預測顯然是不正確的。

問題在於在Python中,xgboost需要np.array作為輸入。 因此,您必須使用Dmatrix函數轉換輸入。

像這樣:

dtrain <- xgb.DMatrix(train$data, label=train$label)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM