add kernel method and svm with soft margin