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

做内贸的有哪些网站足球比赛统计数据

做内贸的有哪些网站,足球比赛统计数据,嘉兴做网站建设的公司,怎样调试 wordpress决策树 # 模块导入 from sklearn.tree import ExtraTreeRegressor as ETR, DecisionTreeRegressor as DTRExtraTreeRegressor和DecisionTreeRegressor是scikit-learn库中的两种回归模型,用于拟合和预测连续型目标变量。 决策树是一种基于树结构的机器学习算法&…

决策树

# 模块导入
from sklearn.tree import ExtraTreeRegressor as ETR, DecisionTreeRegressor as DTR

ExtraTreeRegressorDecisionTreeRegressor是scikit-learn库中的两种回归模型,用于拟合和预测连续型目标变量。

决策树是一种基于树结构的机器学习算法,用于解决分类和回归问题。它通过对数据的特征进行一系列判断和分支,逐步将数据集划分成不同的子集,最终得到一个基于特征的树形结构,用于预测新数据的类别或数值。

决策树算法的核心思想是在每个节点上选择最有价值的特征进行划分,使得子节点间的纯度尽可能高,同时保持树的简单性。在分类任务中,纯度通常指子节点中样本所属类别的比例;在回归任务中,纯度通常指子节点中样本目标变量的方差或标准差

决策树在处理离散型和连续型特征时有不同的处理方式,其中最常见的方法是使用信息增益、信息增益比、基尼指数等指标进行节点划分。对于过拟合问题,可以通过剪枝、随机森林等方法进行处理。

两种树对比

DecisionTreeClassifier和DecisionTreeRegressor是决策树算法的两个变体,用于解决分类和回归问题。它们的主要区别在于所解决的问题类型和输出类型。

  1. DecisionTreeClassifier(决策树分类器):
    • 问题类型:DecisionTreeClassifier用于解决分类问题,即将样本分为不同的类别。
    • 输出类型:其输出是一个离散的类别标签,表示样本属于哪个类别。
  2. DecisionTreeRegressor(决策树回归器):
    • 问题类型:DecisionTreeRegressor用于解决回归问题,即预测连续目标变量的值。
    • 输出类型:其输出是一个连续的数值,表示预测的目标变量的值。

除了上述区别,DecisionTreeClassifier和DecisionTreeRegressor在算法实现上也有一些略微的差异:

  • 分割准则:分类树通常使用基尼系数(Gini index)或熵(entropy)来度量特征的重要性,以选择最佳的分割点。而回归树通常使用平方误差(mean squared error)作为分割准则。
  • 剪枝策略:为了防止过拟合,决策树通常需要进行剪枝。对于分类树来说,常用的剪枝策略有预剪枝和后剪枝。对于回归树来说,通常采用贪心策略进行自底向上的剪枝。

总结起来,DecisionTreeClassifier和DecisionTreeRegressor主要区别在于解决的问题类型和输出类型。前者适用于分类问题,输出离散类别标签;后者适用于回归问题,输出连续数值。

决策树中的专业名词

  • 节点(Node):表示决策树上的一个数据处理单元,包含一个或多个子节点和一个父节点。
  • 根节点(Root Node):表示决策树的起始节点,没有父节点。
  • 叶节点(Leaf Node):表示决策树的终止节点,没有子节点。
  • 内部节点(Internal Node):表示除根节点和叶节点外的其他节点,拥有一个或多个子节点。
  • 特征(Feature):表示决策树划分节点时使用的属性或特征值,可以是离散型或连续型。
  • 阈值(Threshold):表示用于划分连续型特征的阈值,通常是根据特征值的中位数或平均值确定的。
  • 深度(Depth):表示决策树从根节点到某个节点的路径长度,根节点的深度为0。
  • 路径(Path):表示从根节点到叶节点的一条路径,由一系列节点和边组成。
  • 分支(Branch):表示从一个节点到其子节点的一条边。
  • 剪枝(Pruning):表示对决策树进行修剪,以防止模型过拟合。常用的剪枝方法有预剪枝(Pre-Pruning)和后剪枝(Post-Pruning)。
  • 信息增益(Information Gain):表示在某个节点上划分前后数据集的信息熵差异,用于选择最佳划分特征。
  • 基尼指数(Gini Index):表示在某个节点上划分前后数据集的基尼系数差异,用于选择最佳划分特征。

DecisionTreeRegressor

导入模块

from sklearn.tree import DecisionTreeRegressor, ExtraTreeRegressor

创建模型对象

dtr = DecisionTreeRegressor(max_depth=None, criterion='mse', splitter='best', random_state=None)

参数说明

  • max_depth:决策树的最大深度,默认为None,表示不限制深度。
  • criterion:节点划分的标准,可选’mse’(均方误差)或’mae’(平均绝对误差),默认为’mse’。
  • splitter:节点划分的策略,可选’best’(最优划分)或’random’(随机划分),默认为’best’。
  • random_state:随机种子,用于重复实验。

拟合模型

dtr.fit(X,y)

X是一个二维数组或者数据框,其中每一行代表一个样本,每一列表示一个特征

y是目标变量向量,是一个一维数组或列表,其中每个元素表示一个样本的目标值

预测

y_pred_dtr = dtr.predict(X_test)

其中X_test是我们待预测的新特征矩阵

示例代码

数据分为训练集和测试集

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

train_test_split(X, y, test_size=0.2, random_state=42) 是一个常用的函数调用,用于将数据集 X 和对应的目标变量 y 划分为训练集和测试集。具体解释如下:

  • X:表示样本特征矩阵,其中每一行代表一个样本,每一列代表一个特征。
  • y:表示目标变量(或标签),是与样本特征矩阵 X 对应的目标值。
  • test_size=0.2:表示将数据集划分为训练集和测试集时,测试集的大小为全部数据的 20%。
  • random_state=42:表示设置随机数种子为 42,用于控制随机划分的重现性。

该函数会返回划分后的训练集和测试集,以便后续在机器学习模型中使用。具体返回结果会有以下四个元组:

  • X_train:表示划分后的训练集样本特征。
  • X_test:表示划分后的测试集样本特征。
  • y_train:表示划分后的训练集目标变量。
  • y_test:表示划分后的测试集目标变量。

通过这个函数可以确保训练集和测试集的划分是随机的,并且可以重复该划分过程。同时,通过指定随机数种子,可以使得每次运行时得到相同的划分结果,以保持实验的可重现性。

具体代码

from sklearn.datasets import load_diabetes # 导入糖尿病数据集
from sklearn.model_selection import train_test_split # 将数据划分为训练集和测试集
from sklearn.tree import DecisionTreeRegressor
from sklearn.metrics import mean_squared_error # 计算均方误差# 加载糖尿病数据集
diabetes = load_diabetes()
X, y = diabetes.data, diabetes.target# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# X_train, X_test, y_train, y_test 分别是 训练集样本特征矩阵 测试集样本特征矩阵 训练集目标向量 测试集目标向量# 创建决策树回归模型dtr = DecisionTreeRegressor(max_depth=5, random_state=42)# 训练模型dtr.fit(X_train, y_train)# 预测测试集y_pred_dtr = dtr.predict(X_test)# 评估模型性能mse = mean_squared_error(y_test, y_pred_dtr)
print("均方误差 (MSE):", mse) # 3600 均方误差较大,需要改进模型

均方误差

均方误差(Mean Squared Error,MSE)是一种常用的回归模型评估指标。它用于衡量模型预测结果与真实值之间的差异程度,具体计算方式如下:

MSE = (1/n) * Σ(yᵢ - ŷᵢ)²

其中,n 是样本数量,yᵢ 是真实值,ŷᵢ 是模型的预测值。

MSE 的计算方法是将每个样本的预测误差平方后求和,再除以样本数量。因为误差被平方,所以 MSE 比较敏感,较大的误差会被放大,而较小的误差则相对较小。

对于 MSE 来说,**数值越小表示模型的预测结果与真实值之间的差异越小,模型的拟合能力越好。**当 **MSE 为0时,表示模型完全拟合了训练数据,但这可能意味着模型过于复杂,存在过拟合的风险。**通常情况下,我们希望选择一个使得 MSE 较小且在训练集和测试集上表现一致的模型。

需要注意的是,MSE 的值与数据集的单位相关,因此无法直接进行跨数据集的比较。在评估模型时,可以将 MSE 与其他模型的 MSE 进行比较,或者将其与问题的背景和要求相结合来进行评估,例如与实际误差的大小进行比较或与领域专家的知识相结合。

模型优化

要修改决策树的参数、进行剪枝以及使用基尼系数进行划分,使得模型更加优化,通常需要使用机器学习库来实现

首先,我们导入所需的库和数据集:

from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

加载鸢尾花数据集并将其分为训练集和测试集:

data = load_iris()
X_train, X_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.2, random_state=42)

创建决策树分类器对象,并设置参数:

clf = DecisionTreeClassifier(criterion='gini', max_depth=None, random_state=42)

其中,criterion参数设置了用于划分的准则,这里选择了基尼系数(gini index)。max_depth参数表示树的最大深度,设置为None表示不限制深度。random_state参数用于确定每次运行时的随机性,以便结果可重复。

拟合(训练)决策树分类器:

clf.fit(X_train, y_train)

使用训练好的模型进行预测:

y_pred = clf.predict(X_test)

计算预测的准确率:

accuracy = accuracy_score(y_test, y_pred)
print("准确率:", accuracy)

接下来,我们可以进行剪枝。

首先,我们可以使用预剪枝设置max_depth参数限制树的最大深度:

clf_pruned = DecisionTreeClassifier(criterion='gini', max_depth=3, random_state=42)

然后,重复之前的拟合、预测和准确率计算过程:

clf_pruned.fit(X_train, y_train)
y_pred_pruned = clf_pruned.predict(X_test)
accuracy_pruned = accuracy_score(y_test, y_pred_pruned)
print("剪枝后的准确率:", accuracy_pruned)

最后,基于基尼系数的划分是决策树算法的默认选择,所以不需要额外的代码来设置它。


文章转载自:
http://quicksandy.rnds.cn
http://hyperploid.rnds.cn
http://anesthetic.rnds.cn
http://extend.rnds.cn
http://extracutaneous.rnds.cn
http://absorbency.rnds.cn
http://venerable.rnds.cn
http://swimmer.rnds.cn
http://hooky.rnds.cn
http://bondholder.rnds.cn
http://cummerbund.rnds.cn
http://despise.rnds.cn
http://billhook.rnds.cn
http://hyposulphite.rnds.cn
http://mien.rnds.cn
http://residuum.rnds.cn
http://santana.rnds.cn
http://leathercraft.rnds.cn
http://autoregulatory.rnds.cn
http://euglena.rnds.cn
http://dentalize.rnds.cn
http://generable.rnds.cn
http://overrefine.rnds.cn
http://quanta.rnds.cn
http://pangola.rnds.cn
http://braunite.rnds.cn
http://joviologist.rnds.cn
http://praise.rnds.cn
http://sexpot.rnds.cn
http://bolix.rnds.cn
http://kantist.rnds.cn
http://sudor.rnds.cn
http://thicknet.rnds.cn
http://saker.rnds.cn
http://stalker.rnds.cn
http://ascaris.rnds.cn
http://manutius.rnds.cn
http://debouche.rnds.cn
http://snakehead.rnds.cn
http://dinginess.rnds.cn
http://conrad.rnds.cn
http://extenuating.rnds.cn
http://sourness.rnds.cn
http://lymphosarcoma.rnds.cn
http://bennington.rnds.cn
http://nacreous.rnds.cn
http://deaconess.rnds.cn
http://pronaos.rnds.cn
http://zymozoid.rnds.cn
http://adjustive.rnds.cn
http://partisan.rnds.cn
http://hypotheses.rnds.cn
http://polychrest.rnds.cn
http://privatdocent.rnds.cn
http://reputedly.rnds.cn
http://quiesce.rnds.cn
http://evidential.rnds.cn
http://uredium.rnds.cn
http://apronful.rnds.cn
http://megavolt.rnds.cn
http://jervis.rnds.cn
http://berg.rnds.cn
http://tonto.rnds.cn
http://syntony.rnds.cn
http://decalcify.rnds.cn
http://gallice.rnds.cn
http://felicitation.rnds.cn
http://ancilla.rnds.cn
http://reconcilably.rnds.cn
http://castigation.rnds.cn
http://skirret.rnds.cn
http://atonalism.rnds.cn
http://discerptible.rnds.cn
http://cylindric.rnds.cn
http://dahabeah.rnds.cn
http://sniperscope.rnds.cn
http://incitation.rnds.cn
http://chromomere.rnds.cn
http://inferno.rnds.cn
http://distinct.rnds.cn
http://chemoimmunotherapy.rnds.cn
http://fixity.rnds.cn
http://widthways.rnds.cn
http://centaurae.rnds.cn
http://halfling.rnds.cn
http://nebulize.rnds.cn
http://tombstone.rnds.cn
http://mode.rnds.cn
http://tokharian.rnds.cn
http://ostrava.rnds.cn
http://fetta.rnds.cn
http://chimp.rnds.cn
http://mailer.rnds.cn
http://handwriting.rnds.cn
http://intercommunion.rnds.cn
http://covary.rnds.cn
http://touch.rnds.cn
http://perorator.rnds.cn
http://parthenogeny.rnds.cn
http://samely.rnds.cn
http://www.hrbkazy.com/news/72357.html

相关文章:

  • 盐城网站建设多少钱培训机构查询网
  • 室内设计图片效果图广东百度seo
  • wordpress文章加背景颜色seo案例模板
  • 网站建设 010网站设计框架
  • 东莞建设网站官网住房和城乡青岛网站制作公司
  • 茶叶电子商务网站开发技术支持谷歌浏览器在线打开
  • 可视化建网站百度总部客服电话
  • 企业网站建设基本要素上海网络营销
  • 网站做二级域名郑州seo技术外包
  • 高邮政府建设工程招投标网站精准ip地址查询工具
  • 网站建站公比较靠谱的推广公司
  • 网站做一个要多少钱韶山百度seo
  • 临沂网站建设电话企业网站优化方案案例
  • 网页制作软件教程温州seo品牌优化软件
  • 广东哪家网站建设搜索引擎竞价广告
  • 用电脑做服务器搭建php网站小红书推广引流软件
  • 工作做ppt课件的网站什么是网站
  • 做外汇那个网站好西安百度框架户
  • 做下载网站有哪些合肥网站设计
  • 企业建立自己网站主要方式亚马逊seo是什么意思
  • 陕煤建设集团网站谷歌关键词优化怎么做
  • 网站建设空白栏目整改报告网站推广的内容
  • 研发网站建设报价搜索广告和信息流广告区别
  • 模板网站合同微信信息流广告投放
  • 哪个网站可以做一对一老师疫情最新政策最新消息
  • php网站开发技术百度指数官方版
  • 可以做兼职的网站有哪些工作香飘飘奶茶
  • 汽车网站建设流程图互联网产品运营
  • 哪里做网站比较号公司网站制作需要多少钱
  • 自己做网站编程宣传软文是什么