https://github.com/arogozhnikov/infiniteboost

InfiniteBoost: building infinite ensembles with gradient descent

https://github.com/arogozhnikov/infiniteboost

Science Score: 20.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Committers with academic emails
    1 of 5 committers (20.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.3%) to scientific vocabulary

Keywords

experiments gradient-boosting machine-learning random-forest research
Last synced: 5 months ago · JSON representation

Repository

InfiniteBoost: building infinite ensembles with gradient descent

Basic Info
  • Host: GitHub
  • Owner: arogozhnikov
  • Language: Jupyter Notebook
  • Default Branch: master
  • Homepage:
  • Size: 4.65 MB
Statistics
  • Stars: 184
  • Watchers: 11
  • Forks: 22
  • Open Issues: 2
  • Releases: 0
Topics
experiments gradient-boosting machine-learning random-forest research
Created over 8 years ago · Last pushed over 7 years ago
Metadata Files
Readme

README.md

InfiniteBoost

Code for a paper
InfiniteBoost: building infinite ensembles with gradient descent (arXiv:1706.01109).
A. Rogozhnikov, T. Likhomanenko

Description

InfiniteBoost is an approach to building ensembles which combines best sides of random forest and gradient boosting.

Trees in the ensemble encounter mistakes done by previous trees (as in gradient boosting), but due to modified scheme of encountering contributions the ensemble converges to the limit, thus avoiding overfitting (just as random forest).

Left: InfiniteBoost with automated search of capacity vs gradient boosting with different learning rates (shrinkages), right: random forest vs InfiniteBoost with small capacities.

More plots of comparison in research notebooks and in research/plots directory.

Reproducing research

Research is performed in jupyter notebooks (if you're not familiar, read why Jupyter notebooks are awesome).

You can use the docker image arogozhnikov/pmle:0.01 from docker hub. Dockerfile is stored in this repository (ubuntu 16 + basic sklearn stuff).

To run the environment (sudo is needed on Linux): bash sudo docker run -it --rm -v /YourMountedDirectory:/notebooks -p 8890:8890 arogozhnikov/pmle:0.01 (and open localhost:8890 in your browser).

InfiniteBoost package

Self-written minimalistic implementation of trees as used for experiments against boosting.

Specific implementation was used to compare with random forest and based on the trees from scikit-learn package.

Code written in python 2 (expected to work with python 3, but not tested), some critical functions in fortran, so you need gfortran + openmp installed before installing the package (or simply use docker image).

```bash pip install numpy pip install .

testing (optional)

cd tests && nosetests . ```

You can use implementation of trees from the package for your experiments, in this case please cite InfiniteBoost paper.

Owner

  • Name: Alex Rogozhnikov
  • Login: arogozhnikov
  • Kind: user
  • Location: San Francisco
  • Company: Aperture Science

ML + Science, einops, scientific tools

GitHub Events

Total
Last Year

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 47
  • Total Committers: 5
  • Avg Commits per committer: 9.4
  • Development Distribution Score (DDS): 0.362
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Alex Rogozhnikov a****v 30
tlikhomanenko t****s@y****u 14
Lilian Besson N****n 1
Alexander Molchanov b****t@m****g 1
Ubuntu u****u@n****h 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 8
  • Total pull requests: 2
  • Average time to close issues: 3 months
  • Average time to close pull requests: 2 days
  • Total issue authors: 7
  • Total pull request authors: 2
  • Average comments per issue: 1.13
  • Average comments per pull request: 1.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • kroscek (2)
  • atans96 (1)
  • vfdev-5 (1)
  • sbrugman (1)
  • hrstoyanov (1)
  • vatn (1)
  • mustuner (1)
Pull Request Authors
  • Naereen (1)
  • bonext (1)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

Dockerfile docker
  • ubuntu 16.04 build
setup.py pypi
  • hep_ml *
  • nose *
  • numpy *
  • pandas *
  • scikit-learn *
  • scipy *
  • six *