luispedro / milk

MILK: Machine Learning Toolkit
http://www.luispedro.org/software/milk
MIT License
605 stars 146 forks source link

Weighted voting AdaBoost #2

Closed ishalyminov closed 13 years ago

ishalyminov commented 13 years ago

Hello Luis!

milk/supervised/weighted_voting_adaboost.py is the code I was supposed to send. I see it as a generalization of AdaBoost for working with multiple class labels.

A learner for this classifier initialization must be already constructed, e.g.: learner = weighted_voting_ada_learner(100, one_against_one(tree_learner(criterion=neg_z1_loss)))

Maybe I am wrong, but I've discovered that multiclass strategies can't work with weights. For an example, one_against_one.train (milk/supervised/multi.py:114). I think this train() method works with no respect to input weights. And that probably causes my adaboost incorrect learning.

Best regards, Igor

luispedro commented 13 years ago

Thank you!

I have merged your request. I am going to use it as a basis for some changes (which I think will improve it): more documentation, adding a test, &c

I will also see whether having the multi class methods propagate the weights is easy or not.

Thanks Luis

On Saturday, October 15, 2011 02:34:29 PM you wrote:

Hello Luis!

milk/supervised/weighted_voting_adaboost.py is the code I was supposed to send. I see it as a generalization of AdaBoost for working with multiple class labels.

A learner for this classifier initialization must be already constructed, e.g.: learner = weighted_voting_ada_learner(100, one_against_one(tree_learner(criterion=neg_z1_loss)))

Maybe I am wrong, but I've discovered that multiclass strategies can't work with weights. For an example, one_against_one.train (milk/supervised/multi.py:114). I think this train() method works with no respect to input weights. And that probably causes my adaboost incorrect learning.

Best regards, Igor

You can merge this Pull Request by running:

git pull https://github.com/ishalyminov/milk master

Or you can view, comment on it, or merge it online at:

https://github.com/luispedro/milk/pull/2

-- Commit Summary --

  • Weighted voting adaboost is a generalization of AdaBoost

-- File Changes --

A milk/supervised/weighted_voting_adaboost.py (76)

-- Patch Links --

https://github.com/luispedro/milk/pull/2.patch https://github.com/luispedro/milk/pull/2.diff