shaare.it

ValueError: SVC degree must be a positive integer

ValueError: degree must be positive integer

$ python -c "from sklearn.svm import SVC; SVC(kernel='poly', degree=0).fit([[0],[1]], [0,1])"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ValueError: degree must be a positive integer

Why this happens

For the polynomial kernel (kernel='poly'), degree controls the polynomial order. Zero, negative, or non-integer values are invalid.

Fix

Set degree to a positive integer such as 2 or 3.

Wrong code

from sklearn.svm import SVC
clf = SVC(kernel='poly', degree=-2)
clf.fit([[0],[1]], [0,1])

Fixed code

from sklearn.svm import SVC
clf = SVC(kernel='poly', degree=3)
clf.fit([[0],[1]], [0,1])