Em um SVM, você está procurando por duas coisas: um hiperplano com a maior margem mínima e um hiperplano que separa corretamente o maior número possível de instâncias. O problema é que nem sempre você conseguirá as duas coisas. O parâmetro c determina quão grande é o seu desejo para o último. Eu desenhei um pequeno exemplo abaixo para ilustrar isso. À esquerda, você tem um c baixo, o que fornece uma margem mínima bastante grande (roxa). No entanto, isso exige que negligenciemos o círculo azul que não conseguimos classificar correto. À direita, você tem um alto c. Agora você não negligenciará o outlier e, portanto, terá uma margem muito menor.
Então, qual desses classificadores é o melhor? Isso depende da aparência dos dados futuros que você irá prever e, na maioria das vezes, você não sabe disso, é claro. Se os dados futuros forem assim:
então, o classificador aprendido usando um valor c grande é o melhor.
Por outro lado, se os dados futuros forem assim:
então, o classificador aprendido usando um valor c baixo é o melhor.
Dependendo do seu conjunto de dados, alterar c pode ou não produzir um hiperplano diferente. Se isso acontecer produzir um hiperplano diferente, isso não implica que o classificador irá saída classes diferentes para os dados específico que você tê-lo usado para classificar. O Weka é uma boa ferramenta para visualizar dados e brincar com diferentes configurações para um SVM. Isso pode ajudá-lo a ter uma idéia melhor da aparência de seus dados e por que alterar o valor c não altera o erro de classificação. Em geral, ter poucas instâncias de treinamento e muitos atributos facilita a separação linear dos dados. Além disso, o fato de você estar avaliando seus dados de treinamento e não os novos dados invisíveis facilita a separação.
De que tipo de dados você está tentando aprender um modelo? Quantos dados? Podemos ver isso?