Ich benutze Python 2.7 mit sklearn und mit sklearn.svm.SVC mit rbf Kernel und leiden über Überanpassung.python sklearn nicht linear svm strafe
Ich versuchte, die C und Gamma Verwendung als here erklärt und es hat nicht den Trick
Wenn ich richtig C und Gamma verstehe nicht L1- und L2-Strafe, weil C die Strafe für die Klassifizierung falsch und Gamma ist der Generalisierungsparameter in Bezug auf die Datenabtastwerte. Ich suche nach etwas, das das Modell für Komplexität wie l1 und l2 bestraft.
Ich möchte Regularisierung und l1 oder l2 Strafe verwenden, fand ich einige Beispiele here, aber wenn ich versuche, die Strafe Parameter mit dem SVC zu verwenden, wirft es und Fehler.
svr_rbf = sklearn.svm.SVC(kernel='rbf', cache_size=1, class_weight={1:100}, penalty='l1')
und den Fehler
traceback (most recent call last):
File "/home/thebeancounter/PycharmProjects/nlp4/try.py", line 235, in <module>
svr_rbf = SVC(kernel='rbf', cache_size=1, class_weight={1:100}, penalty='l1')
TypeError: __init__() got an unexpected keyword argument 'penalty'
Ich weiß, dass das Beispiel für diesen Fall ist nicht gut, und ich versuche, Strafe zu verwenden, die in der SVC abwesend ist, ich bin auf der Suche nach dem richtigen Weg, es zu tun, und das ist das nächste, was ich gefunden habe.
Blick auf die docs für die SVC-Klasse ich sehe, dass es keine Strafe Attribut
hat, wie ich L1- und L2-Strafe mit RBF-Kernel SVM verwenden kann, oder wenn ich kann nicht, wie sonst kann ich versuchen, über zu verhindern passend zu diesem Modell?
Sie erhalten diesen Fehler, weil in dem Beispiel, das Sie über die Beispiele zitiert haben, sie ein [LinearSVC] verwenden (http://scikit-learn.org/stable/modules/generated/sklearn.svm.LinearSVC.html#) sklearn.svm.LinearSVC) –
Der Parameter 'C' ist der Strafparameter von SVC –
@VivekKumar Danke, ich weiß das, ich bin auf der Suche nach dem richtigen Weg – thebeancounter