Answers.Body: <p>The sigmoid kernel is better suited for binary classifications. As the IRIS dataset is for multi-class classification, its performance was not as good as other kernels. You can train with only 2 types of flowers to see if the sigmoid kernel can perform well.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-06-18T18:33:40.227Z
Answers.Text: Thanks for your answer. Is this due to it’s ability to change any value from 0 to 1? I will definitely check two classes.
Answers.UserDisplayName: Gooday2die
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-06-18T18:45:01.460Z
Answers.Text: the value of sigmoid can range from 0 to 1. But for large positive input it outputs 1 and large negative value it outputs 0. It outputs 0.5 for input 0. So we can see that it can differentiate only between two classes taking value 0 for one class and 1 for another. For multiclass it don't know how to choose the correct values.
Answers.UserDisplayName: SrJ
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-06-19T01:57:37.070Z
Answers.Text: Oh, I 100% get what you are saying. I have tried out 2-class data with sigmoid and it's accuracy got better but was less than other three. I will try more parameters. Thanks!
Answers.UserDisplayName: Gooday2die
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-06-18T18:30:59.357Z
Answers.LastActivityDate: 2020-06-22T12:37:33.090Z
Answers.LastEditDate: 2020-06-22T12:37:33.090Z
Answers.UserDisplayName: SrJ
Body: <p>While I was playing with some hyperparameters, I came to a wired situation. My dataset is IRIS dataset to be specific. SVM algorithm has some hyperparameters that we can tune, such as Kernels, and C value. <a href="https://i.sstatic.net/gEq4T.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/gEq4T.png" alt="enter image description here" /></a></p>
  <p>(All accuracy calculations and SVM are from sklearn package to be specific)</p>
  <p>I made a comparison between kernels and noticed sigmoid kernel was performing way worse in terms of accuracy. It is more than 3 times less accuracy than RBF, Linear, and Polynomial. I do know that kernels are quite data-sensitive and data-specific, but I would like to know <strong>&quot;Which types of data is sigmoid kernel good at any example? or is this my fault due to wrong C value for sigmoid kernel?&quot;</strong></p>
  
Tags: <algorithm><performance><support-vector-machine><accuracy><sigmoid>
Title: Which kind of data does sigmoid kernel performance well?
UserDisplayName: Gooday2die
ThreadText: # Which kind of data does sigmoid kernel performance well?
  
  (Asked by: username_0 on 2020-06-18)
  
  While I was playing with some hyperparameters, I came to a wired situation. My dataset is IRIS dataset to be specific. SVM algorithm has some hyperparameters that we can tune, such as Kernels, and C value. [![enter image description here](https://i.sstatic.net/gEq4T.png)](https://i.sstatic.net/gEq4T.png)
  
  (All accuracy calculations and SVM are from sklearn package to be specific)
  
  I made a comparison between kernels and noticed sigmoid kernel was performing way worse in terms of accuracy. It is more than 3 times less accuracy than RBF, Linear, and Polynomial. I do know that kernels are quite data-sensitive and data-specific, but I would like to know **"Which types of data is sigmoid kernel good at any example? or is this my fault due to wrong C value for sigmoid kernel?"**
  
  **Tags:** algorithm, performance, support-vector-machine, accuracy, sigmoid
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2020-06-18. Score: 0 | Accepted answer
  
  The sigmoid kernel is better suited for binary classifications. As the IRIS dataset is for multi-class classification, its performance was not as good as other kernels. You can train with only 2 types of flowers to see if the sigmoid kernel can perform well.
  
  > **Comments:**
  > **username_0**: Thanks for your answer. Is this due to it’s ability to change any value from 0 to 1? I will definitely check two classes.  
  > **username_1**: the value of sigmoid can range from 0 to 1. But for large positive input it outputs 1 and large negative value it outputs 0. It outputs 0.5 for input 0. So we can see that it can differentiate only between two classes taking value 0 for one class and 1 for another. For multiclass it don't know how to choose the correct values.  
  > **username_0**: Oh, I 100% get what you are saying. I have tried out 2-class data with sigmoid and it's accuracy got better but was less than other three. I will try more parameters. Thanks!  
  
  ---
  
  