1. 25 Mar, 2019 1 commit
    • mjmckp's avatar
      Add API method LGBM_BoosterPredictForMats (#2008) · 823fc03c
      mjmckp authored
      * Fix index out-of-range exception generated by BaggingHelper on small datasets.
      
      Prior to this change, the line "score_t threshold = tmp_gradients[top_k - 1];" would generate an exception, since tmp_gradients would be empty when the cnt input value to the function is zero.
      
      * Update goss.hpp
      
      * Update goss.hpp
      
      * Add API method LGBM_BoosterPredictForMats which runs prediction on a data set given as of array of pointers to rows (as opposed to existing method LGBM_BoosterPredictForMat which requires data given as contiguous array)
      
      * Fix incorrect upstream merge
      
      * Add link to LightGBM.NET
      
      * Fix indenting to 2 spaces
      
      * Dummy edit to trigger CI
      
      * Dummy edit to trigger CI
      823fc03c
  2. 18 Mar, 2019 1 commit
    • Markus Cozowicz's avatar
      Added additional APIs to better support JNI on Spark (#2032) · beeb6e0f
      Markus Cozowicz authored
      * added API changes required for JNI performance optimizations (e.g. predict is 3-4x faster)
      
      * removed commented variables
      
      * removed commented header
      
      * renamed method to make it obvious it is created for Spark
      
      * fixed comment alignment
      
      * replaced GetPrimitiveArrayCritical with GetIntArrayElements for training. fixed dead-lock on databricks
      beeb6e0f
  3. 26 Feb, 2019 1 commit
    • remcob-gr's avatar
      Add ability to move features from one data set to another in memory (#2006) · 219c943d
      remcob-gr authored
      * Initial attempt to implement appending features in-memory to another data set
      
      The intent is for this to enable munging files together easily, without needing to round-trip via numpy or write multiple copies to disk.
      In turn, that enables working more efficiently with data sets that were written separately.
      
      * Implement Dataset.dump_text, and fix small bug in appending of group bin boundaries.
      
      Dumping to text enables us to compare results, without having to worry about issues like features being reordered.
      
      * Add basic tests for validation logic for add_features_from.
      
      * Remove various internal mapping items from dataset text dumps
      
      These are too sensitive to the exact feature order chosen, which is not visible to the user.
      Including them in tests appears unnecessary, as the data dumping code should provide enough coverage.
      
      * Add test that add_features_from results in identical data sets according to dump_text.
      
      * Add test that booster behaviour after using add_features_from matches that of training on the full data
      
      This checks:
      - That training after add_features_from works at all
      - That add_features_from does not cause training to misbehave
      
      * Expose feature_penalty and monotone_types/constraints via get_field
      
      These getters allow us to check that add_features_from does the right thing with these vectors.
      
      * Add tests that add_features correctly handles feature_penalty and monotone_constraints.
      
      * Ensure add_features_from properly frees the added dataset and add unit test for this
      
      Since add_features_from moves the feature group pointers from the added dataset to the dataset being added to, the added dataset is invalid after the call.
      We must ensure we do not try and access this handle.
      
      * Remove some obsolete TODOs
      
      * Tidy up DumpTextFile by using a single iterator for each feature
      
      This iterators were also passed around as raw pointers without being freed, which is now fixed.
      
      * Factor out offsetting logic in AddFeaturesFrom
      
      * Remove obsolete TODO
      
      * Remove another TODO
      
      This one is debatable, test code can be a bit messy and duplicate-heavy, factoring it out tends to end badly.
      Leaving this for now, will revisit if adding more tests later on becomes a mess.
      
      * Add documentation for newly-added methods.
      
      * Fix whitespace issues identified by pylint.
      
      * Fix a few more whitespace issues.
      
      * Fix doc comments
      
      * Implement deep copying for feature groups.
      
      * Replace awkward std::move usage by emplace_back, and reduce vector size to num_features rather than num_total_features.
      
      * Copy feature groups in addFeaturesFrom, rather than moving them.
      
      * Fix bugs in FeatureGroup copy constructor and ensure source dataset remains usable
      
      * Add reserve to PushVector and PushOffset
      
      * Move definition of Clone into class body
      
      * Fix PR review issues
      
      * Fix for loop increment style.
      
      * Fix test failure
      
      * Some more docstring fixes.
      
      * Remove blank line
      219c943d
  4. 06 Feb, 2019 1 commit
  5. 02 Feb, 2019 1 commit
  6. 23 Jan, 2019 1 commit
  7. 09 Oct, 2018 1 commit
    • Guolin Ke's avatar
      average predictions for constant features (#1735) · c920e634
      Guolin Ke authored
      * average predictions for constant features
      
      * fix possible numerical issues in std::log.
      
      * fix pylint
      
      * fix bugs in c_api
      
      * fix styles
      
      * clean code for multi class
      
      * rewrite test
      
      * fix pylint
      
      * skip test_constant_features
      
      * refine test
      
      * fix tests
      
      * fix tests
      
      * update FAQ
      
      * fix test
      
      * Update FAQ.rst
      c920e634
  8. 29 Sep, 2018 1 commit
  9. 27 Aug, 2018 1 commit
  10. 25 Aug, 2018 2 commits
    • Guolin Ke's avatar
      add support of refit-decay (#1603) · 2db6377a
      Guolin Ke authored
      * add support of refit-decay
      
      * add refit into c_api
      
      * add test
      
      * update document
      
      * Update basic.py
      
      * Update test_engine.py
      
      * Update basic.py
      
      * Update test_engine.py
      
      * fix comments
      
      * update test
      
      * fix the comments
      
      * Update test_engine.py
      2db6377a
    • dmitryikh's avatar
      Small optimizations and fixes (#1607) · 9bf2de1e
      dmitryikh authored
      * fix optimization rule
      
      * preallocate vector in RowFunctionFromCSR
      9bf2de1e
  11. 23 Aug, 2018 1 commit
  12. 22 Aug, 2018 1 commit
    • Guolin Ke's avatar
      add start_iteration in model saving (#1565) · 941068ee
      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
      941068ee
  13. 21 Aug, 2018 1 commit
  14. 16 Aug, 2018 1 commit
  15. 07 Jul, 2018 1 commit
  16. 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
  17. 11 May, 2018 1 commit
  18. 29 Dec, 2017 2 commits
  19. 17 Dec, 2017 1 commit
  20. 16 Dec, 2017 1 commit
  21. 15 Dec, 2017 2 commits
  22. 14 Dec, 2017 1 commit
  23. 12 Dec, 2017 1 commit
  24. 29 Nov, 2017 1 commit
  25. 27 Nov, 2017 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. 24 Nov, 2017 1 commit
  28. 26 Oct, 2017 1 commit
    • wxchan's avatar
      fix protobuf on vs build (#1004) · 2b20569e
      wxchan authored
      * [optional] support protobuf
      
      * fix windows/LightGBM.vcxproj
      
      * add doc
      
      * fix doc
      
      * fix vs support (#2)
      
      * fix vs support
      
      * fix cmake
      2b20569e
  29. 20 Oct, 2017 1 commit
  30. 19 Oct, 2017 1 commit
  31. 16 Oct, 2017 1 commit
  32. 12 Oct, 2017 1 commit
  33. 11 Oct, 2017 1 commit
    • Tony-Y's avatar
      Fix typos in c_api.cpp (#983) · 5c0afab2
      Tony-Y authored
      * Bounds checking of used_row_indices (#959)
      
      * add Common::check_int32_elements_interval_closed function.
      
      * insert a bounds checking code in LGBM_DatasetGetSubset function of C API.
      
      * Delete a needless function
      
      * delete the function check_int32_elements_interval_closed
      
      * Fix typos
      5c0afab2
  34. 08 Oct, 2017 1 commit
    • Tony-Y's avatar
      Bounds checking of used_row_indices (#959) (#969) · b377f484
      Tony-Y authored
      * Bounds checking of used_row_indices (#959)
      
      * add Common::check_int32_elements_interval_closed function.
      
      * insert a bounds checking code in LGBM_DatasetGetSubset function of C API.
      
      * Delete a needless function
      
      * delete the function check_int32_elements_interval_closed
      b377f484
  35. 29 Aug, 2017 1 commit
  36. 24 Aug, 2017 1 commit
  37. 18 Aug, 2017 1 commit