Development Guide¶
Classes And Code Structure¶
Important Classes¶
| Class | description |
| —– | ——— |
| Application
| The entrance of application, including training and prediction logic |
| Bin
| Data structure used for store feature discrete values(converted from float values) |
| Boosting
| Boosting interface, current implementation is GBDT and DART |
| Config
| Store parameters and configurations|
| Dataset
| Store information of dataset |
| DatasetLoader
| Used to construct dataset |
| Feature
| Store One column feature |
| Metric
| Evaluation metrics |
| Network
| Newwork interfaces and communication algorithms |
| ObjectiveFunction
| Objective function used to train |
| Tree
| Store information of tree model |
| TreeLearner
| Used to learn trees |
Code Structure¶
| Path | description |
| —– | ——— |
| ./include | header files |
| ./include/utils | some common functions |
| ./src/application | Implementations of training and prediction logic |
| ./src/boosting | Implementations of Boosting |
| ./src/io | Implementations of IO relatived classes, including Bin
, Config
, Dataset
, DatasetLoader
, Feature
and Tree
|
| ./src/metric | Implementations of metrics |
| ./src/network | Implementations of network functions |
| ./src/objective | Implementations of objective functions |
| ./src/treelearner | Implementations of tree learners |
High level Language package¶
Follow the implementation of python-package.