SVM labeling more classes does not result in higher accuracy? I used SVM to predict the ranking score of muffin recipes. X is a numpy array of ingredient amounts of a certain recipe and y is the label according to the online ranking score. First I labelled my data in two classes like this: 
ranking < 3.5 - label = 0
ranking > 3.5 - label = 1

Then I labelled my data like this: 
ranking < 3.5 - label = 0 
ranking between 3.5 & 4.25 - label = 1
ranking > 4.25 - label = 2

By doing this the accuarcy decreased by 20%! How is this possible? Dividing my data in more classes should have led to a higher accuracy score right? How can we explain this? 
 A: Usually, classification will become more difficult when increasing the amount of classes for the same samples and features - because this means there are more options for the target variable (= more possibilities for confusion). In your case: in the first scenario, there was no confusion possible within the 1 class, but in the second scenario, there is, because those belong to different classes now. Therefore, if you count confusion of 1 and 2 as error that you measure within the one, overall accuracy, you definitely made the problem harder - as you now have more possibilities to make errors using the same samples and features (simplest example: have 1 constant class label - no error possible at all).
BTW: with more than 2 classes you might need to look at other metrics than one scalar performance value that gives you more information about what is going on anyway. Consider using a confusion matrix (and poss. looking at the distribution at TPR/TNR, ROC/AUC etc. over different classes).
