- 24 Dec, 2020 1 commit
-
-
Belinda Trotta authored
* Add Eigen library. * Working for simple test. * Apply changes to config params. * Handle nan data. * Update docs. * Add test. * Only load raw data if boosting=gbdt_linear * Remove unneeded code. * Minor updates. * Update to work with sk-learn interface. * Update to work with chunked datasets. * Throw error if we try to create a Booster with an already-constructed dataset having incompatible parameters. * Save raw data in binary dataset file. * Update docs and fix parameter checking. * Fix dataset loading. * Add test for regularization. * Fix bugs when saving and loading tree. * Add test for load/save linear model. * Remove unneeded code. * Fix case where not enough leaf data for linear model. * Simplify code. * Speed up code. * Speed up code. * Simplify code. * Speed up code. * Fix bugs. * Working version. * Store feature data column-wise (not fully working yet). * Fix bugs. * Speed up. * Speed up. * Remove unneeded code. * Small speedup. * Speed up. * Minor updates. * Remove unneeded code. * Fix bug. * Fix bug. * Speed up. * Speed up. * Simplify code. * Remove unneeded code. * Fix bug, add more tests. * Fix bug and add test. * Only store numerical features * Fix bug and speed up using templates. * Speed up prediction. * Fix bug with regularisation * Visual studio files. * Working version * Only check nans if necessary * Store coeff matrix as an array. * Align cache lines * Align cache lines * Preallocation coefficient calculation matrices * Small speedups * Small speedup * Reverse cache alignment changes * Change to dynamic schedule * Update docs. * Refactor so that linear tree learner is not a separate class. * Add refit capability. * Speed up * Small speedups. * Speed up add prediction to score. * Fix bug * Fix bug and speed up. * Speed up dataload. * Speed up dataload * Use vectors instead of pointers * Fix bug * Add OMP exception handling. * Change return type of LGBM_BoosterGetLinear to bool * Change return type of LGBM_BoosterGetLinear back to int, only parameter type needed to change * Remove unused internal_parent_ property of tree * Remove unused parameter to CreateTreeLearner * Remove reference to LinearTreeLearner * Minor style issues * Remove unneeded check * Reverse temporary testing change * Fix Visual Studio project files * Restore LightGBM.vcxproj.filters * Speed up * Speed up * Simplify code * Update docs * Simplify code * Initialise storage space for max num threads * Move Eigen to include directory and delete unused files * Remove old files. * Fix so it compiles with mingw * Fix gpu tree learner * Change AddPredictionToScore back to const * Fix python lint error * Fix C++ lint errors * Change eigen to a submodule * Update comment * Add the eigen folder * Try to fix build issues with eigen * Remove eigen files * Add eigen as submodule * Fix include paths * Exclude eigen files from Python linter * Ignore eigen folders for pydocstyle * Fix C++ linting errors * Fix docs * Fix docs * Exclude eigen directories from doxygen * Update manifest to include eigen * Update build_r to include eigen files * Fix compiler warnings * Store raw feature data as float * Use float for calculating linear coefficients * Remove eigen directory from GLOB * Don't compile linear model code when building R package * Fix doxygen issue * Fix lint issue * Fix lint issue * Remove uneeded code * Restore delected lines * Restore delected lines * Change return type of has_raw to bool * Update docs * Rename some variables and functions for readability * Make tree_learner parameter const in AddScore * Fix style issues * Pass vectors as const reference when setting tree properties * Make temporary storage of serial_tree_learner mutable so we can make the object's methods const * Remove get_raw_size, use num_numeric_features instead * Fix typo * Make contains_nan_ and any_nan_ properties immutable again * Remove data_has_nan_ property of tree * Remove temporary test code * Make linear_tree a dataset param * Fix lint error * Make LinearTreeLearner a separate class * Fix lint errors * Fix lint error * Add linear_tree_learner.o * Simulate omp_get_max_threads if openmp is not available * Update PushOneData to also store raw data. * Cast size to int * Fix bug in ReshapeRaw * Speed up code with multithreading * Use OMP_NUM_THREADS * Speed up with multithreading * Update to use ArrayToString * Fix tests * Fix test * Fix bug introduced in merge * Minor updates * Update docs
-
- 08 Dec, 2020 1 commit
-
-
Alberto Ferreira authored
* Fix LightGBM models locale sensitivity and improve R/W performance. When Java is used, the default C++ locale is broken. This is true for Java providers that use the C API or even Python models that require JEP. This patch solves that issue making the model reads/writes insensitive to such settings. To achieve it, within the model read/write codebase: - C++ streams are imbued with the classic locale - Calls to functions that are dependent on the locale are replaced - The default locale is not changed! This approach means: - The user's locale is never tampered with, avoiding issues such as https://github.com/microsoft/LightGBM/issues/2979 with the previous approach https://github.com/microsoft/LightGBM/pull/2891 - Datasets can still be read according the user's locale - The model file has a single format independent of locale Changes: - Add CommonC namespace which provides faster locale-independent versions of Common's methods - Model code makes conversions through CommonC - Cleanup unused Common methods - Performance improvements. Use fast libraries for locale-agnostic conversion: - value->string: https://github.com/fmtlib/fmt - string->double: https://github.com/lemire/fast_double_parser (10x faster double parsing according to their benchmark) Bugfixes: - https://github.com/microsoft/LightGBM/issues/2500 - https://github.com/microsoft/LightGBM/issues/2890 - https://github.com/ninia/jep/issues/205 (as it is related to LGBM as well) * Align CommonC namespace * Add new external_libs/ to python setup * Try fast_double_parser fix #1 Testing commit e09e5aad828bcb16bea7ed0ed8322e019112fdbe If it works it should fix more LGBM builds * CMake: Attempt to link fmt without explicit PUBLIC tag * Exclude external_libs from linting * Add exernal_libs to MANIFEST.in * Set dynamic linking option for fmt. * linting issues * Try to fix lint includes * Try to pass fPIC with static fmt lib * Try CMake P_I_C option with fmt library * [R-package] Add CMake support for R and CRAN * Cleanup CMakeLists * Try fmt hack to remove stdout * Switch to header-only mode * Add PRIVATE argument to target_link_libraries * use fmt in header-only mode * Remove CMakeLists comment * Change OpenMP to PUBLIC linking in Mac * Update fmt submodule to 7.1.2 * Use fmt in header-only-mode * Remove fmt from CMakeLists.txt * Upgrade fast_double_parser to v0.2.0 * Revert "Add PRIVATE argument to target_link_libraries" This reverts commit 3dd45dde7b92531b2530ab54522bb843c56227a7. * Address James Lamb's comments * Update R-package/.Rbuildignore Co-authored-by:James Lamb <jaylamb20@gmail.com> * Upgrade to fast_double_parser v0.3.0 - Solaris support * Use legacy code only in Solaris * Fix lint issues * Fix comment * Address StrikerRUS's comments (solaris ifdef). * Change header guards Co-authored-by:
James Lamb <jaylamb20@gmail.com>
-
- 23 Oct, 2020 1 commit
-
-
Nikita Titov authored
-
- 18 Oct, 2020 1 commit
-
-
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:
Guolin 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:
Nikita Titov <nekit94-08@mail.ru> * changes from code review * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * linting * issue comments too * remove issue_comment Co-authored-by:
Guolin Ke <guolin.ke@outlook.com> Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
- 15 Jul, 2020 1 commit
-
-
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:
James Lamb <jaylamb20@gmail.com> * fix c_api test * fix swig * minor docs improvements and added defines for importance types Co-authored-by:
StrikerRUS <nekit94-12@hotmail.com> Co-authored-by:
James Lamb <jaylamb20@gmail.com>
-
- 05 Jun, 2020 1 commit
-
-
Nikita Titov authored
This reverts commit 656d2676.
-
- 01 Jun, 2020 1 commit
-
-
James Lamb authored
-
- 30 Mar, 2020 1 commit
-
-
Nikita Titov authored
-
- 02 Mar, 2020 1 commit
-
-
Nikita Titov authored
-
- 20 Feb, 2020 1 commit
-
-
Nikita Titov authored
* added feature infos to JSON dump * slight json schema refactor * simpified code * refactor feature_infos * refactoring * Update src/boosting/gbdt.cpp * Update dataset.h * Update include/LightGBM/dataset.h * simplify * Apply suggestions from code review * parse string and construct JSON objs Co-authored-by:Guolin Ke <guolin.ke@outlook.com>
-
- 10 Feb, 2020 1 commit
-
-
CharlesAuguste authored
* Move monotone constraints to the monotone_constraints files. * Add checks for debug mode. * Refactored FindBestSplitsFromHistograms. * Add headers. * fix * Update data_parallel_tree_learner.cpp * simplify ComputeBestSplitForFeature * Fix min / max issue. * Remove duplicated check. Co-authored-by:Guolin Ke <guolin.ke@outlook.com>
-
- 02 Jan, 2020 1 commit
-
-
Nikita Titov authored
* added feature importance to JSON dump * hotfix * Update gbdt_model_text.cpp
-
- 15 Nov, 2019 1 commit
-
-
OMOTO Tsukasa authored
Fix #2564
-
- 22 Sep, 2019 1 commit
-
-
Guolin Ke authored
* fix many cpp lint errors * indent * fix bug * fix more * fix gpu * more fixes
-
- 08 Sep, 2019 1 commit
-
-
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.
-
- 24 Jul, 2019 1 commit
-
-
Guolin Ke authored
* add weight in tree model output * fix bug * updated Python plotting part to handle weights
-
- 13 Apr, 2019 1 commit
-
-
Nikita Titov authored
-
- 11 Apr, 2019 1 commit
-
-
Nikita Titov authored
* added all necessary includes - fixed build/include_what_you_use error * fixed the order of includes (build/include_order)
-
- 01 Apr, 2019 1 commit
-
-
Nikita Titov authored
-
- 26 Mar, 2019 1 commit
-
-
Nikita Titov authored
-
- 02 Feb, 2019 2 commits
-
-
Nikita Titov authored
-
Nikita Titov authored
-
- 17 Dec, 2018 1 commit
-
-
Guolin Ke authored
* fix RF's bugs * fix tests * rollback num_iterations * fix a bug and reduce memory costs * reduce memory cost
-
- 23 Nov, 2018 1 commit
-
-
Dmitry Khominich authored
-
- 10 Oct, 2018 1 commit
-
-
Guolin Ke authored
* fix ndcg consistency. * more stable sorts * Update gbdt_model_text.cpp * Update dataset.cpp * Update gbdt_model_text.cpp
-
- 22 Aug, 2018 1 commit
-
-
Guolin Ke authored
* add start_iteration in model saving * fix test * shuffle models ability * fix bug * update document * refine * Update engine.py * Update basic.py * fix comments * fix comment
-
- 08 Jul, 2018 1 commit
-
-
Guolin Ke authored
-
- 20 May, 2018 1 commit
-
-
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.
-
- 11 May, 2018 1 commit
-
-
Nikita Titov authored
* decode error description * added break line char in log massages
-
- 22 Jan, 2018 1 commit
-
-
Guolin Ke authored
-
- 12 Jan, 2018 1 commit
-
-
Guolin Ke authored
-
- 25 Dec, 2017 2 commits
- 26 Nov, 2017 1 commit
-
-
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
-
- 15 Nov, 2017 2 commits
- 26 Oct, 2017 1 commit
-
-
wxchan authored
* [optional] support protobuf * fix windows/LightGBM.vcxproj * add doc * fix doc * fix vs support (#2) * fix vs support * fix cmake
-
- 20 Oct, 2017 1 commit
-
- 19 Oct, 2017 1 commit
-
-
wxchan authored
-
- 29 Aug, 2017 1 commit
-
-
Guolin Ke authored
-