"tests/vscode:/vscode.git/clone" did not exist on "adb8fb4e5c418d6697cfdd8e12d12fc5f722ada8"
  1. 04 Jan, 2021 1 commit
  2. 03 Jan, 2021 1 commit
  3. 28 Dec, 2020 1 commit
    • Nikita Titov's avatar
      small code and docs refactoring (#3681) · 5a460846
      Nikita Titov authored
      * small code and docs refactoring
      
      * Update CMakeLists.txt
      
      * Update .vsts-ci.yml
      
      * Update test.sh
      
      * continue
      
      * continue
      
      * revert stable sort for all-unique values
      5a460846
  4. 24 Dec, 2020 1 commit
    • Belinda Trotta's avatar
      Trees with linear models at leaves (#3299) · fcfd4132
      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
      fcfd4132
  5. 22 Dec, 2020 2 commits
    • Jan Stiborek's avatar
      [python] [dask] add initial dask integration (#3515) · d90a16d5
      Jan Stiborek authored
      * migrated implementation from dask/dask-lightgbm
      
      * relaxed tests
      
      * tests skipped in case that MPI is used
      
      * fixed python 2.7 import + tests disabled on windows
      
      * python < 3.6 is not supported in tests
      
      * tests enabled only for linux
      
      * tests disabled for mpi interface
      
      * dask version pinned to >= 2.0
      
      * added @jameslamb as code owner
      
      * added missing pandas dependency
      
      * code refactoring, removed code duplication - lightgbm.dask.LGBMClassifier.fit is the same as lightgbm.dask.LGBMRegressor.fit
      
      * fixed refactoring
      
      * code deduplication - fit method moved into mixin class
      
      * fixed CODEOWNERS
      
      * removed unnecessary import
      
      * skip the module execution on python < 3.6 and on platform different than linux.
      
      * removed skip for python < 3.6
      
      * review comments
      
      * removed noqa, renamed API classes, renamed local variables
      d90a16d5
    • Nikita Titov's avatar
      [docs][ci] added docs about GPU support out of the box for Windows wheels and... · 1fb27443
      Nikita Titov authored
      
      [docs][ci] added docs about GPU support out of the box for Windows wheels and small refactoring for dual test (#3660)
      
      * added docs about GPU support out of the box for Windows and small refactoring for dual test
      
      * test
      
      * Revert "test"
      
      This reverts commit 45188103c2c9b3773bc62d97fbe865a2e5dd9120.
      
      * fix docs
      
      * fix docs
      
      * hotfix config
      
      * Apply suggestions from code review
      Co-authored-by: default avatarTP Boudreau <tpboudreau@gmail.com>
      Co-authored-by: default avatarTP Boudreau <tpboudreau@gmail.com>
      1fb27443
  6. 19 Dec, 2020 1 commit
    • Itamar Turner-Trauring's avatar
      [python] Windows wheels that support GPUs via OpenCL (#3403) · 222a7368
      Itamar Turner-Trauring authored
      
      
      * Add specialized OpenCL/Python package build path
      
      * Refer to upstream OpenCL repository
      
      * Reset build job count in setup.py
      
      * Run test for dual CPU/GPU code in CI
      
      * TEMPORARY: refer to OpenCL fork to ensure Linux CI builds succeed
      
      * Try switching to OpenCL 2.0
      
      * Add --opencl-python-pacakge option to wheel
      
      * Fix some typos.
      
      * Remove intermediate cmake target
      
      * Restrict OpenCL headers to documented API version
      
      * Refresh the environment after installation
      
      * Try testing with two processes
      
      * Use command line definition to activate integrated build
      
      * Try newer OpenCL runtime
      
      * If we hit OpenCL code path that's good enough
      
      * Make tests run correctly
      
      * Correct directory
      
      * Flag reference to unofficial repo with FIXME
      
      * TEMPORARY: update private repo tag for dependency
      
      * Further post-merge fixes.
      
      * Fix attribute name.
      
      * Reformat with black.
      
      * Rewrite config.h before library compilation for Windows wheel
      
      * Run dual cpu/gpu test once only for Windows bdist CI
      
      * Avoid C API tests when building gpu library for wheel
      
      * TEMPORARY -- add clinfo tool to vm for debugging
      
      * Increase compilation logging
      
      * Rename OpenCL registry parameter after driver installation
      
      * Install legacy OpenCL runtime
      
      * ...
      
      * Remove config.h change, clinfo installation, latest opencl runtime reference
      
      * Add explicit script exit
      
      * revert to 18.1 intel driver
      
      * Run test_dual.py in two different modes
      
      * Revert "Run test_dual.py in two different modes"
      
      This reverts commit cbfec02659816f0cb321e1184994a9c2f37d2a77.
      
      * Remove unused expected failure test
      
      * Install OpenCL in separate powershell script
      
      * fix setup.py imports
      
      * activate conda env after session update
      
      * separate update functions; exit opencl installation on error
      
      * nothing; start pipeline
      
      * download from original source
      
      * specify tls version for installer download
      
      * eliminate variable from command
      
      * download opencl installer in parts
      
      * remove duplicate setup.py command class entry
      
      * download smaller parts
      
      * remove redundant bdist wheel class
      
      * Import chocolatey modules and use RefreshEnv
      
      * insert pipeline cache for opencl installer
      
      * rerun to ensure pipeline cache hit
      
      * add comments, test another pipeline cache hit
      
      * remove cache task; download full installer file from new location
      
      * try another installer download timing
      
      * reinsert pipeline cache
      
      * retain cache task; download full file on cache miss
      
      * test cache hit again
      
      * remove todo
      Co-authored-by: default avatarTP Boudreau <tpboudreau@gmail.com>
      222a7368
  7. 09 Dec, 2020 1 commit
    • Nikita Titov's avatar
      [python] Drop Python 2 support (#3581) · 44a6fb7f
      Nikita Titov authored
      * Update setup.py
      
      * Update .appveyor.yml
      
      * Update .travis.yml
      
      * Update .vsts-ci.yml
      
      * Update __init__.py
      
      * Update test.sh
      
      * Update test_windows.ps1
      
      * Update advanced_example.py
      
      * Update requirements_base.txt
      
      * Update conf.py
      
      * Update conf.py
      
      * Update test_engine.py
      
      * Update utils.py
      
      * Update dockerfile-r
      
      * Update README.md
      
      * Update dockerfile.gpu
      
      * Update test_consistency.py
      
      * Update basic.py
      
      * Update compat.py
      
      * Update engine.py
      
      * Update sklearn.py
      
      * Update sklearn.py
      
      * Update callback.py
      
      * Update setup.py
      
      * Update __init__.py
      
      * Update plotting.py
      
      * Update sklearn.py
      
      * Update engine.py
      
      * Update compat.py
      
      * Update callback.py
      
      * Update basic.py
      
      * Update compat.py
      
      * Update basic.py
      
      * Update basic.py
      
      * Update compat.py
      
      * Update compat.py
      
      * Update plotting.py
      
      * Update engine.py
      
      * Update basic.py
      
      * Update sklearn.py
      
      * Update compat.py
      
      * Update engine.py
      
      * Update engine.py
      
      * Update callback.py
      
      * Update basic.py
      
      * Update basic.py
      
      * Update basic.py
      
      * Update basic.py
      
      * Update basic.py
      
      * Update sklearn.py
      
      * Update sklearn.py
      
      * Update plotting.py
      
      * Update sklearn.py
      
      * Update compat.py
      
      * Update compat.py
      
      * Update engine.py
      
      * Update plotting.py
      
      * Update sklearn.py
      
      * Update basic.py
      
      * Update basic.py
      
      * Update basic.py
      
      * Update basic.py
      
      * Update compat.py
      
      * Update compat.py
      
      * Update compat.py
      
      * Update engine.py
      
      * Update basic.py
      
      * Update compat.py
      
      * Update basic.py
      
      * Update basic.py
      
      * Update basic.py
      
      * Update compat.py
      
      * Update compat.py
      
      * Update basic.py
      
      * Update basic.py
      
      * Update .vsts-ci.yml
      
      * Update .vsts-ci.yml
      
      * Update conf.py
      
      * Revert "Update dockerfile-r"
      
      This reverts commit 4ff6ffc7e3eeda24cc6a59a3bb0c973f02d9d71c.
      44a6fb7f
  8. 10 Nov, 2020 1 commit
  9. 30 Oct, 2020 1 commit
  10. 29 Oct, 2020 1 commit
  11. 27 Oct, 2020 1 commit
    • Pavel Metrikov's avatar
      Add support to optimize for NDCG at a given truncation level (#3425) · ba0a1f8d
      Pavel Metrikov authored
      
      
      * Add support to optimize for NDCG at a given truncation level
      
      In order to correctly optimize for NDCG@_k_, one should exclude pairs containing both documents beyond the top-_k_ (as they don't affect NDCG@_k_ when swapped).
      
      * Update rank_objective.hpp
      
      * Apply suggestions from code review
      Co-authored-by: default avatarGuolin Ke <guolin.ke@outlook.com>
      
      * Update rank_objective.hpp
      
      remove the additional branching: get high_rank and low_rank by one "if".
      
      * Update config.h
      
      add description to lambdarank_truncation_level parameter
      
      * Update Parameters.rst
      
      * Update test_sklearn.py
      
      update expected NDCG value for a test, as it was affected by the underlying change in the algorithm
      
      * Update test_sklearn.py
      
      update NDCG@3 reference value
      
      * fix R learning-to-rank tests
      
      * Update rank_objective.hpp
      
      * Update include/LightGBM/config.h
      Co-authored-by: default avatarGuolin Ke <guolin.ke@outlook.com>
      
      * Update Parameters.rst
      Co-authored-by: default avatarGuolin Ke <guolin.ke@outlook.com>
      Co-authored-by: default avatarJames Lamb <jaylamb20@gmail.com>
      ba0a1f8d
  12. 26 Oct, 2020 1 commit
    • Guolin Ke's avatar
      Fix add features (#2754) · 53977f36
      Guolin Ke authored
      
      
      * fix subset bug
      
      * typo
      
      * add fixme tag
      
      * bin mapper
      
      * fix test
      
      * fix add_features_from
      
      * Update dataset.cpp
      
      * fix merge bug
      
      * added Python merge code
      
      * added test for add_features
      
      * Update dataset.cpp
      
      * Update src/io/dataset.cpp
      
      * continue implementing
      
      * warn users about categorical features
      Co-authored-by: default avatarStrikerRUS <nekit94-12@hotmail.com>
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      53977f36
  13. 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
  14. 21 Sep, 2020 2 commits
  15. 20 Sep, 2020 1 commit
    • Belinda Trotta's avatar
      Auc mu weights (#3349) · 1782fcb1
      Belinda Trotta authored
      * Update auc_mu metric to use data weights if provided
      
      * Calculate class sizes and total weights in Init so we only do it once
      
      * Fix lint error
      
      * Empty commit to trigger CI jobs
      1782fcb1
  16. 06 Sep, 2020 1 commit
  17. 02 Sep, 2020 1 commit
  18. 11 Aug, 2020 2 commits
  19. 06 Aug, 2020 1 commit
  20. 02 Aug, 2020 1 commit
  21. 30 Jul, 2020 1 commit
  22. 15 Jul, 2020 1 commit
  23. 14 Jul, 2020 1 commit
  24. 28 Jun, 2020 2 commits
    • 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
    • Belinda Trotta's avatar
      Fix bug with interaction constraints (#3189) · d563aff9
      Belinda Trotta authored
      * Fix bug: crashes when interaction_constraints is nonempty and not all features are used.
      
      * Fix python lint error.
      d563aff9
  25. 27 Jun, 2020 1 commit
    • Alex's avatar
      [python][scikit-learn] new stacking tests and make number of features a property (#3173) · 72849466
      Alex authored
      * modify attribute and include stacking tests
      
      * backwards compatibility
      
      * check sklearn version
      
      * move stacking import
      
      * Number of input features (#3173)
      
      * Number of input features (#3173)
      
      * Number of input features (#3173)
      
      * Number of input features (#3173)
      
      Split number of features and stacking tests.
      
      * Number of input features (#3173)
      
      Modify test name.
      
      * Number of input features (#3173)
      
      Update stacking tests for review comments.
      
      * Number of input features (#3173)
      
      * Number of input features (#3173)
      
      * Number of input features (#3173)
      
      * Number of input features (#3173)
      
      Modify classifier test.
      
      * Number of input features (#3173)
      
      * Number of input features (#3173)
      
      Check score.
      72849466
  26. 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
  27. 11 Jun, 2020 1 commit
  28. 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
  29. 30 Apr, 2020 1 commit
  30. 25 Apr, 2020 1 commit
  31. 10 Apr, 2020 2 commits
  32. 09 Apr, 2020 1 commit
    • CharlesAuguste's avatar
      Pr3 monotone constraints splits penalization (#2939) · 505a145f
      CharlesAuguste authored
      
      
      * Add the monotone penalty parameter to the config.
      
      * Pass tree in the necessary functions so it can be used in ComputeBestSplitForFeature.
      
      * Add monotone penalty.
      
      * Added link to the original report.
      
      * Add tests.
      
      * Fix GPU.
      
      * Revert "Pass tree in the necessary functions so it can be used in ComputeBestSplitForFeature."
      
      This reverts commit 37757e8e8f3a2c82a604f4af9a926da616660d2e.
      
      * Revert "Fix GPU."
      
      This reverts commit e49eeee41c883f3c97fd5cdbd53c9288094bffb6.
      
      * Added a shared pointer to the tree so the constraints can use it too.
      
      * Moved check on monotone penalty to config.cpp.
      
      * Python linting.
      
      * Use AssertTrue instead of assert_.
      
      * Fix penalization in test.
      
      * Make GPU deterministic in tests.
      
      * Rename tree to tree_ in monotone constraints.
      
      * Replaced epsilon by kEplison.
      
      * Typo.
      
      * Make tree pointer const.
      
      * Update src/treelearner/monotone_constraints.hpp
      Co-Authored-By: default avatarGuolin Ke <guolin.ke@outlook.com>
      
      * Update src/treelearner/monotone_constraints.hpp
      Co-Authored-By: default avatarGuolin Ke <guolin.ke@outlook.com>
      
      * Added alias for the penalty.
      
      * Remove useless comment.
      
      * Save CI time.
      
      * Refactor test_monotone_penalty_max.
      
      * Update include/LightGBM/config.h
      Co-Authored-By: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Fix doc to be in line with previous config change commit.
      Co-authored-by: default avatarCharles Auguste <auguste@dubquantdev801.ire.susq.com>
      Co-authored-by: default avatarGuolin Ke <guolin.ke@outlook.com>
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      505a145f
  33. 23 Mar, 2020 1 commit
    • CharlesAuguste's avatar
      Improving monotone constraints ("Fast" method; linked to #2305, #2717) (#2770) · a8c1e0a1
      CharlesAuguste authored
      
      
      * Add util functions.
      
      * Added monotone_constraints_method as a parameter.
      
      * Add the intermediate constraining method.
      
      * Updated tests.
      
      * Minor fixes.
      
      * Typo.
      
      * Linting.
      
      * Ran the parameter generator for the doc.
      
      * Removed usage of the FeatureMonotone function.
      
      * more fixes
      
      * Fix.
      
      * Remove duplicated code.
      
      * Add debug checks.
      
      * Typo.
      
      * Bug fix.
      
      * Disable the use of intermediate monotone constraints and feature sampling at the same time.
      
      * Added an alias for monotone constraining method.
      
      * Use the right variable to get the number of threads.
      
      * Fix DEBUG checks.
      
      * Add back check to determine if histogram is splittable.
      
      * Added forgotten override keywords.
      
      * Perform monotone constraint update only when necessary.
      
      * Small refactor of FastLeafConstraints.
      
      * Post rebase commit.
      
      * Small refactor.
      
      * Typo.
      
      * Added comment and slightly improved logic of monotone constraints.
      
      * Forgot a const.
      
      * Vectors that are to be modified need to be pointers.
      
      * Rename FastLeafConstraints to IntermediateLeafConstraints to match documentation.
      
      * Remove overload of GoUpToFindLeavesToUpdate.
      
      * Stop memory leaking.
      
      * Fix cpplint issues.
      
      * Fix checks.
      
      * Fix more cpplint issues.
      
      * Refactor config monotone constraints method.
      
      * Typos.
      
      * Remove useless empty lines.
      
      * Add new line to separate includes.
      
      * Replace unsigned ind by size_t.
      
      * Reduce number of trials in tests to decrease CI time.
      
      * Specify monotone constraints better in tests.
      
      * Removed outer loop in test of monotone constraints.
      
      * Added categorical features to the monotone constraints tests.
      
      * Add blank line.
      
      * Regenerate parameters automatically.
      
      * Speed up ShouldKeepGoingLeftRight.
      Co-authored-by: default avatarCharles Auguste <auguste@dubquantdev801.ire.susq.com>
      Co-authored-by: default avatarguolinke <guolin.ke@outlook.com>
      a8c1e0a1
  34. 20 Mar, 2020 1 commit
    • Lukas Pfannschmidt's avatar
      [python] handle RandomState object in Scikit-learn Api (#2904) · cf0a992e
      Lukas Pfannschmidt authored
      
      
      * Add handling of RandomState object, which is standard for sklearn methods.
      
      LightGBM expects an integer seed instead of an object.
      If passed object is RandomState, we choose random integer based on its state to seed the underlying low level code.
      While chosen random integer is only in the range between 1 and 1e10 I expect it to have enough entropy (?) to not matter in practice.
      
      * Add RandomState object to random_state docstring.
      
      * remove blank line
      
      * Use property to handle setting random_state.
      This enables setting cloned estimators with the set_params method in sklearn.
      
      * Add docstring to attribute.
      
      * Fix and simplify docstring.
      
      * Add test case.
      
      * Use maximal int for datatype in seed derivation.
      
      * Replace random_state property with interfacing in fit method.
      Derives int seed for C code only when fitting and keeps RandomState object as param.
      
      * Adapt unit test to property change.
      
      * Extended test case and docstring
      Co-Authored-By: default avatarNikita Titov <nekit94-08@mail.ru>
      
      * Add more equality checks (feature importance, best iteration/score).
      
      * Add equality comparison of boosters represented by strings.
      Remove useless best_iteration_ comparison (we do not use early_stopping).
      
      * fix whitespace
      
      * Test if two subsequent fits produce different models
      
      * Apply suggestions from code review
      Co-Authored-By: default avatarNikita Titov <nekit94-08@mail.ru>
      Co-authored-by: default avatarNikita Titov <nekit94-08@mail.ru>
      cf0a992e
  35. 16 Mar, 2020 1 commit