Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adaboost #30

Open
wants to merge 16 commits into
base: master
Choose a base branch
from
Open

Adaboost #30

wants to merge 16 commits into from

Conversation

parismita
Copy link
Collaborator

No description provided.

@aldro61
Copy link
Owner

aldro61 commented Feb 22, 2019

I'm not sure why, but there are some problems with the c++ solver on Mac. It works perfectly on linux. I'll take a look.

@aldro61
Copy link
Owner

aldro61 commented Feb 23, 2019

It's fixed! I'm having a hard time pushing the changes, but I'll do it this weekend.

@parismita
Copy link
Collaborator Author

@aldro61 the mmitboost and mmitboost.predict has most of the code same...as we cant find the prediction value without running it, and as its iterative process hence mmitboost cant be used for prediction

So is there any way to improve this?

@aldro61
Copy link
Owner

aldro61 commented Feb 24, 2019

There might be some code that can be reused, maybe packaged into one or many utility functions. But before that, we should make sure that the implementation is ok.

I think that the Adaboost algorithm that you implemented is for classification. The algorithm is different for regression. Scikit-learn implements the following version (Adaboost.R2) https://www.researchgate.net/publication/2424244_Improving_Regressors_Using_Boosting_Techniques.

Note that according to this algorithm, the training data needs to be resampled with replacement before training each tree. Also, there seems to be a learning rate hyperparameter that can be tuned by the user.

@parismita
Copy link
Collaborator Author

ok....i'll check that and update

parismita and others added 10 commits March 20, 2019 00:36
return result including trees, B value, predictions of each tree
Merge branch 'master' of https://github.com/aldro61/mmit

Conflicts:
	Rpackage/R/mmif.R
	Rpackage/R/mmif.cv.R
	Rpackage/R/mmit.cv.R
	Rpackage/R/mmitboost.R
	Rpackage/R/mmitboost.predict.R
	Rpackage/man/mmit.Rd
	Rpackage/src/registerDynamicSymbol.c
upper = prediction - target.mat[,2] + margin
upper[upper < 0] <- 0
if(loss == 'hinge'){
cost = lower + upper
Copy link
Collaborator Author

@parismita parismita Jul 21, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@aldro61 How to make sure that cost is between 0 to 1?

#'
#' @export
mmitboost.predict <- structure(function(target.mat, mmitboost_results) {
final_scores <- weighted.mean(mmitboost_results$pred, mmitboost_results$B)
Copy link
Collaborator Author

@parismita parismita Jul 21, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@aldro61 How to implement weighted median?

Selection_083

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants