* [R-package] introduce keyword arguments for Dataset properties
* adding examples
* trying to fix loading issues
* add check on use of info and fix examples
* eliminate one '...'
* Update R-package/R/lgb.Dataset.R
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* Update R-package/R/lgb.Dataset.R
* Dataset get_params() is public
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* [R-package] fix OpenMP checking on macOS
* adding clang flags back
* fix detection on Mac
* remove CC since it is now unused
* use flags specific to C++11
* regenerate configure
* [R-package] use C++ compiler for pre-compile checks on Windows
* install Matrix in valgrind test
* Add {Matrix} in more places in CI and docs
* use CXX11
* use flags specific to C++11
* missing backtick
Co-authored-by: Nikita Titov <nekit94-12@hotmail.com>
* [R-package] fix protection stack imbalance and unprotected objects issues
* [R-package] fix minor linting issues
* [ci][R-package] change timeout-minutes in valgrind test
* [R-package] remove extra space
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* [R-package] remove counter for number of protected objects
* Update .github/workflows/r_valgrind.yml
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* [R-package] add unit tests on monotone constraints
* testing without skip()
* put skip() back
* make tests consistent with Python
* Update R-package/tests/testthat/test_basic.R
* more changes for consistency with Python tests
* [R-package] move more finalizer logic intoo C++ side
* add C finalizers
* use gc()
* put skip() back
* Update R-package/tests/testthat/test_lgb.Booster.R
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* started converting handles
* more changes
* sort of working for Dataset
* yay all the tests are passing for Dataset handle changes
* working for other handle types
* remove debugging logging
* remove unnecessary spaces
* fix null logic
* more NULL
* updates
* Apply suggestions from code review
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* consolidate steps
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* [R-package] move creation of character vectors in some methods to C++ side
* convert LGBM_BoosterGetEvalNames_R
* convert LGBM_BoosterDumpModel_R and LGBM_BoosterSaveModelToString_R
* remove debugging code
* update docs
* remove comment
* add handling for larger model strings
* handle large strings in feature and eval names
* got long feature names working
* more fixes
* linting
* resize
* Apply suggestions from code review
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* stricter test
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* [R-package] prevent symbol lookup conflicts
* add unit tests
* only run test on Windows
* move to .Call() calls
* fix references
* testing registration for CMake builds
* revert NAMESPACE changes
* revert testing changes
* [R-package] raise errors from C++ side
* working but a lot of warnings
* more changes
* simplify
* cleanup
* linting
* fix valgrind issues
* revert unnecessary change
* use same default arguments as python
* Update R-package/R/lgb.cv.R
Changed.
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* revert change in docs
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* update the explanation of num_threads in lightgbm.R
* adjusted sentences for linting.
* remove white space for lintr pass
* add note about num_thread param in files
* Return feature importances as visible
Feature importances are returned as invisible. I don't get why would anyone want them invisible. This PR fixes it.
* Update R-package/R/lgb.importance.R
Thanks, didn't realize that, changed now.
Co-authored-by: James Lamb <jaylamb20@gmail.com>
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* [ci] Add debian-clang-devel CI job for the R package
* [ci] Add debian-clang-devel CI job for the R package
* fixes
* fix test
* update cran-comments
* re-trigger CI
* catch warnings and notes
* fail with only a NOTE
* uncomment CI code
* remove env vars in windows tests
* Update R-package/cran-comments.md
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
Co-authored-by: StrikerRUS <nekit94-12@hotmail.com>
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* use GitHub Actions to re-generate R configure
* Update R-package/README.md
Co-authored-by: James Lamb <jaylamb20@gmail.com>
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* [R-package] enable use of trees with linear models at leaves (fixes#3319)
* remove problematic pragmas
* fix tests
* try to fix build scripts
* try fixing pragma check
* more pragma checks
* ok fix pragma stuff for real
* empty commit
* regenerate documentation
* try skipping test
* uncomment CI
* add note on missing value types for R
* add tests on saving and re-loading booster
* [ci] move CI jobs from Travis to Azure DevOps (fixes#3519)
* comment out other CIs to avoid wasting cycles
* try without docker
* add container back
* stop using --user in pip install
* run check-docs and lint without container
* job names
* move more jobs to Azure-hosted Linux pool
* fix PATH for check-docs
* uncomment other CI
* uncomment windows
* remove uses of maxParallel
* try moving macos-latest jobs to GitHub Actions
* fix config
* fix missing conda env
* set Python version
* remove commented-out code
* add more to GitHub Actions
* try to fix GPU
* remove static_analysis to prevent conflicts with #3726
* change workflow name
* try using ubuntu:latest docker
* fix conda
* trying to find where permissions first break
* add workaround for sudo
* please azure please
* image syntax
* more sudo
* noninteractive
* LC_ALL
* more sudo
* more stuff
* CONDA dir
* paths
* get path
* missing CONDA
* fix path stuff
* more tests
* fix graphviz
* stuff
* more graphviz
* install xorg-libxau
* graphviz works, run more jobs
* stuff
* enable more tests
* uncomment GitHub Actions
* uncomment all other CIs
* Apply suggestions from code review
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* add travis.yml to Rbuildignore
* add Rbuildignore rule for fmt
* add libomp for clang builds
* changes from code review
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* add explicit return statement to functions in callback.R
* add explicit return statement to functions in lgb.Booster.R
* add explicit return statement to functions in lgb.Dataset.R
* add explicit return statement to functions in lgb.Predictor.R
* add explicit return statement to functions in lgb.cv.R
* add explicit return statement to functions in lgb.interprete.R
* add explicit return statement to functions in lgb.plot.importance.R
* add explicit return statement to functions in saveRDS.lgb.Booster.R
* add explicit return statement to functions in utils.R
* add explicit return statement to functions in lgb.plot.interpretation.R
* add explicit return statement to functions in build_r.R
* fix typo
* return(self) -> return(invisible(self))
* fix some inconsistent indention
* fix test failure
* add another return() statement
* fix linting errors
* 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
* 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>
* update lgb.convert_with_rules.R to use keyword arguments
* update lgb.cv.R to use keyword arguments
* update lgb.importance.R to use keyword arguments
* update lgb.interprete.R to use keyword arguments
* update lgb.plot.interpretation.R to use keyword arguments
* update more internal function calls to use keyword arguments
* update more internal function calls to use keyword arguments
* [R-package] use as.factor() instead of factor() in lgb.cv()
* comment out CIs
* Revert "comment out CIs"
This reverts commit fabaf9a92b.
* empty commit
* bump version for development
* Update .appveyor.yml
* fix typos in CRAN comments
* update configure
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* store without offset in multi_val_dense_bin
* fix offset bug
* add comment for offset
* add comment for bin type selection
* faster operations for offset
* keep most freq bin in histogram for multi val dense
* use original feature iterators
* consider 9 cases (3 x 3) for multi val bin construction
* fix dense bin setting
* fix bin data in multi val group
* fix offset of the first feature histogram
* use float hist buf
* avx in histogram construction
* use avx for hist construction without prefetch
* vectorize bin extraction
* use only 128 vec
* use avx2
* use vectorization for sparse row wise
* add bit size for multi val dense bin
* float with no vectorization
* change multithreading strategy to dynamic
* remove intrinsic header
* fix dense multi val col copy
* remove bit size
* use large enough block size when the bin number is large
* calc min block size by sparsity
* rescale gradients
* rollback gradients scaling
* single precision histogram buffer as an option
* add float hist buffer with thread buffer
* fix setting zero in hist data
* fix hist begin pointer in tree learners
* remove debug logs
* remove omp simd
* update Makevars of R-package
* fix feature group binary storing
* two row wise for double hist buffer
* add subfeature for two row wise
* remove useless code and fix two row wise
* refactor code
* grouping the dense feature groups can get sparse multi val bin
* clean format problems
* one thread for two blocks in sep row wise
* use ordered gradients for sep row wise
* fix grad ptr
* ordered grad with combined block for sep row wise
* fix block threading
* use the same min block size
* rollback share min block size
* remove logs
* Update src/io/dataset.cpp
Co-authored-by: Guolin Ke <guolin.ke@outlook.com>
* fix parameter description
* remove sep_row_wise
* remove check codes
* add check for empty multi val bin
* fix lint error
* rollback changes in config.h
* Apply suggestions from code review
Co-authored-by: Ubuntu <shiyu@gbdt-04.ren3kv4wanvufliwrpy4k03lsf.xx.internal.cloudapp.net>
Co-authored-by: Guolin Ke <guolin.ke@outlook.com>
* 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: Guolin 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: Guolin Ke <guolin.ke@outlook.com>
* Update Parameters.rst
Co-authored-by: Guolin Ke <guolin.ke@outlook.com>
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* 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
* [R-package] add R package logo
* more changes
* add logo in the place CRAN expects
* revert unnecessary Rbuildignore stuff
* uploaded hex logo for R-package in SVG format (#3340)
* remove duplicate logo and fix CI
* use SVG instead of PNG
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* simplify start_iteration param for predict in Python and some code cleanup for start_iteration
* revert docs changes about the prediction result shape
* [R-package] improvements to lgb.convert() functions (fixes#2678, #2681)
* more stuff
* update docs
* remove lgb.convert()
* put internal functions back
* update index
* [R-package] make package installable with CRAN toolchain (fixes#2960)
* Apply suggestions from code review
Co-authored-by: Nikita 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: Nikita 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: Nikita 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: Nikita Titov <nekit94-08@mail.ru>
* 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.
* [R-package] replaced gendef.exe with R code to create R.def (fixes#3064)
* fix broken things
* trying to add R4.0 docs
* changed make
* fixing make paths
* update notes on environment variables
* fix linting
* fixes to CI
* fixing build_cmd and other stuff
* fix bad substitution
* fix Azure Linux builds
* I am bad at bash
* simplifying
* only testing R
* getting better logs
* mingw32
* docs
* toolchain
* using msys
* fix visual studio condition
* toolchain test
* full CI
* fix if-elses
* bump allowed NOTEs
* search for Rscript
* updates to docs
* use processx
* fix mismatched arguments
* move CI to GitHub Actions
* minor changes
* fix workflow file
* fix templating
* fix Azure DevOps
* debugging windows builds
* dont shQuote file name
* all GitHub Actions jobs
* Apply suggestions from code review
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* minor cleanup
* remove objdump printing
* make file.remove() invisible
* Apply suggestions from code review
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* reduce duplicated paths in docs
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* Turn matrix to storage mode "double"
* added "test_Predictor.R" to R tests with check for integer storage mode during prediction
* Explicit integers in test_Preditor to avoid TravisCI failure
* properly aligning comment on storage.mode
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* split double assignment into two lines
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* first test of appveyor
* strings are strings
* lil bit of build script
* fixing paths
* removed unnecessary file
* updated CRAN URL
* added a lot more printing
* fixing paths
* more stuff
* fixed paths
* more stuff
* more path guessing
* even more paths
* more stuff
* moar logz
* and now for something totally different
* please work
* ok could be a thing
* changing directories
* we might be in business
* fixed install syntax
* tryinv mingw
* more mingw
* ignore Suggests check
* trying Azure DevOps
* just run bare minimum for Azure DevOps
* fixed build dir thing
* trying to set libPaths
* more testing
* trying R 3.6.3
* R 3.6.3
* this feels right
* still messing around with libraries
* more paths
* removed duplication in Windows testing code
* simpler
* fixed conda stuff
* more conda stuff
* more fixes
* fixed testing script
* moved AppVeyor setup to the top
* commenting
* ch-ch-ch-ch-chaaaanges
* paths
* plz work
* fixed conda stuff in Windows CI
* uncommented stuff to test a full build
* fixed quotes and removed some unnecessary stuff
* added install.libs.R change
* quotes are impoortant
* added commented-out stuff back in
* added Windows script, download retries, and MSVC linking
* minor fixes
* cleaned up debugging code in FindLibR
* cleaned up debugging code and moved R first in CI
* fixed vsts-ci indentation
* cut documentation stuff out of MSVC build
* fix R CMD check for Azure
* misc whitespace changes
* Added echoing of build logs from R CMD check
* cut out more documentation tests
* fixed NOTE about imports from Matrix
* moved some changes out of this PR and into #2963
* fixed whitespace stuff
* added check on number of NOTES
* adding better checks
* fixing check on NOTEs
* removing unnecessary variable
* Update .ci/test_r_package_windows.ps1
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* some changes
* fix quoting
* trying MINGW on Azure DevOps
* fixing paths
* more paths
* fixing paths
* testing paths
* fixing slashes
* pinned CTAN mirror
* get better logs
* made sure Azure finds MinGW, fixed search for LIBR_CORE_LIBRARY, stopped building R docs on Azure
* Apply suggestions from code review
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* added CXX, CC for Windows builds and changed back to building docs on all MINGW builds
* stored LIBR_CORE_LIBRARY hints in one variable
* Apply suggestions from code review
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* changes from code review
* increased parallel builds for Azure CI
* Apply suggestions from code review
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* [R-package] fix R examples and lgb.plot.interpretation
* remove space in gitignore
* try data.table from conda-forge
* update FAQ
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* Support UTF-8 characters in feature name again
This commit reverts 0d59859c67.
Also see:
- https://github.com/microsoft/LightGBM/issues/2226
- https://github.com/microsoft/LightGBM/issues/2478
- https://github.com/microsoft/LightGBM/pull/2229
I reproduced the issue and as @kidotaka gave us a great survey in #2226,
I don't conclude that the cause is UTF-8, but "an empty string (character)".
Therefore, I revert "throw error when meet non ascii (#2229)" whose commit hash
is 0d59859c67, and add support feture names as UTF-8 again.
* add tests
* fix check-docs tests
* update
* fix tests
* update .travis.yml
* fix tests
* update test_r_package.sh
* update test_r_package.sh
* update test_r_package.sh
* add a test for R-package
* update test_r_package.sh
* update test_r_package.sh
* update test_r_package.sh
* fix test for R-package
* update test_r_package.sh
* update test_r_package.sh
* update test_r_package.sh
* update test_r_package.sh
* update
* updte
* update
* remove unneeded comments
* [R-package] started cutting over from custom R-to-C interface to R.h
* replaced LGBM_SE with SEXP
* fixed error about ocnflicting definitions of length
* got linking working
* more stuff
* eliminated R CMD CHECK note about printing
* switched from hard-coded include dir to the one from FindLibR.cmake
* cleaned up formatting in FindLibR.cmake
* commented-out everything in CI that does not touch R
* more changes
* trying to get better logs
* tried ignoring
* added error message to confirm a suspicion
* still trying to find R during R CMD CHECK
* restore full CI
* fixed comment
* Update R-package/src/cmake/modules/FindLibR.cmake
* changed strategy for finding LIBR_HOME on Windows
* Removed 32-bit Windows stuff in FindLibR.cmake
* Update R-package/src/cmake/modules/FindLibR.cmake
* Update CMakeLists.txt
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Update CMakeLists.txt
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Update R-package/src/cmake/modules/FindLibR.cmake
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* removed some duplication in cmake scripts
* Update R-package/src/cmake/modules/FindLibR.cmake
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Update R-package/src/cmake/modules/FindLibR.cmake
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Update R-package/src/cmake/modules/FindLibR.cmake
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Update R-package/src/cmake/modules/FindLibR.cmake
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Update R-package/src/cmake/modules/FindLibR.cmake
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Update R-package/src/cmake/modules/FindLibR.cmake
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* added LIBR_CORE_LIBRARY back
* small fixes to CMakeLists
* simplified FindLibR.cmake
* some fixes for windows
* Apply suggestions from code review
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* allowed for directly passing LIBR_EXECUTABLE to FindLibR.cmake
* reorganized FindLibR.cmake to catch more cases
* clean up inconsistencies in R calls in FindLibR.cmake
* Update R-package/src/cmake/modules/FindLibR.cmake
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* removed unnecessary log messages
* removed unnecessary unset() call
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* [R-package] Introduced define LGB_BUILD_R to control compilation of lib_lightgbm for the R package
* fixed comment
* switched to cmake options
* fixed typo
* [R-package] [docs] Added documentation on lgb.dl() and data.table version
* added missed table of contents item
* moved known issues to FAQ docs
* fixed formatting
* [R-package] Fixed R implementation of upper_bound() and lower_bound() for lgb.Booster
* [R-package] switched return type to double
* fixed R tests on Booster upper_bound() and lower_bound()
* fixed linting
* moved numeric tolerance into a global constant
* 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: Nikita 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
* Update test values
* 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
* Update src/c_api.cpp
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Update src/io/tree.cpp
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Update src/io/tree.cpp
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Update tests/python_package_test/test_basic.py
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Remoove imports
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* fixed R Dataset aliases
* Update R-package/R/aliases.R
Co-Authored-By: James Lamb <jaylamb20@gmail.com>
* fix one more typo
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* reset
* fix a bug
* fix test
* Update c_api.h
* support to no filter features by min_data
* add warning in reset config
* refine warnings for override dataset's parameter
* some cleans
* clean code
* clean code
* refine C API function doxygen comments
* refined new param description
* refined doxygen comments for R API function
* removed stuff related to int8
* break long line in warning message
* removed tests which results cannot be validated anymore
* added test for warnings about unchangeable params
* write parameter from dataset to booster
* consider free_raw_data.
* fix params
* fix bug
* implementing R
* fix typo
* filter params in R
* fix R
* not min_data
* refined tests
* fixed linting
* refine
* pilint
* add docstring
* fix docstring
* R lint
* updated description for C API function
* use param aliases in Python
* fixed typo
* fixed typo
* added more params to test
* removed debug print
* fix dataset construct place
* fix merge bug
* Update feature_histogram.hpp
* add is_sparse back
* remove unused parameters
* fix lint
* add data random seed
* update
* [R-package] centrallized Dataset parameter aliases and added tests on Dataset parameter updating (#2767)
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
Co-authored-by: James Lamb <jaylamb20@gmail.com>
* various minor style, docs and cpplint improvements
* fixed typo in warning
* fix recently added cpplint errors
* move note for params upper in description for consistency
* [R-package] clarified error messages and documentation for lgb.get.eval.result()
* fixed bad link
* Update R-package/man/lgb.get.eval.result.Rd
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* [R-package] added fixes from codereview back in
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* [R-package] made roxygen2 tags explicit and cleaned up documentation
* Apply suggestions from code review
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Apply suggestions from code review
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* Update R-package/man/lightgbm.Rd
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* [R-package] moved @name to the top of roxygen blocks and removed some inaccurate information in documentation on parameters
Co-authored-by: Nikita Titov <nekit94-08@mail.ru>
* Fix bug where small values of max_bin cause crash.
* Revert "Fix bug where small values of max_bin cause crash."
This reverts commit fe5c8e2547.
* Add auc-mu multiclass metric.
* Fix bug where scores are equal.
* Merge.
* Change name to auc_mu everywhere (instead of auc-mu).
* Fix comparison between signed and unsigned int.
* Change name to AUC-mu in docs and output messages.
* Improve test.
* Use prefix increment.
* Update R package.
* Fix style issues.
* Tidy up test code.
* Read all lines first then process.
* Allow passing AUC-mu weights directly as a list in parameters.
* Remove unused code, improve example and docs.
* Added more linters on R code
* started working on implicit integers
* finished style changes to handle implicit integers
* regenned documentation and added concatenation linter
* changed channel for r-lintr
* try building stringi before lintr
* trying to get libicui18n
* trying another thing
* trying conda-forge again
* added re-install of stringi
* uncommented other stages
* Update .ci/test.sh
Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
* removed apt update and changed lintr version floor
* get lintr from CRAN
* R needs to come before C++ linting
* testing lintr install from CRAN
* trying one more thing
* more verbose
* order might matter
* removed commented code
* cleaned up linting block in test.sh
* grouped conda install calls and fixed a few integer array things