Le principe et le code python de la classification SVM (support vector machine) - faciles à comprendre


Insérer la description de l'image ici

1. Qu'est-ce que SVM ?

SVM (Support Vector Machine) est un algorithme d'apprentissage automatique très populaire qui peut être utilisé pour des problèmes binaires et multi-classifications. L'idée de base est de réaliser une classification en construisant un hyperplan linéaire ou non linéaire qui maximise l'intervalle de classification entre des échantillons de différentes catégories.

2. Étapes d'utilisation

Les étapes de base de la classification SVM sont les suivantes :

  1. Selon les données de l'ensemble d'apprentissage, l'hyperplan optimal (généralement linéaire ou non linéaire) est sélectionné de telle sorte que la distance de séparation maximale existe entre les deux catégories divisées par le plan.
  2. Lorsque vous prédisez de nouvelles données, projetez-les sur l'hyperplan optimal et déterminez à quelle catégorie elles appartiennent en fonction de leur emplacement.

3. Exemple de code Python de l'algorithme de classification SVM

Le code est le suivant (exemple) :

from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC

# 加载鸢尾花数据集
iris = datasets.load_iris()

# 获取特征和标签
X = iris.data
y = iris.target

# 数据集切分
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)

# SVM分类器模型训练
svm_model = SVC(kernel='linear', C=1.0)
svm_model.fit(X_train, y_train)

# 预测测试数据集
predicted_y = svm_model.predict(X_test)

# 打印预测结果及模型评分
print("Predicted labels: ", predicted_y)
print("Accuracy score: ", svm_model.score(X_test, y_test))


Résumer

Dans le code ci-dessus, nous utilisons l'ensemble de données iris pour entraîner et tester le classificateur SVM. Tout d'abord, nous obtenons l'ensemble de données en appelant la fonction de chargement dans la bibliothèque Scikit-learn et le divisons en fonctionnalités et étiquettes. Ensuite, nous avons divisé l'ensemble des données en un ensemble de formation et un ensemble de test, et avons utilisé l'algorithme SVM pour ajuster l'ensemble de données de formation afin d'obtenir le modèle. Enfin, nous utilisons le modèle pour prédire la classification cible dans l'ensemble de test et imprimons les résultats de prédiction et le score de précision du modèle. Dans les applications pratiques, nous devons choisir les variables SVM et les types de fonctions de noyau les plus appropriés (tels quefonction de base linéaire, polynomiale ou radiale etc.).

Je suppose que tu aimes

Origine blog.csdn.net/qlkaicx/article/details/130471177
conseillé
Classement