当前位置: 首页 > news >正文

九龙坡网站建设oa办公系统开发

九龙坡网站建设,oa办公系统开发,医疗集团手机网站建设,高端品牌男装文章目录 一、决策树简介二、决策树的构建原理2.1 决策树的优缺点优点缺点 三、随机森林简介3.1 随机森林的构建过程3.2 随机森林的优缺点优点缺点 四、Python实现决策树和随机森林4.1 导入必要的库4.2 加载数据集并进行预处理4.3 创建决策树模型并进行训练4.4 可视化决策树4.5… 文章目录 一、决策树简介二、决策树的构建原理2.1 决策树的优缺点优点缺点 三、随机森林简介3.1 随机森林的构建过程3.2 随机森林的优缺点优点缺点 四、Python实现决策树和随机森林4.1 导入必要的库4.2 加载数据集并进行预处理4.3 创建决策树模型并进行训练4.4 可视化决策树4.5 创建随机森林模型并进行训练4.6 模型预测与评估 五、总结5.1 学习要点5.2 练习题 一、决策树简介 决策树Decision Tree是一种树状结构的监督学习算法可以用于分类和回归任务。它通过递归地将数据划分成不同的子集直至每个子集只包含一个类别对于分类问题或达到某种特定的条件对于回归问题。 决策树非常直观类似于人们在做决定时的思维过程。例如在判断是否买房时可能会依次考虑预算、房屋位置和是否满足个人需求等因素。决策树的结构由节点node和边branch组成节点表示数据特征边表示根据特征划分的数据路径。 二、决策树的构建原理 决策树的构建过程主要包括以下几步 选择特征进行分裂在每个节点选择一个特征对数据进行划分使得划分后的子集之间的纯度或均匀度尽可能高。分裂节点根据选择的特征将数据划分为两个或多个子集。停止条件递归地对每个子集构建子节点直至满足停止条件如树的最大深度或节点中的样本数小于某个阈值。 在选择特征进行分裂时通常会使用一些标准来衡量子集的纯度包括 基尼不纯度Gini Impurity用于衡量节点中样本的混杂程度值越小表示节点越纯。 G 1 − ∑ i 1 k p i 2 G 1 - \sum_{i1}^{k} p_i^2 G1−i1∑k​pi2​ 其中p_i 表示第 i 类样本的比例。 信息增益Information Gain用于衡量使用某个特征划分后的不确定性减少的程度。 I G H ( D ) − ∑ i 1 m ∣ D i ∣ ∣ D ∣ H ( D i ) IG H(D) - \sum_{i1}^{m} \frac{|D_i|}{|D|} H(D_i) IGH(D)−i1∑m​∣D∣∣Di​∣​H(Di​) 其中H(D) 表示数据集 D 的熵|D_i| 表示划分后的子集 D_i 的大小。 2.1 决策树的优缺点 优点 易于理解决策树的结构简单直观可以将复杂的决策过程可视化。适应性强决策树能够处理数值型和类别型特征并且对数据的预处理要求较低。能够处理多类别问题决策树可以自然地处理多类别的分类问题。 缺点 容易过拟合当决策树的深度过大时模型容易学习到数据中的噪声导致过拟合。对小数据变化敏感由于决策树的每一次划分都会影响后续的结构数据的轻微变化可能会导致决策树的结构发生较大变化。 三、随机森林简介 随机森林Random Forest是一种集成学习方法通过结合多个决策树的预测结果来提高分类或回归的性能。它通过随机采样和特征选择来生成多个相互独立的决策树并将这些决策树的输出通过投票分类任务或平均回归任务来得到最终的预测结果。 3.1 随机森林的构建过程 随机采样从原始数据集中有放回地随机抽取样本生成多个训练数据集这一过程称为 BaggingBootstrap Aggregating。特征选择在构建每棵决策树时随机选择部分特征用于分裂节点以保证每棵树的多样性。集成决策对于分类任务通过投票的方式决定最终分类结果对于回归任务通过取平均值来得到最终预测结果。 3.2 随机森林的优缺点 优点 高准确率由于随机森林结合了多个决策树能够显著提高模型的准确率和鲁棒性。防止过拟合随机森林通过随机采样和特征选择减少了单棵决策树可能出现的过拟合问题。特征重要性随机森林可以评估每个特征对分类结果的重要性从而帮助理解数据。 缺点 计算复杂度高构建和集成多个决策树需要较高的计算资源和时间。不可解释性相比单棵决策树随机森林的结构更复杂不容易进行可视化和解释。 四、Python实现决策树和随机森林 接下来我们通过Python来实现决策树和随机森林使用 scikit-learn 库来帮助我们完成这一任务。 4.1 导入必要的库 首先我们需要导入一些必要的库 import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from sklearn.tree import DecisionTreeClassifier, plot_tree from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import accuracy_score, confusion_matrix, classification_reportnumpy用于数值计算。matplotlib用于数据可视化。sklearn.datasets用于加载 Iris 数据集这是一个经典的多分类数据集。train_test_split用于将数据集拆分为训练集和测试集。DecisionTreeClassifier用于创建决策树分类器。RandomForestClassifier用于创建随机森林分类器。accuracy_score, confusion_matrix, classification_report用于评估模型的性能。 4.2 加载数据集并进行预处理 我们使用 Iris 数据集这是一个常用的多分类数据集包含三类花山鸢尾、变色鸢尾、维吉尼亚鸢尾每类有50个样本。 # 加载Iris数据集 data load_iris() X data.data y data.target# 将数据集拆分为训练集和测试集 X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42)load_iris()加载Iris数据集X 是特征矩阵y 是标签。train_test_split将数据集拆分为训练集和测试集20%的数据用于测试。 4.3 创建决策树模型并进行训练 我们创建一个决策树分类器并用训练集进行模型训练。 # 创建决策树分类器 dt DecisionTreeClassifier(criteriongini, max_depth3, random_state42)# 训练模型 dt.fit(X_train, y_train)DecisionTreeClassifier(criterion‘gini’, max_depth3)创建决策树分类器使用基尼不纯度作为分裂标准最大深度为3。dt.fit(X_train, y_train)用训练数据拟合决策树模型。 4.4 可视化决策树 为了更好地理解决策树的结构我们可以使用 plot_tree 方法对其进行可视化。 # 可视化决策树 plt.figure(figsize(12, 8)) plot_tree(dt, filledTrue, feature_namesdata.feature_names, class_namesdata.target_names) plt.show()通过上述代码我们可以看到决策树的结构包括每个节点的特征、基尼不纯度、样本数量以及类别分布。 4.5 创建随机森林模型并进行训练 接下来我们创建一个随机森林分类器并用训练集进行模型训练。 # 创建随机森林分类器 rf RandomForestClassifier(n_estimators100, criteriongini, random_state42)# 训练模型 rf.fit(X_train, y_train)RandomForestClassifier(n_estimators100, criterion‘gini’)创建随机森林分类器包含100棵决策树使用基尼不纯度作为分裂标准。rf.fit(X_train, y_train)用训练数据拟合随机森林模型。 4.6 模型预测与评估 使用测试集对决策树和随机森林模型分别进行预测并评估其性能。 # 决策树预测 y_pred_dt dt.predict(X_test) accuracy_dt accuracy_score(y_test, y_pred_dt) print(f决策树模型的准确率: {accuracy_dt * 100:.2f}%)# 随机森林预测 y_pred_rf rf.predict(X_test) accuracy_rf accuracy_score(y_test, y_pred_rf) print(f随机森林模型的准确率: {accuracy_rf * 100:.2f}%)dt.predict(X_test) 和 rf.predict(X_test)分别对测试集进行预测。accuracy_score计算预测的准确率。 我们可以看到随机森林模型的准确率通常比单棵决策树要高这是因为随机森林通过集成多个决策树的预测结果来提高模型的泛化能力。 五、总结 决策树是一种简单直观的监督学习算法可以用于分类和回归任务。它通过递归地将数据划分成不同的子集直至达到某种特定的条件。随机森林则是通过结合多个决策树来提高模型的性能是一种强大的集成学习方法。 5.1 学习要点 决策树原理决策树通过递归划分数据来建立分类或回归模型使用基尼不纯度或信息增益来衡量划分的好坏。随机森林原理随机森林结合了多个决策树通过随机采样和特征选择来提高模型的准确率和鲁棒性。Python实现可以使用 scikit-learn 库中的 DecisionTreeClassifier 和 RandomForestClassifier 轻松实现决策树和随机森林。 5.2 练习题 使用决策树对 Iris 数据集进行回归任务观察模型的表现。使用 sklearn.datasets 模块中的 load_wine 数据集构建一个随机森林分类模型预测葡萄酒的类别。尝试调整决策树和随机森林的参数如树的最大深度、估计器数量等观察模型的性能变化。 希望本文能帮助您更好地理解决策树和随机森林的基本概念和实现方法。下一篇文章将为您介绍K-Means聚类及其Python实现。如果有任何问题欢迎在评论中讨论
http://www.hkea.cn/news/14531645/

相关文章:

  • 深圳做网站行业网站建设的一般流程是怎样的
  • 无锡网站制作哪家便宜南昌建设局
  • 做网站前期需求分析收费么互联网媒体广告公司
  • 库存网站建设定制关键词优化难度查询
  • 查找网站备案黑色asp企业网站源码
  • 优酷网站建设视频教程集湖州建设局网站 项目验收流程
  • 做网站或者app咨询聊城网站建设
  • 重生做网站小说做网站编辑有人带吗
  • 网站可以做音频线吗seo快速排名的方法
  • 中国建设监理协会网站继续教育系统视频网站 备案
  • 微信网页制作网站游戏建模培训
  • 天津公司网站开发苏州智信建设职业培训网站
  • 海南网站建设学做静态网站
  • 19手机网站浙江人事考试网
  • 网站建设需要做哪些工作wordpress美化滑动
  • 不用服务器怎么做网站seo关键词快速提升软件官网
  • 惠州网站建设公司哪家好汕头个人建站模板
  • 北京网站建设大概需要多少钱有资源的公众号
  • 欧美网站建设网站建设与制作教程北华大学
  • 网站开发公司更换百度云 wordpress
  • 广告公司网站首页设计页面系统开发过程中原型有哪些作用
  • 商务网站建设与维护论文网站二级域名是什么
  • 如何设计校园网站html网站留言板代码
  • 成品网站flash网站尺寸
  • 合肥seo网站优化培训wordpress antivirus
  • 国外网站推广服务大基建最新消息
  • 设计类公司网站投资公司网站开发
  • 站长工具箱做整个网站静态页面多少钱
  • 网站开发修改端口外链在线发布工具
  • 网站建设实践报告绪论软件开发要多少钱