El principio y el código Python de la clasificación SVM (máquina de vectores de soporte): fácil de entender


Insertar descripción de la imagen aquí

1. ¿Qué es SVM?

SVM (Support Vector Machine) es un algoritmo de aprendizaje automático muy popular que se puede utilizar para problemas binarios y de clasificación múltiple. La idea básica es lograr la clasificación construyendo un hiperplano lineal o no lineal que maximice el intervalo de clasificación entre muestras de diferentes categorías.

2. Pasos de uso

Los pasos básicos de la clasificación SVM son los siguientes:

  1. De acuerdo con los datos del conjunto de entrenamiento, se selecciona el hiperplano óptimo (generalmente lineal o no lineal) de modo que exista la distancia de separación máxima entre las dos categorías divididas por el plano.
  2. Al predecir nuevos datos, proyéctelos en el hiperplano óptimo y determine a qué categoría pertenece en función de su ubicación.

3. Ejemplo de código Python del algoritmo de clasificación SVM

El código es el siguiente (ejemplo):

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))


Resumir

En el código anterior, utilizamos el conjunto de datos del iris para entrenar y probar el clasificador SVM. Primero, obtenemos el conjunto de datos llamando a la función de carga en la biblioteca Scikit-learn y dividiéndolo en características y etiquetas. Luego, dividimos todo el conjunto de datos en un conjunto de entrenamiento y un conjunto de prueba, y utilizamos el algoritmo SVM para ajustar el conjunto de datos de entrenamiento para obtener el modelo. Finalmente, utilizamos el modelo para predecir la clasificación objetivo en el conjunto de prueba e imprimimos los resultados de la predicción y la puntuación de precisión del modelo. En aplicaciones prácticas, debemos elegir las variables SVM y los tipos de funciones del núcleo más adecuados (comofunción de base lineal, polinómica o radial etc.).

Supongo que te gusta

Origin blog.csdn.net/qlkaicx/article/details/130471177
Recomendado
Clasificación