sklearn官方PDF指南:从安装到高级应用

需积分: 50 8 下载量 164 浏览量 更新于2024-07-09 收藏 25.18MB PDF 举报
《sklearn.pdf》是一份关于机器学习的PDF文档,全面介绍了scikit-learn库的各个方面。该文档分为五个主要章节: 1. 监督学习部分涵盖了多种核心算法: - 广义线性模型:包括逻辑回归和线性回归。 - 线性和二次判别分析 (LDA/QDA):用于分类问题。 - 内核岭回归:通过内核技巧处理非线性关系。 - 支持向量机 (SVM):强大的分类和回归工具。 - 随机梯度下降:一种迭代优化方法。 - 最近邻方法:基于实例的学习。 - 集成方法:如Bagging、Boosting和AdaBoost。 - 多类和多标签算法:处理多分类任务。 - 特征选择:优化模型性能。 - 半监督学习:利用未标记数据。 - 神经网络模型(有监督):深度学习的入门。 2. 无监督学习部分涉及: - 高斯混合模型:聚类和密度估计。 - 流形学习和聚类算法。 - 双聚类和矩阵分解。 - 协方差估计与异常值检测。 - 密度估计和无监督神经网络模型。 3. 模型选择和评估章节: - 交叉验证:评估模型性能的常用技术。 - 超参数调整:优化模型参数以提高性能。 - 模型评估指标:如准确率、精确率和召回率等。 - 模型持久化:保存和加载模型。 - 验证曲线:可视化模型在不同参数下的性能。 4. 检验和数据处理: - 部分依赖图:探索变量之间的关系。 - 数据预处理:包括Pipeline和FeatureUnion的使用。 - 特征提取:从原始数据中提取有价值的信息。 - 缺失值处理、降维技术(如随机投影)以及预处理步骤。 - 预测目标转换:根据问题调整目标变量类型。 - 数据集加载工具:scikit-learn提供的数据集获取方式。 5. 数据集管理和工具: - 通用数据集API:提供标准数据集的访问途径。 - 玩具数据集和真实世界数据集示例。 - 数据集加载的最佳实践。 《sklearn.pdf》文档详细地讲解了如何使用scikit-learn库进行机器学习任务,无论你是初学者还是进阶用户,都能从中找到所需的知识和实用工具。通过阅读和实践文档中的内容,你可以熟练掌握各种机器学习算法的实施和评估方法。

from sklearn.datasets import load_iris from sklearn. model_selection import train_test_split from sklearn.metrics import classification_report from sklearn. neighbors import KNeighborsClassifier from sklearn. metrics import roc_curve, auc import matplotlib.pyplot as plt from sklearn. metrics import confusion_matrix import seaborn as sns import scikitplot as skplt #加载数据集 iris = load_iris() data = iris['data'] label = iris['target'] #数据集的划分 x_train,x_test,y_train,y_test = train_test_split(data,label,test_size=0.3) print(x_train) #模型构建 model = KNeighborsClassifier(n_neighbors=5) model.fit(x_train,y_train) #模型评估 #(1)精确率,召回率,F1分数,准确率(宏平均和微平均) predict = model. predict(x_test) result = classification_report(y_test,predict) print(result) # (2) 混淆矩阵 confusion_matrix = confusion_matrix(y_test, predict) print('混淆矩阵:', confusion_matrix) sns.set(font_scale=1) sns.heatmap(confusion_matrix, annot=True, annot_kws={"size", 16}, cmap=plt.cm.Blues) plt.title('Confusion Matrix') plt.ylabel('True label' ) plt.xlabel('Predicted label') plt.savefig('Confusion matrix. pdf') plt.show() #(3)ROC曲线 Y_pred_prob = model. predict_proba(x_test) plt.figure(figsize= (7,7)) ax= plt. subplot() skplt.metrics.plot_roc_curve(y_test,Y_pred_prob,ax= ax) ax.set_xlabel('False Positive Rate', fontsize = 20) ax.set_ylabel('True Positive Rate ',fontsize = 20) ax.set_title('ROC Areas ',fontsize = 20) plt.xlim((0, 1)) plt.ylim((0, 1)) plt.xticks(fontsize = 18) plt.yticks(fontsize = 18) plt.legend(fontsize =18) plt.savefig(' ROC.pdf') plt.show( ) #(4)P_R曲线 from sklearn.metrics import precision_recall_curve precision, recall, _ =precision_recall_curve(y_test) plt.fill_between(recall, precision,color='b') plt.xlabel('Recall') plt.ylabel('Precision') plt.ylim([0.0, 1.0]) plt.xlim([0.0, 1.0]) plt.plot(recall, precision) plt.title("Precision-Recall") plt.show()

2023-04-20 上传
2023-06-09 上传