xgboost R パッケージを使用してモデルをトレーニングしました。C/C++ 環境で予測を行いたい。トレーニング済みのモデルを R から保存し、C コードに読み込むことに成功しました。
R で使用したテスト データを (DMatrix として) 保存し、それを C プログラムに読み込んで、予測を行うことで、このコードをテストしたいと考えています。
RI では、xgb.Dmatrix.save() コマンドを使用して、テスト データをファイルに保存しました。私のCコードは次のようになります:
DMatrixHandle d = 0;
int y = XGDMatrixCreateFromFile("test_data.DMatrix",1,&d);
このコードはコンパイルされますが、実行時に次のエラーで失敗します。
dmlc-core/include/dmlc/logging.h:245: [13:57:27] src/data/data.cc:51: チェックに失敗しました: (バージョン) == (kVersion) MetaInfo: 無効な形式
xgboost に適切な形式で保存/ロードするように指示する方法について何か提案はありますか?
どんな手がかりも役に立ちます。