1. 28 Oct, 2020 1 commit
  2. 27 Oct, 2020 3 commits
  3. 26 Oct, 2020 2 commits
  4. 18 Oct, 2020 1 commit
    • James Lamb's avatar
      [ci] [R-package] Fix memory leaks found by valgrind (#3443) · 81d76113
      James Lamb authored
      
      
      * fix int64 write error
      
      * attempt
      
      * [WIP] [ci] [R-package] Add CI job that runs valgrind tests
      
      * update all-successful
      
      * install
      
      * executable
      
      * fix redirect stuff
      
      * Apply suggestions from code review
      Co-authored-by: default avatarGuolin Ke <guolin.ke@outlook.com>
      
      * more flags
      
      * add mc to msvc proj
      
      * fix memory leak in mc
      
      * Update monotone_constraints.hpp
      
      * Update r_package.yml
      
      * remove R_INT64_PTR
      
      * disable openmp
      
      * Update gbdt_model_text.cpp
      
      * Update gbdt_model_text.cpp
      
      * Apply suggestions from code review
      
      * try to free vector
      
      * free more memories.
      
      * Update src/boosting/gbdt_model_text.cpp
      
      * fix using
      
      * try the UNPROTECT(1);
      
      * fix a const pointer
      
      * fix Common
      
      * reduce UNPROTECT
      
      * remove UNPROTECT(1);
      
      * fix null handle
      
      * fix predictor
      
      * use NULL after free
      
      * fix a leaking in test
      
      * try more fixes
      
      * test the effect of tests
      
      * throw exception in Fatal
      
      * add test back
      
      * Apply suggestions from code review
      
      * commet some tests
      
      * Apply suggestions from code review
      
      * Apply suggestions from code review
      
      * trying to comment out tests
      
      * Update openmp_wrapper.h
      
      * Apply suggestions from code review
      
      * Update configure
      
      * Update configure.ac
      
      * trying to uncomment
      
      * more comments
      
      * more uncommenting
      
      * more uncommenting
      
      * fix comment
      
      * more uncommenting
      
      * uncomment fully-commented out stuff
      
      * try uncommenting more dataset tests
      
      * uncommenting more tests
      
      * ok getting closer
      
      * more uncommenting
      
      * free dataset
      
      * skipping a test, more uncommenting
      
      * more skipping
      
      * re-enable OpenMP
      
      * allow on OpenMP thing
      
      * move valgrind to comment-only job
      
      * Apply suggestions from code review
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * changes from code review
      
      * Apply suggestions from code review
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * linting
      
      * issue comments too
      
      * remove issue_comment
      Co-authored-by: default avatarGuolin Ke <guolin.ke@outlook.com>
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      81d76113
  5. 17 Oct, 2020 1 commit
  6. 09 Oct, 2020 1 commit
  7. 30 Sep, 2020 2 commits
    • Guolin Ke's avatar
      stable multi-threading sum reduction (#3385) · 692c9a5b
      Guolin Ke authored
      * Update serial_tree_learner.cpp
      
      * Update src/treelearner/serial_tree_learner.cpp
      
      * stable multi-threading reduction
      
      * Update src/treelearner/serial_tree_learner.cpp
      
      * more fixes
      
      * Apply suggestions from code review
      
      * Apply suggestions from code review
      
      * Update src/boosting/gbdt.cpp
      692c9a5b
    • Guolin Ke's avatar
      fix address alignment, required by cran (#3415) · f30dbe87
      Guolin Ke authored
      * fix dataset binary file alignment
      
      * many fixes
      
      * fix warnings
      
      * fix bug
      
      * Update file_io.cpp
      
      * Update file_io.cpp
      
      * simplify code
      
      * Apply suggestions from code review
      
      * general
      
      * remove unneeded alignment
      
      * Update file_io.h
      
      * int32 to byte8 alignment
      
      * Apply suggestions from code review
      
      * Apply suggestions from code review
      f30dbe87
  8. 29 Sep, 2020 2 commits
  9. 23 Sep, 2020 1 commit
    • Belinda Trotta's avatar
      Average precision score (#3347) · 28704900
      Belinda Trotta authored
      * Implement average precision score
      
      * Fix lint errors
      
      * Change name to average_precision
      
      * Add to R-package list of metrics
      
      * Empty commit to trigger CI jobs
      
      * Change name to average_precision
      28704900
  10. 21 Sep, 2020 1 commit
  11. 20 Sep, 2020 1 commit
    • Chip Kerchner's avatar
      [GPU] Add support for CUDA-based GPU build (#3160) · f7ad9457
      Chip Kerchner authored
      
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * Initial CUDA work
      
      * redirect log to python console (#3090)
      
      * redir log to python console
      
      * fix pylint
      
      * Apply suggestions from code review
      
      * Update basic.py
      
      * Apply suggestions from code review
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Update c_api.h
      
      * Apply suggestions from code review
      
      * Apply suggestions from code review
      
      * super-minor: better wording
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      Co-authored-by: default avatarStrikerRUS <nekit94-12@hotmail.com>
      
      * re-order includes (fixes #3132) (#3133)
      
      * Revert "re-order includes (fixes #3132) (#3133)" (#3153)
      
      This reverts commit 656d2676
      
      .
      
      * Missing change from previous rebase
      
      * Minor cleanup and removal of development scripts.
      
      * Only set gpu_use_dp on by default for CUDA. Other minor change.
      
      * Fix python lint indentation problem.
      
      * More python lint issues.
      
      * Big lint cleanup - more to come.
      
      * Another large lint cleanup - more to come.
      
      * Even more lint cleanup.
      
      * Minor cleanup so less differences in code.
      
      * Revert is_use_subset changes
      
      * Another rebase from master to fix recent conflicts.
      
      * More lint.
      
      * Simple code cleanup - add & remove blank lines, revert unneccessary format changes, remove added dead code.
      
      * Removed parameters added for CUDA and various bug fix.
      
      * Yet more lint and unneccessary changes.
      
      * Revert another change.
      
      * Removal of unneccessary code.
      
      * temporary appveyor.yml for building and testing
      
      * Remove return value in ReSize
      
      * Removal of unused variables.
      
      * Code cleanup from reviewers suggestions.
      
      * Removal of FIXME comments and unused defines.
      
      * More reviewers comments cleanup.
      
      * More reviewers comments cleanup.
      
      * More reviewers comments cleanup.
      
      * Fix config variables.
      
      * Attempt to fix check-docs failure
      
      * Update Paramster.rst for num_gpu
      
      * Removing test appveyor.yml
      
      * Add ƒCUDA_RESOLVE_DEVICE_SYMBOLS to libraries to fix linking issue.
      
      * Fixed handling of data elements less than 2K.
      
      * More reviewers comments cleanup.
      
      * Removal of TODO and fix printing of int64_t
      
      * Add cuda change for CI testing and remove cuda from device_type in python.
      
      * Missed one change form previous check-in
      
      * Removal AdditionConfig and fix settings.
      
      * Limit number of GPUs to one for now in CUDA.
      
      * Update Parameters.rst for previous check-in
      
      * Whitespace removal.
      
      * Cleanup unused code.
      
      * Changed uint/ushort/ulong to unsigned int/short/long to help Windows based CUDA compiler work.
      
      * Lint change from previous check-in.
      
      * Changes based on reviewers comments.
      
      * More reviewer comment changes.
      
      * Adding warning for is_sparse. Revert tmp_subset code. Only return FeatureGroupData if not is_multi_val_
      
      * Fix so that CUDA code will compile even if you enable the SCORE_T_USE_DOUBLE define.
      
      * Reviewer comment cleanup.
      
      * Replace warning with Log message. Removal of some of the USE_CUDA. Fix typo and removal of pragma once.
      
      * Remove PRINT debug for CUDA code.
      
      * Allow to use of multiple GPUs for CUDA.
      
      * More multi-GPUs enablement for CUDA.
      
      * More code cleanup based on reviews comments.
      
      * Update docs with latest config changes.
      Co-authored-by: default avatarGordon Fossum <fossum@us.ibm.com>
      Co-authored-by: default avatarChipKerchner <ckerchne@linux.vnet.ibm.com>
      Co-authored-by: default avatarGuolin Ke <guolin.ke@outlook.com>
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      Co-authored-by: default avatarStrikerRUS <nekit94-12@hotmail.com>
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      f7ad9457
  12. 15 Aug, 2020 1 commit
    • Guolin Ke's avatar
      fix zero bin in categorical split (#3305) · 03910760
      Guolin Ke authored
      * fix zero bin
      
      * some fix
      
      * fix bin mapping
      
      * fix
      
      * fix bug
      
      * use stable sort
      
      * fix cat forced split
      
      * Apply suggestions from code review
      
      * Apply suggestions from code review
      
      * Apply suggestions from code review
      03910760
  13. 10 Aug, 2020 1 commit
  14. 06 Aug, 2020 1 commit
  15. 05 Aug, 2020 1 commit
  16. 29 Jul, 2020 3 commits
    • Lucas David's avatar
      [TYPO] DatasetLoader::ConstructFromSampleData (#3258) · 6f339d77
      Lucas David authored
      
      
      * ~ Modified name of method DatasetLoader::CostructFromSampleData to DatasetLoader::ConstructFromSampleData.
      & Build passes for Debug, Debug_DLL, DLL and Release (not tested Debug_mpi and Release_mpi).
      
      * ~ Refactored indentations.
      Co-authored-by: default avatarGuolin Ke <guolin.ke@outlook.com>
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      6f339d77
    • James Lamb's avatar
      remove unnecessary semicolon (#3260) · 1cf13dba
      James Lamb authored
      1cf13dba
    • James Lamb's avatar
      [R-package] make package installable with CRAN toolchain (fixes #2960) (#3188) · aa933eb4
      James Lamb authored
      
      
      * [R-package] make package installable with CRAN toolchain (fixes #2960)
      
      * Apply suggestions from code review
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * remove GPU stuff
      
      * use wildcard to find objects to build
      
      * use -lomp
      
      * build configure before moving files
      
      * using wildcard for objects
      
      * Update .github/workflows/main.yml
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * add explicit objects back
      
      * reduce allowed R CMD check NOTEs and catch stderr from build-cran-package on Windows
      
      * fixing things
      
      * pin autoconf version
      
      * show diff
      
      * add automake back
      
      * run less checks
      
      * command was in the wrong place
      
      * fix autoconf version
      
      * change strategy for handling configure
      
      * fix Rbuildignore
      
      * fix NOTEs
      
      * fix notes about unrecognized files
      
      * fixing extra files
      
      * remove USE_R35
      
      * add OpenMP check for Mac CRAN build
      
      * run all checks
      
      * Apply suggestions from code review
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * suggestions from code review
      
      * undo indenting
      
      * remove 03 from Makevars.win.in
      
      * update language about OpenMP in configure script
      
      * checking if configure.ac check works
      
      * add autoconf back
      
      * remove testing code in configure.ac
      
      * more fixes for CI on configure script
      
      * print git diff
      
      * add VERSION.txt when checking configure
      
      * fix relative paths
      
      * remove git diff
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      aa933eb4
  17. 27 Jul, 2020 1 commit
  18. 19 Jul, 2020 2 commits
    • shiyu1994's avatar
    • Joan Fontanals's avatar
      Change locking strategy of Booster, allow for share and unique locks (#2760) · 1c35c3b9
      Joan Fontanals authored
      
      
      * Add capability to get possible max and min values for a model
      
      * Change implementation to have return value in tree.cpp, change naming to upper and lower bound, move implementation to gdbt.cpp
      
      * Update include/LightGBM/c_api.h
      Co-Authored-By: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Change iteration to avoid potential overflow, add bindings to R and Python and a basic test
      
      * Adjust test values
      
      * Consider const correctness and multithreading protection
      
      * Put everything possible as const
      
      * Include shared_mutex, for now as unique_lock
      
      * Update test values
      
      * Put everything possible as const
      
      * Include shared_mutex, for now as unique_lock
      
      * Make PredictSingleRow const and share the lock with other reading threads
      
      * Update test values
      
      * Add test to check that model is exactly the same in all platforms
      
      * Try to parse the model to get the expected values
      
      * Try to parse the model to get the expected values
      
      * Fix implementation, num_leaves can be lower than the leaf_value_ size
      
      * Do not check for num_leaves to be smaller than actual size and get back to test with hardcoded value
      
      * Change test order
      
      * Add gpu_use_dp option in test
      
      * Remove helper test method
      
      * Remove TODO
      
      * Add preprocessing option to compile with c++17
      
      * Update python-package/setup.py
      Co-Authored-By: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Remove unwanted changes
      
      * Move option
      
      * Fix problems introduced by conflict fix
      
      * Avoid switching to c++17 and use yamc mutex library to access shared lock functionality
      
      * Add extra yamc include
      
      * Change header order
      
      * some lint fix
      
      * change include order and remove some extra blank lines
      
      * Further fix lint issues
      
      * Update c_api.cpp
      
      * Further fix lint issues
      
      * Move yamc include files to a new yamc folder
      
      * Use standard unique_lock
      
      * Update windows/LightGBM.vcxproj
      Co-authored-by: default avatarGuolin Ke <guolin.ke@outlook.com>
      
      * Update windows/LightGBM.vcxproj.filters
      Co-authored-by: default avatarGuolin Ke <guolin.ke@outlook.com>
      
      * Update windows/LightGBM.vcxproj.filters
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Update windows/LightGBM.vcxproj.filters
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Update windows/LightGBM.vcxproj.filters
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Fix problems coming from merge conflict resolution
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      Co-authored-by: default avatarjoanfontanals <jfontanals@ntent.com>
      Co-authored-by: default avatarGuolin Ke <guolin.ke@outlook.com>
      1c35c3b9
  19. 15 Jul, 2020 2 commits
    • Alberto Ferreira's avatar
      Feat/optimize single prediction (#2992) · fc79b366
      Alberto Ferreira authored
      * [performance] Add Fast methods to C API for SingleRow Predictions
      
       * Add methods to C API to make single-row predictions faster:
      
         - LGBM_BoosterPredictForMatSingleRowFastInit (setup)
         - LGBM_BoosterPredictForMatSingleRowFast (predict)
         - LGBM_FastConfigFree (cleanup setup outputs)
      
      * Code syle cleanup
      
      * Fix lint errors
      
      * [performance] Revert FastConfig improvement to pass data at init
      
      This reduces optimization by 5% / 30% with this branch but makes it so it can be used for higher level wrappers in MMLSpark.
      And outside it as well.
      
      * [performance] Introduce Fast variants for SingleRow predictors.
      
      Although this already provides performance gains by itself for any
      callers, two new functions were added to Java's SWIG interfaces to
      exploit that AND the GetPrimitiveArrayCritical data fetches.
      
      * [tests/profiling] Profile Fast predict methods
      
      Build with -DBUILD_PROFILING_TESTS=ON and copy the default
      model trained on the Higgs dataset from the benchmarks repo
      
       https://github.com/guolinke/boosting_tree_benchmarks.git
      
      
      
      to LightGBM repo root and run the lightgbm_profile_* binaries.
      
      The single instance used is the first row from that dataset.
      
      * Update comment on CMakeLists.
      
      * Fix doxygen-introduced issue (#threads)
      
      * Fix conflicts due to new RowFunctionFromCSR signature in master
      
      * Change FastConfig ncol to int32_t.
      
      * Removed profiling folder
      
      * fix doxygen typo include/LightGBM/c_api.h
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * fix doxygen typo include/LightGBM/c_api.h
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * fix doxygen typo include/LightGBM/c_api.h
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Doxygen: change new docstrings to double back-quote
      Co-authored-by: default avataralberto.ferreira <alberto.ferreira@feedzai.com>
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      fc79b366
    • Guolin Ke's avatar
      feature importance type in saved model file (#3220) · 87d46489
      Guolin Ke authored
      
      
      * feature importance type in saved model file
      
      * fix nullptr
      
      * fixed formatting
      
      * fix python/R
      
      * Update src/c_api.cpp
      
      * Apply suggestions from code review
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      
      * fix c_api test
      
      * fix swig
      
      * minor docs improvements and added defines for importance types
      Co-authored-by: default avatarStrikerRUS <nekit94-12@hotmail.com>
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      87d46489
  20. 08 Jul, 2020 1 commit
  21. 02 Jul, 2020 1 commit
    • Belinda Trotta's avatar
      [R-package] Interface for interaction constraints (#3136) · 4f8c32d9
      Belinda Trotta authored
      * Add interaction constraints functionality.
      
      * Minor fixes.
      
      * Minor fixes.
      
      * Change lambda to function.
      
      * Fix gpu bug, remove extra blank lines.
      
      * Fix gpu bug.
      
      * Fix style issues.
      
      * Try to fix segfault on MACOS.
      
      * Fix bug.
      
      * Fix bug.
      
      * Fix bugs.
      
      * Change parameter format for R.
      
      * Fix R style issues.
      
      * Change string formatting code.
      
      * Change docs to say R package not supported.
      
      * Refactor check_interaction_constraints into separate function, add validation.
      
      * Fix error messages.
      
      * Add tests.
      
      * Update docs.
      
      * Fix tests, minor refactoring.
      
      * Fix style issues.
      
      * Fix R style issue.
      
      * Remove old code.
      
      * Fix existing test and add new one.
      
      * Fix R lint error.
      4f8c32d9
  22. 28 Jun, 2020 1 commit
    • Ilya Matiach's avatar
      adding sparse support to TreeSHAP in lightgbm (#3000) · 9f367d11
      Ilya Matiach authored
      * adding sparse support to TreeSHAP in lightgbm
      
      * updating based on comments
      
      * updated based on comments, used fromiter instead of frombuffer
      
      * updated based on comments
      
      * fixed limits import order
      
      * fix sparse feature contribs to work with more than int32 max rows
      
      * really fixed int64 max error and build warnings
      
      * added sparse test with >int32 max rows
      
      * fixed python side reshape check on sparse data
      
      * updated based on latest comments
      
      * fixed comments
      
      * added CSC INT32_MAX validation to test, fixed comments
      9f367d11
  23. 23 Jun, 2020 1 commit
    • Belinda Trotta's avatar
      Interaction constraints (#3126) · bca2da97
      Belinda Trotta authored
      * Add interaction constraints functionality.
      
      * Minor fixes.
      
      * Minor fixes.
      
      * Change lambda to function.
      
      * Fix gpu bug, remove extra blank lines.
      
      * Fix gpu bug.
      
      * Fix style issues.
      
      * Try to fix segfault on MACOS.
      
      * Fix bug.
      
      * Fix bug.
      
      * Fix bugs.
      
      * Change parameter format for R.
      
      * Fix R style issues.
      
      * Change string formatting code.
      
      * Change docs to say R package not supported.
      
      * Remove R functionality, moving to separate PR.
      
      * Keep track of branch features in tree object.
      
      * Only track branch features when feature interactions are enabled.
      
      * Fix lint error.
      
      * Update docs and simplify tests.
      bca2da97
  24. 11 Jun, 2020 1 commit
  25. 05 Jun, 2020 2 commits
  26. 01 Jun, 2020 1 commit
  27. 25 May, 2020 1 commit
  28. 20 May, 2020 1 commit
  29. 03 May, 2020 1 commit
    • Belinda Trotta's avatar
      Path smoothing (#2950) · e50a9151
      Belinda Trotta authored
      * Path smoothing
      
      * Try to fix issue with gpu version.
      
      * Fix failing CI for R package.
      
      * Minor fixes.
      
      * Minor refactor.
      
      * Restore old code to get CI working.
      
      * Fix style issues.
      
      * Fix ci for R package.
      
      * Minor fixes for docs and code style.
      
      * Update docs.
      e50a9151
  30. 16 Apr, 2020 1 commit