从C5.0模型中导出最后一次试验

我正在尝试从R语言中的c50包构建的模型中导出模型。

我使用partykit包来提取最后一次试验,但它返回的拟合值与原值不一致。

我不明白为什么as.party.c5.0函数的拟合方式与C5.0函数不完全相同。它对第一次试验有效,但对其他试验无效。

例如:

poc_db<-irisfullTree_prun_iris_Winow <- C5.0(Species ~ ., data =poc_db, trials = 10,control = C5.0Control(CF = 0.90,noGlobalPruning = FALSE,winnow = T))cat(fullTree_prun_iris_Winow$output)-----  Trial 9:  -----Decision tree:Petal.Width <= 0.6: setosa (10.5) Petal.Width > 0.6::...Petal.Width <= 1.7: versicolor (116.3/49.4)    Petal.Width > 1.7: virginica (22.2)modParty <- C50:::as.party.C5.0(fullTree_prun_iris_Winow,trial=10)Fitted party:[1] root|   [2] Petal.Width <= 0.6: setosa (n = 50, err = 0.0%)|   [3] Petal.Width > 0.6|   |   [4] Petal.Width <= 1.7: versicolor (n = 54, err = 9.3%)|   |   [5] Petal.Width > 1.7: virginica (n = 46, err = 2.2%)

我们应该对第四个节点有:… versicolor(116/49)

感谢帮助


回答:

第四个节点有54个观测值,其中49个是versicolor。参见

table(subset(poc_db, Petal.Width > 0.6 & Petal.Width <= 1.7)$Species)##     setosa versicolor  virginica ##          0         49          5 

因此,partykit报告n = 54err = 9.3%,对应于5/54。由C5.0报告的值不同,因为它是通过多次试验的提升树得出的,而不是仅使用单棵树本身。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注