"git@developer.sourcefind.cn:tianlh/lightgbm-dcu.git" did not exist on "65ee8ab272706d3b8795fc00478c6b1170ecbdbe"
Commit 2e5e9134 authored by Guolin Ke's avatar Guolin Ke
Browse files

clean code

parent 63d974bc
...@@ -47,7 +47,7 @@ public: ...@@ -47,7 +47,7 @@ public:
* \brief Training logic * \brief Training logic
* \param gradient nullptr for using default objective, otherwise use self-defined boosting * \param gradient nullptr for using default objective, otherwise use self-defined boosting
* \param hessian nullptr for using default objective, otherwise use self-defined boosting * \param hessian nullptr for using default objective, otherwise use self-defined boosting
* \param is_eval true if need evalulation or early stop * \param is_eval true if need evaluation or early stop
* \return True if meet early stopping or cannot boosting * \return True if meet early stopping or cannot boosting
*/ */
virtual bool TrainOneIter(const score_t* gradient, const score_t* hessian, bool is_eval) = 0; virtual bool TrainOneIter(const score_t* gradient, const score_t* hessian, bool is_eval) = 0;
...@@ -61,7 +61,7 @@ public: ...@@ -61,7 +61,7 @@ public:
/*! /*!
* \brief Get current training score * \brief Get current training score
* \param out_len lenght of returned score * \param out_len length of returned score
* \return training score * \return training score
*/ */
virtual const score_t* GetTrainingScore(data_size_t* out_len) const = 0; virtual const score_t* GetTrainingScore(data_size_t* out_len) const = 0;
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* Except following: * Except following:
* 1. gradients and hessians. * 1. gradients and hessians.
* 2. Get current score for training data and validation * 2. Get current score for training data and validation
* The reason is becaused they are called frequently, the type-conversion on them maybe time cost. * The reason is because they are called frequently, the type-conversion on them maybe time cost.
*/ */
#ifdef __cplusplus #ifdef __cplusplus
...@@ -40,7 +40,7 @@ typedef void* BoosterHandle; ...@@ -40,7 +40,7 @@ typedef void* BoosterHandle;
DllExport const char* LGBM_GetLastError(); DllExport const char* LGBM_GetLastError();
// --- start Dataset inferfaces // --- start Dataset interface
/*! /*!
* \brief load data set from file like the command_line LightGBM do * \brief load data set from file like the command_line LightGBM do
...@@ -71,7 +71,7 @@ DllExport int LGBM_CreateDatasetFromBinaryFile(const char* filename, ...@@ -71,7 +71,7 @@ DllExport int LGBM_CreateDatasetFromBinaryFile(const char* filename,
* \param indices findex * \param indices findex
* \param data fvalue * \param data fvalue
* \param data_type * \param data_type
* \param nindptr number of rows in the matix + 1 * \param nindptr number of rows in the matrix + 1
* \param nelem number of nonzero elements in the matrix * \param nelem number of nonzero elements in the matrix
* \param num_col number of columns; when it's set to 0, then guess from data * \param num_col number of columns; when it's set to 0, then guess from data
* \param parameters additional parameters * \param parameters additional parameters
...@@ -98,7 +98,7 @@ DllExport int LGBM_CreateDatasetFromCSR(const void* indptr, ...@@ -98,7 +98,7 @@ DllExport int LGBM_CreateDatasetFromCSR(const void* indptr,
* \param indices findex * \param indices findex
* \param data fvalue * \param data fvalue
* \param data_type * \param data_type
* \param ncol_ptr number of rows in the matix + 1 * \param ncol_ptr number of rows in the matrix + 1
* \param nelem number of nonzero elements in the matrix * \param nelem number of nonzero elements in the matrix
* \param num_row number of rows; when it's set to 0, then guess from data * \param num_row number of rows; when it's set to 0, then guess from data
* \param parameters additional parameters * \param parameters additional parameters
...@@ -206,7 +206,7 @@ DllExport int LGBM_DatasetGetNumFeature(DatesetHandle handle, ...@@ -206,7 +206,7 @@ DllExport int LGBM_DatasetGetNumFeature(DatesetHandle handle,
/*! /*!
* \brief create an new boosting learner * \brief create an new boosting learner
* \param train_data traning data set * \param train_data training data set
* \param valid_datas validation data sets * \param valid_datas validation data sets
* \param valid_names names of validation data sets * \param valid_names names of validation data sets
* \param n_valid_datas number of validation set * \param n_valid_datas number of validation set
...@@ -222,7 +222,7 @@ DllExport int LGBM_BoosterCreate(const DatesetHandle train_data, ...@@ -222,7 +222,7 @@ DllExport int LGBM_BoosterCreate(const DatesetHandle train_data,
BoosterHandle* out); BoosterHandle* out);
/*! /*!
* \brief load an exsiting boosting from model file * \brief load an existing boosting from model file
* \param filename filename of model * \param filename filename of model
* \param out handle of created Booster * \param out handle of created Booster
* \return 0 when success, -1 when failure happens * \return 0 when success, -1 when failure happens
...@@ -261,7 +261,7 @@ DllExport int LGBM_BoosterUpdateOneIterCustom(BoosterHandle handle, ...@@ -261,7 +261,7 @@ DllExport int LGBM_BoosterUpdateOneIterCustom(BoosterHandle handle,
int* is_finished); int* is_finished);
/*! /*!
* \brief get evaluation for training data and validation datas * \brief get evaluation for training data and validation data
* \param handle handle * \param handle handle
* \param data 0:training data, 1: 1st valid data, 2:2nd valid data ... * \param data 0:training data, 1: 1st valid data, 2:2nd valid data ...
* \param out_len len of output result * \param out_len len of output result
...@@ -285,7 +285,7 @@ DllExport int LGBM_BoosterGetScore(BoosterHandle handle, ...@@ -285,7 +285,7 @@ DllExport int LGBM_BoosterGetScore(BoosterHandle handle,
const float** out_result); const float** out_result);
/*! /*!
* \brief make prediction for training data and validation datas * \brief Get prediction for training data and validation data
this can be used to support customized eval function this can be used to support customized eval function
* \param handle handle * \param handle handle
* \param data 0:training data, 1: 1st valid data, 2:2nd valid data ... * \param data 0:training data, 1: 1st valid data, 2:2nd valid data ...
...@@ -306,7 +306,7 @@ DllExport int LGBM_BoosterGetPredict(BoosterHandle handle, ...@@ -306,7 +306,7 @@ DllExport int LGBM_BoosterGetPredict(BoosterHandle handle,
* \param indices findex * \param indices findex
* \param data fvalue * \param data fvalue
* \param data_type * \param data_type
* \param nindptr number of rows in the matix + 1 * \param nindptr number of rows in the matrix + 1
* \param nelem number of nonzero elements in the matrix * \param nelem number of nonzero elements in the matrix
* \param num_col number of columns; when it's set to 0, then guess from data * \param num_col number of columns; when it's set to 0, then guess from data
* \param predict_type * \param predict_type
......
...@@ -81,7 +81,7 @@ public: ...@@ -81,7 +81,7 @@ public:
void SetWeights(const float* weights, data_size_t len); void SetWeights(const float* weights, data_size_t len);
void SetQueryBoundaries(const data_size_t* QueryBoundaries, data_size_t len); void SetQueryBoundaries(const data_size_t* query_boundaries, data_size_t len);
/*! /*!
* \brief Set initial scores * \brief Set initial scores
...@@ -292,7 +292,7 @@ public: ...@@ -292,7 +292,7 @@ public:
std::vector<const BinMapper*> GetBinMappers() const; std::vector<const BinMapper*> GetBinMappers() const;
void CopyFeatureBinMapperTo(Dataset *dataset, bool is_enable_sparse) const; void CopyFeatureMapperFrom(const Dataset* dataset, bool is_enable_sparse);
/*! /*!
* \brief Get a feature pointer for specific index * \brief Get a feature pointer for specific index
......
...@@ -212,7 +212,7 @@ DllExport int LGBM_CreateDatasetFromMat(const void* data, ...@@ -212,7 +212,7 @@ DllExport int LGBM_CreateDatasetFromMat(const void* data,
ret = loader.CostructFromSampleData(sample_values, nrow); ret = loader.CostructFromSampleData(sample_values, nrow);
} else { } else {
ret = new Dataset(nrow, config.io_config.num_class); ret = new Dataset(nrow, config.io_config.num_class);
reinterpret_cast<const Dataset*>(*reference)->CopyFeatureBinMapperTo(ret, config.io_config.is_enable_sparse); ret->CopyFeatureMapperFrom(reinterpret_cast<const Dataset*>(*reference), config.io_config.is_enable_sparse);
} }
#pragma omp parallel for schedule(guided) #pragma omp parallel for schedule(guided)
...@@ -274,7 +274,7 @@ DllExport int LGBM_CreateDatasetFromCSR(const void* indptr, ...@@ -274,7 +274,7 @@ DllExport int LGBM_CreateDatasetFromCSR(const void* indptr,
ret = loader.CostructFromSampleData(sample_values, nrow); ret = loader.CostructFromSampleData(sample_values, nrow);
} else { } else {
ret = new Dataset(nrow, config.io_config.num_class); ret = new Dataset(nrow, config.io_config.num_class);
reinterpret_cast<const Dataset*>(*reference)->CopyFeatureBinMapperTo(ret, config.io_config.is_enable_sparse); ret->CopyFeatureMapperFrom(reinterpret_cast<const Dataset*>(*reference), config.io_config.is_enable_sparse);
} }
#pragma omp parallel for schedule(guided) #pragma omp parallel for schedule(guided)
...@@ -322,7 +322,7 @@ DllExport int LGBM_CreateDatasetFromCSC(const void* col_ptr, ...@@ -322,7 +322,7 @@ DllExport int LGBM_CreateDatasetFromCSC(const void* col_ptr,
ret = loader.CostructFromSampleData(sample_values, nrow); ret = loader.CostructFromSampleData(sample_values, nrow);
} else { } else {
ret = new Dataset(nrow, config.io_config.num_class); ret = new Dataset(nrow, config.io_config.num_class);
reinterpret_cast<const Dataset*>(*reference)->CopyFeatureBinMapperTo(ret, config.io_config.is_enable_sparse); ret->CopyFeatureMapperFrom(reinterpret_cast<const Dataset*>(*reference), config.io_config.is_enable_sparse);
} }
#pragma omp parallel for schedule(guided) #pragma omp parallel for schedule(guided)
......
...@@ -42,18 +42,18 @@ void Dataset::FinishLoad() { ...@@ -42,18 +42,18 @@ void Dataset::FinishLoad() {
} }
} }
void Dataset::CopyFeatureBinMapperTo(Dataset* dataset, bool is_enable_sparse) const { void Dataset::CopyFeatureMapperFrom(const Dataset* dataset, bool is_enable_sparse) {
dataset->features_.clear(); features_.clear();
// copy feature bin mapper data // copy feature bin mapper data
for (Feature* feature : features_) { for (Feature* feature : dataset->features_) {
dataset->features_.push_back(new Feature(feature->feature_index(), features_.push_back(new Feature(feature->feature_index(),
new BinMapper(*feature->bin_mapper()), dataset->num_data_, is_enable_sparse)); new BinMapper(*feature->bin_mapper()), num_data_, is_enable_sparse));
} }
dataset->num_class_ = num_class_; num_class_ = dataset->num_class_;
dataset->used_feature_map_ = used_feature_map_; used_feature_map_ = dataset->used_feature_map_;
dataset->num_features_ = static_cast<int>(dataset->features_.size()); num_features_ = static_cast<int>(features_.size());
dataset->num_total_features_ = num_total_features_; num_total_features_ = dataset->num_total_features_;
dataset->feature_names_ = feature_names_; feature_names_ = dataset->feature_names_;
} }
std::vector<const BinMapper*> Dataset::GetBinMappers() const { std::vector<const BinMapper*> Dataset::GetBinMappers() const {
......
...@@ -219,7 +219,7 @@ Dataset* DatasetLoader::LoadFromFileAlignWithOtherDataset(const char* filename, ...@@ -219,7 +219,7 @@ Dataset* DatasetLoader::LoadFromFileAlignWithOtherDataset(const char* filename,
dataset->num_data_ = static_cast<data_size_t>(text_data.size()); dataset->num_data_ = static_cast<data_size_t>(text_data.size());
// initialize label // initialize label
dataset->metadata_.Init(dataset->num_data_, dataset->num_class_, weight_idx_, group_idx_); dataset->metadata_.Init(dataset->num_data_, dataset->num_class_, weight_idx_, group_idx_);
train_data->CopyFeatureBinMapperTo(dataset, io_config_.is_enable_sparse); dataset->CopyFeatureMapperFrom(train_data, io_config_.is_enable_sparse);
// extract features // extract features
ExtractFeaturesFromMemory(text_data, parser, dataset); ExtractFeaturesFromMemory(text_data, parser, dataset);
text_data.clear(); text_data.clear();
...@@ -230,7 +230,7 @@ Dataset* DatasetLoader::LoadFromFileAlignWithOtherDataset(const char* filename, ...@@ -230,7 +230,7 @@ Dataset* DatasetLoader::LoadFromFileAlignWithOtherDataset(const char* filename,
num_global_data = dataset->num_data_; num_global_data = dataset->num_data_;
// initialize label // initialize label
dataset->metadata_.Init(dataset->num_data_, dataset->num_class_, weight_idx_, group_idx_); dataset->metadata_.Init(dataset->num_data_, dataset->num_class_, weight_idx_, group_idx_);
train_data->CopyFeatureBinMapperTo(dataset, io_config_.is_enable_sparse); dataset->CopyFeatureMapperFrom(train_data, io_config_.is_enable_sparse);
// extract features // extract features
ExtractFeaturesFromFile(filename, parser, used_data_indices, dataset); ExtractFeaturesFromFile(filename, parser, used_data_indices, dataset);
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment