Comparație: regresie logistică și SVM

Clasificatori liniari în Python

Michael (Mike) Gelbart

Instructor, The University of British Columbia

Regresia logistică:

  • Este un clasificator liniar
  • Poate folosi nuclee, dar este lent
  • Oferă probabilități semnificative
  • Poate fi extins la multi-clasă
  • Toți punctele de date influențează modelul
  • Regularizare L2 sau L1

Mașina cu vectori suport (SVM):

  • Este un clasificator liniar
  • Poate folosi nuclee și este rapid
  • Nu oferă probabilități în mod natural
  • Poate fi extins la multi-clasă
  • Doar „vectorii suport" influențează modelul
  • Convențional, doar regularizare L2
Clasificatori liniari în Python

Utilizare în scikit-learn

Regresia logistică în sklearn:

  • linear_model.LogisticRegression

Hiperparametri cheie în sklearn:

  • C (intensitate inversă a regularizării)
  • penalty (tipul de regularizare)
  • multi_class (tipul multi-clasă)

SVM în sklearn:

  • svm.LinearSVC și svm.SVC
Clasificatori liniari în Python

Utilizare în scikit-learn (cont.)

Hiperparametri cheie în sklearn:

  • C (intensitate inversă a regularizării)
  • kernel (tipul de nucleu)
  • gamma (netezime inversă RBF)
Clasificatori liniari în Python

SGDClassifier

SGDClassifier: scalabil pentru seturi mari de date

from sklearn.linear_model import SGDClassifier

logreg = SGDClassifier(loss='log_loss')

linsvm = SGDClassifier(loss='hinge')
  • Hiperparametrul alpha al SGDClassifier corespunde lui 1/C
Clasificatori liniari în Python

Să exersăm!

Clasificatori liniari în Python

Preparing Video For Download...