1. 06 Mar, 2020 1 commit
  2. 05 Mar, 2020 1 commit
    • Guolin Ke's avatar
      speed up `FindBestThresholdFromHistogram` (#2867) · 77d92b7c
      Guolin Ke authored
      * speed up for const hessian
      
      * rename template
      
      * some refactorings
      
      * refine
      
      * refine
      
      * simplify codes
      
      * fix random in feature histogram
      
      * code refine
      
      * refine
      
      * try fix
      
      * make gcc happy
      
      * remove timer
      
      * rollback some changes
      
      * more templates
      
      * fix a bug
      
      * reduce the cost of timer
      
      * fix gpu
      
      * fix bug
      
      * fix gpu
      77d92b7c
  3. 04 Mar, 2020 1 commit
  4. 02 Mar, 2020 1 commit
  5. 25 Feb, 2020 1 commit
  6. 08 Feb, 2020 1 commit
  7. 02 Feb, 2020 1 commit
    • Guolin Ke's avatar
      Support both row-wise and col-wise multi-threading (#2699) · 509c2e50
      Guolin Ke authored
      
      
      * commit
      
      * fix a bug
      
      * fix bug
      
      * reset to track changes
      
      * refine the auto choose logic
      
      * sort the time stats output
      
      * fix include
      
      * change  multi_val_bin_sparse_threshold
      
      * add cmake
      
      * add _mm_malloc and _mm_free for cross platform
      
      * fix cmake bug
      
      * timer for split
      
      * try to fix cmake
      
      * fix tests
      
      * refactor DataPartition::Split
      
      * fix test
      
      * typo
      
      * formating
      
      * Revert "formating"
      
      This reverts commit 5b8de4f7fb9d975ee23701d276a66d40ee6d4222.
      
      * add document
      
      * [R-package] Added tests on use of force_col_wise and force_row_wise in training (#2719)
      
      * naming
      
      * fix gpu code
      
      * Update include/LightGBM/bin.h
      Co-Authored-By: default avatarJames Lamb <jaylamb20@gmail.com>
      
      * Update src/treelearner/ocl/histogram16.cl
      
      * test: swap compilers for CI
      
      * fix omp
      
      * not avx2
      
      * no aligned for feature histogram
      
      * Revert "refactor DataPartition::Split"
      
      This reverts commit 256e6d9641ade966a1f54da1752e998a1149b6f8.
      
      * slightly refactor data partition
      
      * reduce the memory cost
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      509c2e50
  8. 15 Nov, 2019 1 commit
  9. 11 Nov, 2019 1 commit
  10. 01 Nov, 2019 1 commit
  11. 07 Oct, 2019 1 commit
  12. 22 Sep, 2019 1 commit
  13. 08 Sep, 2019 1 commit
    • CharlesAuguste's avatar
      [python] Improved python tree plots (#2304) · f52be9be
      CharlesAuguste authored
      * Some basic changes to the plot of the trees to make them readable.
      
      * Squeezed the information in the nodes.
      
      * Added colouring when a dictionnary mapping the features to the constraints is passed.
      
      * Fix spaces.
      
      * Added data percentage as an option in the nodes.
      
      * Squeezed the information in the leaves.
      
      * Important information is now in bold.
      
      * Added a legend for the color of monotone splits.
      
      * Changed "split_gain" to "gain" and "internal_value" to "value".
      
      * Sqeezed leaves a bit more.
      
      * Changed description in the legend.
      
      * Revert "Sqeezed leaves a bit more."
      
      This reverts commit dd8bf14a3ba604b0dfae3b7bb1c64b6784d15e03.
      
      * Increased the readability for the gain.
      
      * Tidied up the legend.
      
      * Added the data percentage in the leaves.
      
      * Added the monotone constraints to the dumped model.
      
      * Monotone constraints are now specified automatically when plotting trees.
      
      * Raise an exception instead of the bug that was here before.
      
      * Removed operators on the branches for a clearer design.
      
      * Small cleaning of the code.
      
      * Setting a monotone constraint on a categorical feature now returns an exception instead of doing nothing.
      
      * Fix bug when monotone constraints are empty.
      
      * Fix another bug when monotone constraints are empty.
      
      * Variable name change.
      
      * Added is / isn't on every edge of the trees.
      
      * Fix test "tree_create_digraph".
      
      * Add new test for plotting trees with monotone constraints.
      
      * Typo.
      
      * Update documentation of categorical features.
      
      * Typo.
      
      * Information in nodes more explicit.
      
      * Used regular strings instead of raw strings.
      
      * Small refactoring.
      
      * Some cleaning.
      
      * Added future statement.
      
      * Changed output for consistency.
      
      * Updated documentation.
      
      * Added comments for colors.
      
      * Changed text on edges for more clarity.
      
      * Small refactoring.
      
      * Modified text in leaves for consistency with nodes.
      
      * Updated default values and documentaton for consistency.
      
      * Replaced CHECK with Log::Fatal for user-friendliness.
      
      * Updated tests.
      
      * Typo.
      
      * Simplify imports.
      
      * Swapped count and weight to improve readibility of the leaves in the plotted trees.
      
      * Thresholds in bold.
      
      * Made information in nodes written in a specific order.
      
      * Added information to clarify legend.
      
      * Code cleaning.
      f52be9be
  14. 14 Aug, 2019 1 commit
  15. 18 Jul, 2019 1 commit
  16. 13 Apr, 2019 2 commits
  17. 11 Apr, 2019 1 commit
  18. 04 Apr, 2019 1 commit
    • remcob-gr's avatar
      Add Cost Effective Gradient Boosting (#2014) · 76102284
      remcob-gr authored
      * Add configuration parameters for CEGB.
      
      * Add skeleton CEGB tree learner
      
      Like the original CEGB version, this inherits from SerialTreeLearner.
      Currently, it changes nothing from the original.
      
      * Track features used in CEGB tree learner.
      
      * Pull CEGB tradeoff and coupled feature penalty from config.
      
      * Implement finding best splits for CEGB
      
      This is heavily based on the serial version, but just adds using the coupled penalties.
      
      * Set proper defaults for cegb parameters.
      
      * Ensure sanity checks don't switch off CEGB.
      
      * Implement per-data-point feature penalties in CEGB.
      
      * Implement split penalty and remove unused parameters.
      
      * Merge changes from CEGB tree learner into serial tree learner
      
      * Represent features_used_in_data by a bitset, to reduce the memory overhead of CEGB, and add sanity checks for the lengths of the penalty vectors.
      
      * Fix bug where CEGB would incorrectly penalise a previously used feature
      
      The tree learner did not update the gains of previously computed leaf splits when splitting a leaf elsewhere in the tree.
      This caused it to prefer new features due to incorrectly penalising splitting on previously used features.
      
      * Document CEGB parameters and add them to the appropriate section.
      
      * Remove leftover reference to cegb tree learner.
      
      * Remove outdated diff.
      
      * Fix warnings
      
      * Fix minor issues identified by @StrikerRUS.
      
      * Add docs section on CEGB, including citation.
      
      * Fix link.
      
      * Fix CI failure.
      
      * Add some unit tests
      
      * Fix pylint issues.
      
      * Fix remaining pylint issue
      76102284
  19. 01 Apr, 2019 1 commit
  20. 26 Mar, 2019 1 commit
  21. 02 Feb, 2019 1 commit
  22. 30 Jan, 2019 1 commit
    • Guolin Ke's avatar
      fix nan in eval results (#1973) · feeaf38f
      Guolin Ke authored
      * always save the score of the first round in early stopping
      
      fix #1971
      
      * avoid using std::log on non-positive numbers
      
      * remove unnecessary changes
      
      * add tests
      
      * Update test_sklearn.py
      
      * enhanced tests
      feeaf38f
  23. 10 Oct, 2018 1 commit
  24. 20 Apr, 2018 1 commit
  25. 16 Jan, 2018 1 commit
  26. 26 Nov, 2017 1 commit
    • Guolin Ke's avatar
      Speed up saving and loading model (#1083) · 8a5ec366
      Guolin Ke authored
      * remove protobuf
      
      * add version number
      
      * remove pmml script
      
      * use float for split gain
      
      * fix warnings
      
      * refine the read model logic of gbdt
      
      * fix compile error
      
      * improve decode speed
      
      * fix some bugs
      
      * fix double accuracy problem
      
      * fix bug
      
      * multi-thread save model
      
      * speed up save model to string
      
      * parallel save/load model
      
      * fix some warnings.
      
      * fix warnings.
      
      * fix a bug
      
      * remove debug output
      
      * fix doc
      
      * fix max_bin warning in tests.
      
      * fix max_bin warning
      
      * fix pylint
      
      * clean code for stringToArray
      
      * clean code for TToString
      
      * remove max_bin
      
      * replace "class" with typename
      8a5ec366
  27. 16 Nov, 2017 1 commit
  28. 14 Nov, 2017 1 commit
  29. 09 Nov, 2017 1 commit
    • wxchan's avatar
      add init_score & test cpp and python result consistency (#1007) · bc0579c8
      wxchan authored
      * add init_score & test cpp and python result consistency
      
      * try fix common.h
      
      * Fix tests (#3)
      
      * update atof
      
      * fix bug
      
      * fix tests.
      
      * fix bug
      
      * fix dtypes
      
      * fix categorical feature override
      
      * fix protobuf on vs build (#1004)
      
      * [optional] support protobuf
      
      * fix windows/LightGBM.vcxproj
      
      * add doc
      
      * fix doc
      
      * fix vs support (#2)
      
      * fix vs support
      
      * fix cmake
      
      * fix #1012
      
      * [python] add network config api  (#1019)
      
      * add network
      
      * update doc
      
      * add float tolerance in bin finder.
      
      * fix a bug
      
      * update tests
      
      * add double torelance on tree model
      
      * fix tests
      
      * simplify the double comparison
      
      * fix lightsvm zero base
      
      * move double tolerance to the bin finder.
      
      * fix pylint
      
      * clean test.sh
      
      * add sklearn test
      
      * remove underline
      
      * clean codes
      
      * set random_state=None
      
      * add last line
      
      * fix doc
      
      * rename file
      
      * try fix test
      bc0579c8
  30. 12 Oct, 2017 1 commit
  31. 08 Oct, 2017 1 commit
    • Tony-Y's avatar
      Change functions in common.h into template functions (#969) (#973) · 87fa8b54
      Tony-Y authored
      * Fix coding style (#969)
      
      Function names must be in the "Pascal Case" style.
      
      * check_elements_interval_closed to CheckElementsIntervalClosed
      
      * obtain_min_max_sum to ObtainMinMaxSum
      
      * Change functions in common.h into template functions (#969)
      
      * CheckElementsIntervalClosed
      
      * ObtainMinMaxSum
      
      These two functions were changed into template functions.
      
      * Remove an unpreferable overload
      
      * remove an overload of the function ObtainMinMaxSum
      
      * Use stringstream to format T type
      87fa8b54
  32. 07 Oct, 2017 1 commit
    • Tony-Y's avatar
      Fix coding style (#969) (#970) · 8425fbea
      Tony-Y authored
      Function names must be in the "Pascal Case" style.
      
      * check_elements_interval_closed to CheckElementsIntervalClosed
      
      * obtain_min_max_sum to ObtainMinMaxSum
      8425fbea
  33. 02 Sep, 2017 1 commit
  34. 28 Aug, 2017 1 commit
  35. 18 Aug, 2017 1 commit
  36. 30 Jul, 2017 1 commit
    • Guolin Ke's avatar
      Better missing value handle (#747) · 00cb04a2
      Guolin Ke authored
      * finish the data loading part
      
      * allow prediction.
      
      * fix bug for decision type.
      
      * finish split finding part
      
      * fix bugs.
      
      * bug fixed. add a test .
      
      * fix pep8 .
      
      * update documents.
      
      * fix test bugs.
      
      * fix a format
      
      * fix import error in python test.
      
      * disable missing handle in categorial features.
      
      * fix a bug.
      
      * add more tests.
      
      * fix pep8
      
      * fix bugs.
      
      * remove the missing handle code for categorical feature.
      00cb04a2
  37. 17 Jul, 2017 1 commit
    • olofer's avatar
      cross entropy metrics and objective (#685) · f8597c93
      olofer authored
      * Created objectives and metrics xentropy and xentropy1
      
      * Some coment and code cleanup.
      
      * Added Kullback-Leibler version of metric. Changed some warning messages.
      
      * Fixed sign error in KL-divergence calc.
      
      * Removed __PRETTY_FUNCTION__.
      
      * Fixed better name for alternative xentropy parameterization.
      Documented details on the objectives / metrics in code comments.
      
      * Common code for label interval checks. Cleanups.
      
      * Use common utility for various weight property checks.
      f8597c93
  38. 06 Jun, 2017 1 commit
  39. 03 Jun, 2017 1 commit