Я пытаюсь запустить xgboost и получаю сообщение об ошибке, пытающееся преобразовать тип файла libsvm в xgbmatrix.Внешняя память не включена в mingw 'на XGboost
dtrain = xgb.DMatrix('train#dtrain.cache')
XGBoostError: b'[16:45:24] src/data/data.cc:248: External memory is not enabled in mingw'
кажется, вызвано
void DMatrix::SaveToLocalFile(const std::string& fname) {
data::SimpleCSRSource source;
source.CopyFrom(this);
std::unique_ptr<dmlc::Stream> fo(dmlc::Stream::Create(fname.c_str(), "w"));
source.SaveBinary(fo.get());
}
DMatrix* DMatrix::Create(std::unique_ptr<DataSource>&& source,
const std::string& cache_prefix) {
if (cache_prefix.length() == 0) {
return new data::SimpleDMatrix(std::move(source));
} else {
#if DMLC_ENABLE_STD_THREAD
return new data::SparsePageDMatrix(std::move(source), cache_prefix);
#else
LOG(FATAL) << "External memory is not enabled in mingw";
return nullptr;
#endif
}
}
На этой GitHub файле: https://github.com/dmlc/xgboost/blob/master/src/data/data.cc
Я не знаком с C поэтому у меня возникли проблемы отладки его.