BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.

Dear Members;

How to implement multi target svm in SAS Enterprise Miner 13.2?

I know the HPSVM is implemented for binary classification? Is there found any method to implement it now?

Regards

1 ACCEPTED SOLUTION

Accepted Solutions
RalphAbbey
SAS Employee

Currently in enterprise miner the SVM node can only handle binary classification.

With a bit of work, you can get multi class SVM working. Here are the steps:

1) Create a new column for each level of the target. For column1, each observation should have a value of 1 if the target is level1 or 0 otherwise. For column2 each observation should have a value of 1 if the target is level2 or 0 otherwise. Repeat this for each level of the target.

2) Run a number of SVM models equal to the number of levels of the target. For each SVM model, specify the target as one of the newly created columns. You're using each created column as a binary target, and by creating an SVM model for each, you then have covered all of the levels of the target variable.

3) For the SVM model built on level1 you will get a probability that the target is level1, for the SVM model built on level2 you will get a probability that the target is level2, and so on. Choose the largest probability, and the level of the target associated with it.

4) For scoring new data, you score an observation using each model. Pick the level with the highest probability assigned to it from among all the models.

I hope this helps give some guidance.

View solution in original post

2 REPLIES 2
RalphAbbey
SAS Employee

Currently in enterprise miner the SVM node can only handle binary classification.

With a bit of work, you can get multi class SVM working. Here are the steps:

1) Create a new column for each level of the target. For column1, each observation should have a value of 1 if the target is level1 or 0 otherwise. For column2 each observation should have a value of 1 if the target is level2 or 0 otherwise. Repeat this for each level of the target.

2) Run a number of SVM models equal to the number of levels of the target. For each SVM model, specify the target as one of the newly created columns. You're using each created column as a binary target, and by creating an SVM model for each, you then have covered all of the levels of the target variable.

3) For the SVM model built on level1 you will get a probability that the target is level1, for the SVM model built on level2 you will get a probability that the target is level2, and so on. Choose the largest probability, and the level of the target associated with it.

4) For scoring new data, you score an observation using each model. Pick the level with the highest probability assigned to it from among all the models.

I hope this helps give some guidance.

husseinmazaar
Quartz | Level 8

Dear Ralph

Thanks so much, your comments have helped me more .

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

How to choose a machine learning algorithm

Use this tutorial as a handy guide to weigh the pros and cons of these commonly used machine learning algorithms.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 2 replies
  • 2580 views
  • 1 like
  • 2 in conversation