metrics_knn = evaluation_classification(y_test,y_pred_knn) print('KNN模型评估结果:',metrics_knn) metrics_svm = evaluation_classification(y_test,y_pred_svm) print('SVM模型评估结果:',metrics_svm)metrics_knn = evaluation_classification(y_test,y_pred_knn) print('KNN模型评估结
时间: 2023-05-20 13:05:00 浏览: 178
果:', metrics_knn),metrics_svm = evaluation_classification(y_test, y_pred_svm) print('SVM模型评估结果:', metrics_svm) 这段代码是用来评估KNN和SVM模型的结果的,其中y_test是测试数据的标签,y_pred_knn和y_pred_svm是KNN和SVM模型的预测结果。评估结果可以用来判断模型的准确性和性能。
相关问题
from sklearn.neighbors import KNeighborsClassifier knn_model = KNeighborsClassifier() knn_model.fit(X_train_std,y_train) print(knn_model.score(X_train_std,y_train)) print(knn_model.score(X_test_std,y_test)) from sklearn.metrics import classification_report, confusion_matrix y_pred =knn_model.predict(X_test) print(classification_report(y_test,y_pred)) cm = confusion_matrix(y_test, y_pred) plt.figure(figsize = (8,8)) sns.heatmap(cm,cmap= "Blues", linecolor = 'black' , linewidth = 1 , annot = True, fmt='' , xticklabels = ['A','B','C','D'] , yticklabels = ['A','B','C','D']) plt.xlabel("Predicted") plt.ylabel("Actual") plt.show() from sklearn.neighbors import KNeighborsClassifier knn_model = KNeighborsClassifier() prams ={ 'n_neighbors':[13,15,18,22]} gd_knn= GridSearchCV(knn_model , param_grid=prams, n_jobs=-1 ,cv=10) gd_knn.fit(X_train_std , y_train) print(gd_knn.best_estimator_) tuned_knn = gd_knn.best_estimator_ print(f'Train : {tuned_knn.score(X_train_std, y_train)}') model_eval(tuned_knn,X_test_std,y_test)
这段代码使用了scikit-learn库中的KNeighborsClassifier类来创建一个K近邻分类器,并使用fit方法对标准化后的训练数据进行拟合。接着,使用score方法计算了模型在训练集和测试集上的准确率,并将其打印输出。之后,使用classification_report和confusion_matrix方法计算并打印了模型的分类报告和混淆矩阵。
随后,使用GridSearchCV方法对K近邻分类器进行调参,尝试不同的n_neighbors参数组合,以求得最优的模型。最后,使用tuned_knn.score方法计算了调参后模型在训练集上的准确率,并使用model_eval方法计算并打印了模型在测试集上的性能表现。
import sklearn.model_selection as ms datas=pd.read_csv(r'C:/Users/20397/Desktop/人工智能实训材料/Day3 分类/wisc_bc_data.csv',sep=',') x=datas.iloc[:,2:32] y=datas.iloc[:,1:2] x_train,x_test,y_train,y_test=ms.train_test_split(x,y,test_size=0.2,random_state=42) y_train=y_train.values.ravel() y_test=y_test.values.ravel() #构建和训练模型 import numpy as np import matplotlib.pyplot as plt from sklearn.neighbors import KNeighborsClassifier import pandas as pd # 构建 knn 模型 knn= KNeighborsClassifier(n_neighbors=43,weights='distance',p=2) #训练KNN模型 knn.fit(x_train,y_train) knn.score(x_train,y_train) # 评估模型效果 from sklearn.metrics import classification_report y_pred=knn.predict(x_test) print(classification_report(y_test,y_pred))
这段代码是一个使用 KNN 算法进行乳腺癌分类的模型。首先,使用 pandas 读取 csv 文件中的数据,并对数据进行切分,将前 30 列作为特征 x,第 2 列作为标签 y。然后使用 sklearn 中的 train_test_split 函数将数据切分为训练集和测试集,其中测试集占比为 20%。接着,使用 KNeighborsClassifier 构建 KNN 模型,其中 n_neighbors 为 43,weights 为 'distance',p 为 2。然后针对训练集进行模型训练,并输出模型在训练集上的得分。最后,使用 classification_report 对模型在测试集上的表现进行评估,并输出评估结果。
阅读全文