Commit 2e5e9134 authored by Guolin Ke's avatar Guolin Ke
Browse files

clean code

parent 63d974bc
......@@ -47,7 +47,7 @@ public:
* \brief Training logic
* \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 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
*/
virtual bool TrainOneIter(const score_t* gradient, const score_t* hessian, bool is_eval) = 0;
......@@ -61,7 +61,7 @@ public:
/*!
* \brief Get current training score
* \param out_len lenght of returned score
* \param out_len length of returned score
* \return training score
*/
virtual const score_t* GetTrainingScore(data_size_t* out_len) const = 0;
......
......@@ -8,7 +8,7 @@
* Except following:
* 1. gradients and hessians.
* 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
......@@ -40,7 +40,7 @@ typedef void* BoosterHandle;
DllExport const char* LGBM_GetLastError();
// --- start Dataset inferfaces
// --- start Dataset interface
/*!
* \brief load data set from file like the command_line LightGBM do
......@@ -71,7 +71,7 @@ DllExport int LGBM_CreateDatasetFromBinaryFile(const char* filename,
* \param indices findex
* \param data fvalue
* \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 num_col number of columns; when it's set to 0, then guess from data
* \param parameters additional parameters
......@@ -98,7 +98,7 @@ DllExport int LGBM_CreateDatasetFromCSR(const void* indptr,
* \param indices findex
* \param data fvalue
* \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 num_row number of rows; when it's set to 0, then guess from data
* \param parameters additional parameters
......@@ -206,7 +206,7 @@ DllExport int LGBM_DatasetGetNumFeature(DatesetHandle handle,
/*!
* \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_names names of validation data sets
* \param n_valid_datas number of validation set
......@@ -222,7 +222,7 @@ DllExport int LGBM_BoosterCreate(const DatesetHandle train_data,
BoosterHandle* out);
/*!
* \brief load an exsiting boosting from model file
* \brief load an existing boosting from model file
* \param filename filename of model
* \param out handle of created Booster
* \return 0 when success, -1 when failure happens
......@@ -261,7 +261,7 @@ DllExport int LGBM_BoosterUpdateOneIterCustom(BoosterHandle handle,
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 data 0:training data, 1: 1st valid data, 2:2nd valid data ...
* \param out_len len of output result
......@@ -285,7 +285,7 @@ DllExport int LGBM_BoosterGetScore(BoosterHandle handle,
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
* \param handle handle
* \param data 0:training data, 1: 1st valid data, 2:2nd valid data ...
......@@ -306,7 +306,7 @@ DllExport int LGBM_BoosterGetPredict(BoosterHandle handle,
* \param indices findex
* \param data fvalue
* \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 num_col number of columns; when it's set to 0, then guess from data
* \param predict_type
......
......@@ -81,7 +81,7 @@ public:
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
......@@ -292,7 +292,7 @@ public:
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
......
......@@ -212,7 +212,7 @@ DllExport int LGBM_CreateDatasetFromMat(const void* data,
ret = loader.CostructFromSampleData(sample_values, nrow);
} else {
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)
......@@ -274,7 +274,7 @@ DllExport int LGBM_CreateDatasetFromCSR(const void* indptr,
ret = loader.CostructFromSampleData(sample_values, nrow);
} else {
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)
......@@ -322,7 +322,7 @@ DllExport int LGBM_CreateDatasetFromCSC(const void* col_ptr,
ret = loader.CostructFromSampleData(sample_values, nrow);
} else {
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)
......
......@@ -42,18 +42,18 @@ void Dataset::FinishLoad() {
}
}
void Dataset::CopyFeatureBinMapperTo(Dataset* dataset, bool is_enable_sparse) const {
dataset->features_.clear();
void Dataset::CopyFeatureMapperFrom(const Dataset* dataset, bool is_enable_sparse) {
features_.clear();
// copy feature bin mapper data
for (Feature* feature : features_) {
dataset->features_.push_back(new Feature(feature->feature_index(),
new BinMapper(*feature->bin_mapper()), dataset->num_data_, is_enable_sparse));
for (Feature* feature : dataset->features_) {
features_.push_back(new Feature(feature->feature_index(),
new BinMapper(*feature->bin_mapper()), num_data_, is_enable_sparse));
}
dataset->num_class_ = num_class_;
dataset->used_feature_map_ = used_feature_map_;
dataset->num_features_ = static_cast<int>(dataset->features_.size());
dataset->num_total_features_ = num_total_features_;
dataset->feature_names_ = feature_names_;
num_class_ = dataset->num_class_;
used_feature_map_ = dataset->used_feature_map_;
num_features_ = static_cast<int>(features_.size());
num_total_features_ = dataset->num_total_features_;
feature_names_ = dataset->feature_names_;
}
std::vector<const BinMapper*> Dataset::GetBinMappers() const {
......
......@@ -219,7 +219,7 @@ Dataset* DatasetLoader::LoadFromFileAlignWithOtherDataset(const char* filename,
dataset->num_data_ = static_cast<data_size_t>(text_data.size());
// initialize label
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
ExtractFeaturesFromMemory(text_data, parser, dataset);
text_data.clear();
......@@ -230,7 +230,7 @@ Dataset* DatasetLoader::LoadFromFileAlignWithOtherDataset(const char* filename,
num_global_data = dataset->num_data_;
// initialize label
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
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