Kom igångKom igång gratis

Effekten av att ta bort exempel

Stödvektorer definieras som träningsexempel som påverkar beslutsgränsen. I den här övningen ska du observera det beteendet genom att ta bort icke-stödvektorer från träningsdatan.

Vinkvalitetsdatamängden är redan inläst i X och y (endast de två första särdragen). (Obs: vi anger lims i plot_classifier() så att de två diagrammen tvingas använda samma axelgränser och kan jämföras direkt.)

Den här övningen är en del av kursen

Linjära klassificerare i Python

Visa kurs

Övningsinstruktioner

  • Träna en linjär SVM på hela datamängden.
  • Skapa en ny datamängd som bara innehåller stödvektorerna.
  • Träna en ny linjär SVM på den mindre datamängden.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Train a linear SVM
svm = SVC(kernel="linear")
svm.fit(____)
plot_classifier(X, y, svm, lims=(11,15,0,6))

# Make a new data set keeping only the support vectors
print("Number of original examples", len(X))
print("Number of support vectors", len(svm.support_))
X_small = X[____]
y_small = y[____]

# Train a new SVM using only the support vectors
svm_small = SVC(kernel="linear")
svm_small.fit(____)
plot_classifier(X_small, y_small, svm_small, lims=(11,15,0,6))
Redigera och kör kod