Commit 73e689b7 authored by Tsukasa OMOTO's avatar Tsukasa OMOTO Committed by Guolin Ke
Browse files

Update docs (#776)

* docs: add Advanced-Topic TOC

* docs: add title header to Advanced-Topic.md

* docs: convert development.md to development.rst

`pandoc --columns=200 -f markdown_github -t rst -o development.rst development.md`

* docs: update index.rst
parent a4ab1553
Development Guide
==================
Algorithms
----------
Refer to [Features](https://github.com/Microsoft/LightGBM/wiki/Features) to get important algorithms used in LightGBM.
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 |
### API Documents
LightGBM support use [doxygen](http://www.stack.nl/~dimitri/doxygen/) to generate documents for classes and functions.
C API
-----
Refere to the comments in [c_api.h](https://github.com/Microsoft/LightGBM/blob/master/include/LightGBM/c_api.h).
High level Language package
---------------------------
Follow the implementation of [python-package](https://github.com/Microsoft/LightGBM/tree/master/python-package/lightgbm).
Ask Questions
-------------
Feel free to open [issues](https://github.com/Microsoft/LightGBM/issues) if you met problems.
Development Guide
=================
Algorithms
----------
Refer to `Features <https://github.com/Microsoft/LightGBM/wiki/Features>`__ to get important algorithms used in LightGBM.
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 |
+---------------------+------------------------------------------------------------------------------------------------------------------------------------+
API Documents
~~~~~~~~~~~~~
LightGBM support use `doxygen <http://www.stack.nl/~dimitri/doxygen/>`__ to generate documents for classes and functions.
C API
-----
Refere to the comments in `c\_api.h <https://github.com/Microsoft/LightGBM/blob/master/include/LightGBM/c_api.h>`__.
High level Language package
---------------------------
Follow the implementation of `python-package <https://github.com/Microsoft/LightGBM/tree/master/python-package/lightgbm>`__.
Ask Questions
-------------
Feel free to open `issues <https://github.com/Microsoft/LightGBM/issues>`__ if you met problems.
......@@ -16,6 +16,7 @@ Welcome to LightGBM's documentation!
Features <https://github.com/Microsoft/LightGBM/wiki/Features>
Experiments <https://github.com/Microsoft/LightGBM/wiki/Experiments>
Parameters <Parameters>
Advanced Topics <Advanced-Topic>
Parameters Tuning <Parameters-tuning>
Python API Reference <python/lightgbm>
Parallel Learning Guide <https://github.com/Microsoft/LightGBM/wiki/Parallel-Learning-Guide>
......
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