Anknüpfend von Invalid probability model for large support vector machines using ksvm in R:Linie Suche nicht in der Ausbildung ksvm prob.model
Ich trainiere eine SVM mit ksvm aus dem kernlab Paket in R. ich das Wahrscheinlichkeitsmodell verwenden will, aber während der S-förmige Beschlag ich die folgende Fehlermeldung:
line search fails -1.833726 0.5772808 5.844462e-05 5.839508e-05 -1.795008e-08
-1.794263e-08 -2.096847e-12
Wenn dies geschieht, ist der resultierende Wert von prob.model(m)
ein Vektor aller Wahrscheinlichkeiten, anstatt der erwarteten Parameter einer Sigmoidfunktion über diese Wahrscheinlichkeiten versehen. Was verursacht diesen Fehler und wie kann ich es verhindern? Die Suche nach der Fehlermeldung ergab keine Ergebnisse.
Reproduzierbare Beispiel:
load(url('http://roelandvanbeek.nl/files/df.rdata'))
ksvm(label~value,df[1:1000],C=10,prob.model=TRUE)->m
prob.model(m) # works as it should, prints a list containing one named list
# the below, non-working problem, unfortunately takes an hour due to the large
# sample size
ksvm(label~value,df,C=10,prob.model=TRUE)->m # line search fails
prob.model(m) # just a vector of values
Haben Sie das herausgefunden? –
Nein. Ich habe festgestellt, dass es auch bei kleineren Datensätzen vorkommt, konnte aber noch keine konsistente Erklärung finden. Oft wird durch das Reduzieren oder Erhöhen der Anzahl der Beobachtungen das Problem behoben, das zur Unregelmäßigkeit seiner Natur beiträgt ... – roelandvanbeek
@roelandvanbeek, ich sehe das Problem, wenn ich versuche, die Lernkurve für mein Dataset zu zeichnen, aber wenn ich nur für bestimmte Splits 70/30 zum Beispiel, zeigt es nicht das Problem? meinst du damit, Beobachtungen zu reduzieren oder zu erhöhen? –