AI人工智能机器学习之监督学习和集成学习

embedded/2025/2/27 6:59:00/

1、概要

  本篇学习AI人工智能机器监督学习框架下的集成学习,以鸢尾花iris数据集、随机森林模型和梯度提升为示例,从代码层面测试和讲述监督学习和集成学习能。

2、监督学习和集成学习 - 简介

监督学习和集成学习是机器学习领域中的两个重要概念。

  • 监督学习是一种机器学习任务,其中模型在已标记的数据集上进行训练。
  • 集成学习是一种通过结合多个模型来提高模型性能的技术。利用多个模型的预测结果,通过某种方式进行组合,从而得到比单一模型更好的预测结果。

本篇,以两个示例讲述监督学习框架下集成学习(ensemble learning)的使用方法:

  • 示例1:Random Forest, 随机森林是决策树的集成学习方法,通过构建多个决策树并进行投票来提高预测的准确性
  • 示例2:Gradient Boosting, 梯度提升机是一种强大的集成学习算法,它通过迭代地训练决策树来最小化损失函数,从而提高模型的预测性能

3、集成学习

3.1、安装依赖

python安装机器学习库: pip install scikit-learn

3.2、示例1: 随机森林
from sklearn.datasets import load_iris, make_classification
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier, GradientBoostingClassifier
from sklearn.metrics import accuracy_score, classification_report# 1. 加载数据集, 特征矩阵X, 目标向量y
data = load_iris()
X, y = data.data, data.target# 2. 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)# 3. 创建随机森林分类器实例
model = RandomForestClassifier(n_estimators=100)  # n_estimators表示树的数量# 4. 训练模型
model.fit(X_train, y_train)# 5. 进行预测
y_pred = model.predict(X_test)# 6. 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print(f"准确率为: {accuracy:.2f}")

运行上述代码,您将得到如下输出:

准确率为: 1.00
3.3、示例2:梯度提升机
from sklearn.datasets import load_iris, make_classification
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier, GradientBoostingClassifier
from sklearn.metrics import accuracy_score, classification_report# 生成模拟数据集
X, y = make_classification(n_samples=100, n_features=3, n_redundant=1, n_classes=2, random_state=42)# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)# 创建梯度提升机分类器实例
model = GradientBoostingClassifier(n_estimators=100, learning_rate=0.1, random_state=42)# 训练模型
model.fit(X_train, y_train)# 进行预测
y_pred = model.predict(X_test)# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print(f"准确率为: {accuracy:.2f}")

运行上述代码,您将得到如下输出:

准确率为: 0.93

通过以上两个监督学习框架下集成学习的示例,总结一下监督学习需要的过程:

  1. 数据收集:收集训练用的数据集,同时对数据打上标签。
  2. 数据预处理:清洗和准备数据,例如处理缺失值、归一化等。
  3. 模型选择:选择适合的算法,例如线性回归、支持向量机、决策树等。
  4. 训练模型:使用训练数据训练模型,使其能够识别输入与输出之间的关系。
  5. 模型评估:使用测试数据集评估模型的性能,通常使用指标如准确率、精确率、召回率等。
  6. 模型优化:根据评估结果对模型进行调优,以提高预测性能。

集成学习,常常在监督学习的框架下使用。在机器学习sklearn.ensemble中封装了大部分集成学习方法,包括Bagging(自助法)、Boosting(提升法)、Staking(堆叠法)

4、 总结

本篇以鸢尾花iris数据集、随机森林模型和梯度提升为示例,从代码层面讲述监督学习和集成学习的相关知识。


http://www.ppmy.cn/embedded/167476.html

相关文章

ES6新增语法

一、定义变量 1.1 新增变量关键字 let 变量 const 常量 1.2 let/const 与var 的区别? 1.2.1 预解析 var会进行与解析 let/const没有与解析,必须先声明后使用 1.2.2重复变量名 var定义的变量可以崇明 let/const 不允许定义重名变量 1.2.3 块级作…

在线抽奖系统——项目介绍

目录 项目介绍 页面预览 需求分析 管理员登录注册 人员模块 奖品模块 活动模块 抽奖模块 系统设计 系统架构 项目环境 数据库设计 安全设计 完整代码:项目完整代码/在线抽奖系统/lottery-system Echo/project - 码云 - 开源中国 项目介绍 利用 MySQ…

深度学习笔记数学方面——矩阵计算,自动求导

坚持每天打卡学习深度学习,今天学了数学部分。 1.列向量的导数是横向量 2 分子布局符号 分母布局符号对于分子布局和分母布局的结果来说,两者相差一个转置。 3.一些求导公式,加粗为向量 4.自动求导,计算一个函数在指定值上的导…

使用 Python 实现声纹和声音识别并集成到会议记录程序中

要使用 Python 实现声纹和声音识别并集成到会议记录程序中,可以按照以下步骤进行: 1. 安装必要的库 需要安装一些 Python 库,如 SpeechRecognition 用于语音识别,pyAudio 用于音频输入,resemblyzer 用于声纹识别。可…

【论文笔记】ClipSAM: CLIP and SAM collaboration for zero-shot anomaly segmentation

原文链接 摘要 近年来,CLIP 和 SAM 等基础模型在零样本异常分割 (ZSAS) 任务中展现出良好的性能。然而,无论是基于 CLIP 还是基于 SAM 的 ZSAS 方法,仍然存在不可忽视的关键缺陷:1) CLIP 主要关注不同输入之间的全局特征对齐&am…

AI手机的技术细节

前序:先说各个功能涉及到的技术,再说宏观系统架构。AI手机有这样几个做法,给手机侧边增加一个按键;把手机的语音助手做的很好,能够快速稳定的进行唤醒;通过特殊形式的触摸手机的曲面屏位置等来进行唤醒AI …

用PyTorch从零构建 DeepSeek R1:模型架构和分步训练详解

DeepSeek R1 的完整训练流程核心在于,在其基础模型 DeepSeek V3 之上,运用了多种强化学习策略。 本文将从一个可本地运行的基础模型起步,并参照其技术报告,完全从零开始构建 DeepSeek R1,理论结合实践,逐步…

清华大学DeepSeek赋能职场教程下载,清华大学DeepSeek文档下载(完成版下载)

文章目录 一、清华大学DeepSeek赋能职场教程下载二、DeepSeek的三种模式三、DeepSeek两种模型的对比四、DeepSeek两种模型的提示语差异:五、DeepSeek的应用场景: 一、清华大学DeepSeek赋能职场教程下载 该文档是清华大学DeepSeek在职场应用中的赋能展开,涵盖团队背…