1. 28 Dec, 2022 1 commit
    • Yifei Liu's avatar
      Decouple Boosting Types (fixes #3128) (#4827) · fffd066c
      Yifei Liu authored
      
      
      * add parameter data_sample_strategy
      
      * abstract GOSS as a sample strategy(GOSS1), togetherwith origial GOSS (Normal Bagging has not been abstracted, so do NOT use it now)
      
      * abstract Bagging as a subclass (BAGGING), but original Bagging members in GBDT are still kept
      
      * fix some variables
      
      * remove GOSS(as boost) and Bagging logic in GBDT
      
      * rename GOSS1 to GOSS(as sample strategy)
      
      * add warning about use GOSS as boosting_type
      
      * a little ; bug
      
      * remove CHECK when "gradients != nullptr"
      
      * rename DataSampleStrategy to avoid confusion
      
      * remove and add some ccomments, followingconvention
      
      * fix bug about GBDT::ResetConfig (ObjectiveFunction inconsistencty bet…
      
      * add std::ignore to avoid compiler warnings (anpotential fails)
      
      * update Makevars and vcxproj
      
      * handle constant hessian
      
      move resize of gradient vectors out of sample strategy
      
      * mark override for IsHessianChange
      
      * fix lint errors
      
      * rerun parameter_generator.py
      
      * update config_auto.cpp
      
      * delete redundant blank line
      
      * update num_data_ when train_data_ is updated
      
      set gradients and hessians when GOSS
      
      * check bagging_freq is not zero
      
      * reset config_ value
      
      merge ResetBaggingConfig and ResetGOSS
      
      * remove useless check
      
      * add ttests in test_engine.py
      
      * remove whitespace in blank line
      
      * remove arguments verbose_eval and evals_result
      
      * Update tests/python_package_test/test_engine.py
      
      reduce num_boost_round
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      
      * Update tests/python_package_test/test_engine.py
      
      reduce num_boost_round
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      
      * Update tests/python_package_test/test_engine.py
      
      reduce num_boost_round
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      
      * Update tests/python_package_test/test_engine.py
      
      reduce num_boost_round
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      
      * Update tests/python_package_test/test_engine.py
      
      reduce num_boost_round
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      
      * Update tests/python_package_test/test_engine.py
      
      reduce num_boost_round
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      
      * Update src/boosting/sample_strategy.cpp
      
      modify warning about setting goss as `boosting_type`
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      
      * Update tests/python_package_test/test_engine.py
      
      replace load_boston() with make_regression()
      
      remove value checks of mean_squared_error in test_sample_strategy_with_boosting()
      
      * Update tests/python_package_test/test_engine.py
      
      add value checks of mean_squared_error in test_sample_strategy_with_boosting()
      
      * Modify warnning about using goss as boosting type
      
      * Update tests/python_package_test/test_engine.py
      
      add random_state=42 for make_regression()
      
      reduce the threshold of mean_square_error
      
      * Update src/boosting/sample_strategy.cpp
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      
      * remove goss from boosting types in documentation
      
      * Update src/boosting/bagging.hpp
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Update src/boosting/bagging.hpp
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Update src/boosting/goss.hpp
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Update src/boosting/goss.hpp
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * rename GOSS with GOSSStrategy
      
      * update doc
      
      * address comments
      
      * fix table in doc
      
      * Update include/LightGBM/config.h
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * update documentation
      
      * update test case
      
      * revert useless change in test_engine.py
      
      * add tests for evaluation results in test_sample_strategy_with_boosting
      
      * include <string>
      
      * change to assert_allclose in test_goss_boosting_and_strategy_equivalent
      
      * more tolerance in result checking, due to minor difference in results of gpu versions
      
      * change == to np.testing.assert_allclose
      
      * fix test case
      
      * set gpu_use_dp to true
      
      * change --report to --report-level for rstcheck
      
      * use gpu_use_dp=true in test_goss_boosting_and_strategy_equivalent
      
      * revert unexpected changes of non-ascii characters
      
      * revert unexpected changes of non-ascii characters
      
      * remove useless changes
      
      * allocate gradients_pointer_ and hessians_pointer when necessary
      
      * add spaces
      
      * remove redundant virtual
      
      * include <LightGBM/utils/log.h> for USE_CUDA
      
      * check for  in test_goss_boosting_and_strategy_equivalent
      
      * check for identity in test_sample_strategy_with_boosting
      
      * remove cuda  option in test_sample_strategy_with_boosting
      
      * Update tests/python_package_test/test_engine.py
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Update tests/python_package_test/test_engine.py
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      
      * ResetGradientBuffers after ResetSampleConfig
      
      * ResetGradientBuffers after ResetSampleConfig
      
      * ResetGradientBuffers after bagging
      
      * remove useless code
      
      * check objective_function_ instead of gradients
      
      * enable rf with goss
      
      simplify params in test cases
      
      * remove useless changes
      
      * allow rf with feature subsampling alone
      
      * change position of ResetGradientBuffers
      
      * check for dask
      
      * add parameter types for data_sample_strategy
      Co-authored-by: default avatarGuangda Liu <v-guangdaliu@microsoft.com>
      Co-authored-by: default avatarYu Shi <shiyu_k1994@qq.com>
      Co-authored-by: default avatarGuangdaLiu <90019144+GuangdaLiu@users.noreply.github.com>
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      fffd066c
  2. 29 Jul, 2022 1 commit
  3. 06 Aug, 2020 1 commit
  4. 05 Aug, 2020 1 commit
  5. 05 Jun, 2020 1 commit
  6. 01 Jun, 2020 1 commit
  7. 15 May, 2020 1 commit
  8. 13 May, 2020 1 commit
  9. 11 May, 2020 1 commit
  10. 04 Mar, 2020 1 commit
  11. 27 Feb, 2020 1 commit
  12. 26 Feb, 2020 1 commit
  13. 22 Feb, 2020 1 commit
    • Guolin Ke's avatar
      some code refactoring (#2769) · 3e80df7e
      Guolin Ke authored
      * some refines
      
      * more omp refactoring
      
      * format define
      
      * fix merge bug
      
      * some fixes
      
      * fix some warnings
      
      * Apply suggestions from code review
      
      * Apply suggestions from code review
      
      * remove dup codes
      3e80df7e
  14. 08 Feb, 2020 1 commit
  15. 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
  16. 22 Sep, 2019 1 commit
  17. 13 Apr, 2019 1 commit
  18. 11 Apr, 2019 1 commit
  19. 06 Feb, 2019 1 commit
  20. 02 Feb, 2019 1 commit
  21. 06 Nov, 2018 1 commit
  22. 20 May, 2018 1 commit
    • Guolin Ke's avatar
      Refine config object (#1381) · dc699574
      Guolin Ke authored
      * [WIP] refine config
      
      * [wip] ready for the auto code generate
      
      * auto generate config codes
      
      * use with to open file
      
      * fix bug
      
      * fix pylint
      
      * fix bug
      
      * fix pylint
      
      * fix bugs.
      
      * tmp for failed test.
      
      * fix tests.
      
      * added nthreads alias
      
      * added new aliases from new config.h
      
      * fixed duplicated alias
      
      * refactored parameter_generator.py
      
      * added new aliases from config.h and removed remaining old names
      
      * fix bugs & some miss alias
      
      * added aliases
      
      * add more descriptions.
      
      * add comment.
      dc699574
  23. 11 May, 2018 1 commit
  24. 16 Jan, 2018 1 commit
  25. 15 Jan, 2018 1 commit
  26. 11 Jan, 2018 1 commit
  27. 04 Jul, 2017 1 commit
  28. 17 Apr, 2017 2 commits
  29. 16 Apr, 2017 1 commit
    • Guolin Ke's avatar
      faster histogram sum up (#418) · 98c7c2a3
      Guolin Ke authored
      * some refactor.
      
      * two stage sum up to reduce sum up error.
      
      * add more two-stage sumup.
      
      * some refactor.
      
      * add alignment.
      
      * change name to aligned_allocator.
      
      * remove some useless sumup.
      
      * fix a warning.
      
      * add -march=native .
      
      * remove the padding of gradients.
      
      * no alignment.
      
      * fix test.
      
      * change KNumSumupGroup to 32768.
      
      * change gcc flags.
      98c7c2a3
  30. 06 Apr, 2017 1 commit
  31. 28 Mar, 2017 1 commit
  32. 01 Mar, 2017 5 commits