Orange Forum • View topic - Build own Learner: Modify Objective Function

Build own Learner: Modify Objective Function

A place to ask questions about methods in Orange and how they are used and other general support.

Build own Learner: Modify Objective Function

Postby cs5080222 » Tue Jul 23, 2013 7:40

Hello,

Is there a way to build your own learner on Orange by modifying the working of existing Learners to neglect some type of errors(belonging to a particular class value)? In the tutorials I only found ways to filter/discretize attributes but not ways to modify the working of existing Orange learners.

It would be helpful if someone can provide me pointers towards some tutorials or examples in which such a thing has been done or talked about.

thanks

Re: Build own Learner: Modify Objective Function

Postby Ales » Fri Aug 02, 2013 10:53

cs5080222 wrote:Is there a way to build your own learner on Orange by modifying the working of existing Learners to neglect some type of errors(belonging to a particular class value)? In the tutorials I only found ways to filter/discretize attributes but not ways to modify the working of existing Orange learners.

It would be helpful if someone can provide me pointers towards some tutorials or examples in which such a thing has been done or talked about.


There is no 'general' way to modify a learner (they can have very different implementations). Do you have a specific learner in mind?

Re: Build own Learner: Modify Objective Function

Postby cs5080222 » Fri Aug 02, 2013 13:56

Ales wrote:
cs5080222 wrote:Is there a way to build your own learner on Orange by modifying the working of existing Learners to neglect some type of errors(belonging to a particular class value)? In the tutorials I only found ways to filter/discretize attributes but not ways to modify the working of existing Orange learners.

It would be helpful if someone can provide me pointers towards some tutorials or examples in which such a thing has been done or talked about.


There is no 'general' way to modify a learner (they can have very different implementations). Do you have a specific learner in mind?


Hi Ales. I want to modify the working of tree and the boosted learner.For instance, I want to add weight/penalty value to the misclassification in the boosted learner when it begins a new iteration. Right now it is same for every training data instance that is misclassified by the learner. I would like to incorporate a penalty function in which for some misclassifications the penalty or accuracy drop is high and vice versa. Is it possible to do such a thing. Can weight meta variable be also used to somehow model this thing?

Re: Build own Learner: Modify Objective Function

Postby Ales » Wed Aug 07, 2013 10:34

cs5080222 wrote:I want to modify the working of tree and the boosted learner.For instance, I want to add weight/penalty value to the misclassification in the boosted learner when it begins a new iteration. Right now it is same for every training data instance that is misclassified by the learner. I would like to incorporate a penalty function in which for some misclassifications the penalty or accuracy drop is high and vice versa.

As it currently stands, you would have to reimplement the BoostedLearner. There is no way to extend the AdaBoost algorithm whithout reimplementing the whole '__call__' method to incorporate the different cost updates.


Return to Questions & Support



cron