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.