Skip to content

Commit

Permalink
Update docs (#776)
Browse files Browse the repository at this point in the history
* 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
  • Loading branch information
henry0312 authored and guolinke committed Oct 9, 2017
1 parent 7f641a1 commit b241cc3
Show file tree
Hide file tree
Showing 3 changed files with 87 additions and 61 deletions.
61 changes: 0 additions & 61 deletions docs/development.md

This file was deleted.

86 changes: 86 additions & 0 deletions docs/development.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
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.
1 change: 1 addition & 0 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -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>
Expand Down

0 comments on commit b241cc3

Please sign in to comment.