Я обучил свою модель на R, используя XGBoost, и теперь мне нужно делать предсказания на C ++. Я пытаюсь загрузить файл модели в C ++, используя XGBoosterLoadModel
функция.
Мой код компилируется нормально, но он не может обнаружить мои функции модульного теста. Когда я удаляю вызов функции XGBoosterLoadModel
, все работает отлично, и я вижу свои юнит-тесты.
Вот что у меня в файле модульного теста. Любая подсказка о том, что мне не хватает, будет очень признательна:
#include <xgboost/c_api.h>
#include "stdafx.h"#include <google/gtest/gtest.h>
namespace UnitTests
{
TEST(XGBoost, HysteresisPeakDetection_WithEmptyInput_ReturnsFalse)
{
const char *fname;
BoosterHandle handle;
int a = XGBoosterLoadModel(handle, fname);
}
}
Вы должны сначала выделить свой дескриптор. этот код работает для меня:
BoosterHandle x;
XGBoosterCreate(0,0,&x);
int y = XGBoosterLoadModel(x,model_filename);
Других решений пока нет …