Giter VIP home page Giter VIP logo

ktboost's People

Contributors

basecondev avatar davidlkl avatar fabsig avatar sroecker avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

ktboost's Issues

Is it possible to add a monotone constraint?

Hi Mr. Sigrist:

Thank you for implementing such a cool algorithm! I am wondering whether it is possible to add a monotone constraint to the main function. This is crucial for problems such as credit scoring for which domain knowledge is important and supported by most major implementations of boosting models such as Xgboost and LightGBM.

Happy boosting!

Sincerely,

Yu Cao

Compatibility with scikit-learn 0.24.0

I am using KTBoost 0.1.19 and got the following error:

Traceback (most recent call last):

File "train_model.py", line 135, in
ktb_regressor.fit(X_train_cv, y_train_cv)

File "C:\ProgramData\Anaconda3\lib\site-packages\KTBoost\KTBoost.py", line 1755, in fit
n_stages = self._fit_stages(X, y, y_pred, sample_weight, self._rng,

File "C:\ProgramData\Anaconda3\lib\site-packages\KTBoost\KTBoost.py", line 1820, in _fit_stages
y_pred = self._fit_stage(i, X, y, y_pred, sample_weight,

File "C:\ProgramData\Anaconda3\lib\site-packages\KTBoost\KTBoost.py", line 1361, in _fit_stage
tree.fit(X, residual, sample_weight=weights,

File "C:\ProgramData\Anaconda3\lib\site-packages\KTBoost\tree.py", line 1130, in fit
super(DecisionTreeRegressor, self).fit(

File "C:\ProgramData\Anaconda3\lib\site-packages\KTBoost\tree.py", line 368, in fit
builder.build(self.tree_, X, y, sample_weight, X_idx_sorted)

File "sklearn\tree_tree.pyx", line 136, in sklearn.tree._tree.DepthFirstTreeBuilder.build

TypeError: build() takes at most 4 positional arguments (5 given)

Thanks in advance!

Multiprocessing with KTBoost

Hello!

When I assess my CPU usage using top, I see only 1 CPU being used. Is it possible to enable or implement multiprocessing?

TypeError: __init__() got an unexpected keyword argument 'min_weight_leaf'

I get the following error when trying to apply a Grabit model with KTBoost.BoostingRegressor(loss='tobit', yl=0, yu=1).fit(X, Y):

Traceback (most recent call last):
File "", line 2, in
File "...\KTBoost\KTBoost.py", line 1745, in fit begin_at_stage, monitor, X_idx_sorted)
File "...\KTBoost\KTBoost.py", line 1810, in _fit_stages nTreeKernel, X_csc, X_csr)
File "...\KTBoost\KTBoost.py", line 1354, in _fit_stage presort=self.presort)
TypeError: init() got an unexpected keyword argument 'min_weight_leaf'

mae criterion is very slow compared to mse or friedman_mse for classification

Hello,

I did some bench w/ the 3 criterions available for classification, and mae is at least one order of magnitude slower. any reason?

model = KTBoost.BoostingClassifier(loss='deviance',update_step='hybrid', criterion='mae',
                                   n_estimators=50, random_state=seed)
model.fit(X_train,y_train)
probas = model.predict_proba(X_test) 

sample_weight is being multiplied twice - Tobit Loss

In the negative gradient of the tobit loss function, residual accounts for the sample_weight for each observation. In addition to that, sample weight is being accounted for again in the leaf update step. There might double accounting for sample weights for the tobit update step.

Whereas all the other loss functions account for sample weight only in the leaf update step.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.