统计百科 ·

决策树(CART)分析APA报告怎么写?准确率+Gini+变量重要性+树深度完整模板

统计百科:APA 7th 格式下决策树(CART)分析的完整报告规范——准确率、Gini不纯度、变量重要性排序、树深度与节点数,给出可直接套入论文的报告句式,盘点审稿人最常指出的格式问题。

决策树写进论文,卡点不在于跑模型,而在于"该报告什么、怎么报":准确率精确到几位、Gini不纯度和信息增益哪个写、变量重要性要不要加百分比、树深度和节点数放在哪段……这篇文章专攻 CART 决策树的 APA 7th 报告格式,给出方法章节、结果章节的完整模板,并逐一说明审稿人最常挑的格式问题。


你的决策树报告有这些问题吗?

审稿人或导师关于决策树结果报告最常见的反馈:

  • "准确率缺置信区间,请补充 95% CI 或报告 Kappa 系数"
  • "变量重要性只列排名,没有说明重要性的计算依据(Gini vs. 信息增益)"
  • "树深度和叶节点数未报告,无法判断模型是否过拟合"
  • "测试集和训练集准确率未区分,报告数据来源不明"
  • "ROC-AUC 未报告,仅用准确率评估分类任务存在类别不平衡风险"
  • "方法章节缺少剪枝策略说明(pre-pruning/post-pruning 的超参数)"

上述问题集中反映了一个事实:APA Publication Manual 第七版本身没有专门针对机器学习方法的报告规范,研究者必须借鉴"统计结果报告原则"(APA 7th §6.42–6.44)+ 计量心理学及数据科学期刊的惯用格式拼合出规范写法。本文整合这两套标准,给出 CART 决策树的完整可用模板。

如果你做的是逻辑回归而非决策树,建议先读 逻辑回归 OR 的 APA 7th 报告写法;如需报告 ROC-AUC,可参考 ROC-AUC 的 APA 报告写法


一、CART 决策树的统计指标体系

在报告决策树结果之前,先厘清每个指标的含义与所属层次——方法章节和结果章节各自应该放什么。

1.1 模型层面指标(结果章节主体)

指标含义报告精度
准确率(Accuracy)正确分类样本占总样本的比例两位小数(如 .87 或 87.3%)
灵敏度(Sensitivity/Recall)真正例率,正例被正确识别的比例两位小数
特异度(Specificity)真负例率,负例被正确识别的比例两位小数
精确率(Precision)预测为正例中实际为正例的比例两位小数
F1 分数精确率与灵敏度的调和均值两位小数
ROC-AUCROC 曲线下面积,0.5(随机)~ 1(完美)两位小数
Cohen's Kappa校正随机一致性后的分类准确度两位小数 + 95% CI

注:当类别不平衡时(如正例占比 < 20%),仅报告准确率会严重高估模型性能,必须补充 F1 和 ROC-AUC。

1.2 树结构指标(结果章节辅助)

指标含义典型报告方式
树深度(Tree Depth)根节点到最深叶节点的层数整数,如 depth = 5
叶节点数(Leaf Nodes)最终分类端点数量整数
内部节点数(Internal Nodes)含分裂规则的节点数整数,可与叶节点合计
总节点数内部节点 + 叶节点整数

1.3 节点分裂指标(方法章节说明)

指标含义适用场景
Gini 不纯度(Gini Impurity)衡量节点内样本类别混杂程度(越小越纯)CART 默认分裂准则(分类)
信息增益(Information Gain)分裂前后熵的减少量ID3 / C4.5 决策树
均方误差(MSE)预测值与真实值的平均平方差CART 回归树

CART(Classification and Regression Trees)默认使用 Gini 不纯度作为分裂准则,APA 报告中必须明确说明使用了哪种准则。

1.4 变量重要性(结果章节第二段)

CART 的变量重要性(Feature Importance)基于每个特征在所有分裂节点上贡献的 Gini 不纯度减少量的加权总和,归一化后各变量重要性之和为 1(即 100%)。

$\text{Importance}(x_j) = \sum_{t: \text{split on } x_j} \Delta \text{Gini}(t) \times n_t / N$

报告时通常按重要性降序列出前 5–10 个变量,每个变量给出重要性数值(建议同时给出百分比形式)。


二、APA 7th 格式要求:决策树报告必须包含的要素

APA 7th 对统计结果的报告原则(Manual §6.42–6.44)要求报告:样本量、效应量、置信区间、以及足够的方法细节使读者能够复现结果。对应到决策树:

必报要素清单

要素放在哪里具体内容
算法与分裂准则方法章节CART + Gini 不纯度(或信息增益)
数据划分方式方法章节训练集/测试集比例,随机种子
剪枝策略方法章节最大深度、最小叶节点样本数等超参数
交叉验证方法章节k-fold CV 设置(如适用)
混淆矩阵摘要结果章节TP/FP/TN/FN 或灵敏度/特异度
准确率(含 CI)结果章节测试集准确率 + 95% CI
ROC-AUC(或 Kappa)结果章节量化分类性能,应对类别不平衡
树结构结果章节最终树深度、叶节点数
变量重要性结果章节前 N 个变量,按重要性降序
软件与版本方法章节如 Python sklearn 1.4.0 / R rpart 4.1.23 / ChatSRS

三、方法章节:标准报告模板

方法章节要让读者能够复现你的分析——超参数、划分方式、评估指标选择都要说清楚。

模板(可直接套用)

采用 CART(Classification and Regression Trees)决策树算法构建[因变量]
的分类模型,分裂准则为 Gini 不纯度。数据按 [7:3 / 8:2 / 随机 k 折]
划分为训练集(n = [训练集样本量])与测试集(n = [测试集样本量]),
随机种子设为 [seed](保证可复现性)。

为控制过拟合,通过 [k]-折交叉验证在训练集上对最大树深度
(max_depth = [2–15])和叶节点最小样本数(min_samples_leaf = [X])
进行网格搜索,以验证集准确率为优化目标,选取最优超参数组合。

模型性能以测试集准确率(Accuracy)、灵敏度(Sensitivity)、
特异度(Specificity)及 ROC 曲线下面积(AUC)综合评估;
当类别比例失衡时,额外报告 F1 分数和 Cohen's Kappa。
变量重要性依据各特征在所有分裂节点上对 Gini 不纯度减少量的贡献
(归一化后相加为 1)进行排序。统计分析使用 ChatSRS(CART 引擎)。

填入数值的示例(疾病风险分类研究)

采用 CART 决策树算法构建糖尿病风险的二分类模型,分裂准则为 Gini 不纯度。数据集(N = 768)按 7:3 比例随机划分为训练集(n = 537)与测试集(n = 231),随机种子设为 42。通过 10 折交叉验证对最大树深度(max_depth = 2–12)和叶节点最小样本数(min_samples_leaf = 5–30)进行网格搜索,最优超参数为 max_depth = 5、min_samples_leaf = 10。模型性能以测试集准确率、灵敏度、特异度及 AUC 综合评估,变量重要性依据 Gini 不纯度减少量贡献排序。统计分析使用 ChatSRS(CART 引擎)。


四、结果章节:完整 APA 报告模板

结果章节分三段:(1) 模型性能指标;(2) 树结构描述;(3) 变量重要性。

4.1 模型性能报告模板

CART 决策树模型在测试集(n = [N_test])上的整体准确率为 [XX.X]%
(95% CI [XX.X%, XX.X%]),显著优于基线分类器(多数类准确率 [XX.X]%)。
混淆矩阵结果显示,模型对[正例/类别名]的灵敏度为 [XX]%,
特异度为 [XX]%,精确率为 [XX]%,F1 分数为 [.XX]。
ROC 曲线下面积(AUC)= [.XX](95% CI [.XX, .XX]),
表明模型具有[良好/中等/一般]的判别能力
(AUC 解读参照 Hosmer & Lemeshow,2000:
.7–.8 = 可接受,.8–.9 = 出色,> .9 = 优秀)。
Cohen's Kappa = [.XX](95% CI [.XX, .XX]),
表明模型与真实标签的一致性[中等/良好](Landis & Koch,1977)。

填入数值的示例

CART 决策树模型在测试集(n = 231)上的整体准确率为 79.2%(95% CI [73.5%, 84.2%]),显著优于多数类基线分类器(65.1%)。混淆矩阵结果显示,模型对糖尿病阳性病例(正例)的灵敏度为 73.4%,特异度为 82.6%,精确率为 71.8%,F1 分数为 .726。ROC 曲线下面积 AUC = .84(95% CI [.79, .89]),表明模型具有出色的判别能力(Hosmer & Lemeshow,2000)。Cohen's Kappa = .56(95% CI [.47, .65]),表明模型与真实标签达到中等至良好的一致性(Landis & Koch,1977)。

4.2 树结构描述模板

经超参数调优后,最终决策树的最大深度为 [d] 层,
共包含 [total] 个节点([internal] 个内部节点,[leaf] 个叶节点)。
根节点分裂特征为[变量名](Gini 减少量 = [.XX]),
第一层分裂阈值为 [变量名] [</>] [阈值](左支:n = [n1],右支:n = [n2])。
与未剪枝树(深度 = [d_raw],叶节点 = [leaf_raw])相比,
剪枝后树深度降低 [X] 层,测试集准确率提升 [X.X]%,表明剪枝有效抑制了过拟合。

填入数值的示例

经超参数调优后,最终决策树的最大深度为 5 层,共包含 31 个节点(15 个内部节点,16 个叶节点)。根节点分裂特征为血糖浓度(Gini 减少量 = .142),第一层分裂阈值为血糖浓度 < 127.5 mg/dL(左支:n = 341,低风险;右支:n = 196,高风险)。与未剪枝树(深度 = 12,叶节点 = 87)相比,剪枝后树深度降低 7 层,测试集准确率从 74.9% 提升至 79.2%,印证了剪枝对过拟合的抑制效果。

4.3 变量重要性报告模板

基于 Gini 不纯度减少量的变量重要性分析结果如下表所示(Table [X])。
[变量1]对模型分类贡献最大(重要性 = [.XX],占比 [XX.X]%),
其次为[变量2]([.XX],[XX.X]%)和[变量3]([.XX],[XX.X]%)。
前[k]个变量的累积重要性达 [XX.X]%,说明模型对[领域]分类
主要依赖少数核心特征。[最后两个变量名]的重要性均低于 1%,
提示其对本模型的分类贡献可忽略。

Table 示例(APA 7th 格式三线表)

排名变量名重要性占比累积占比
1血糖浓度.31231.2%31.2%
2BMI 指数.21421.4%52.6%
3年龄.15715.7%68.3%
4胰岛素水平.11811.8%80.1%
5糖尿病家族史.0898.9%89.0%
6收缩压.0545.4%94.4%
7皮肤厚度.0313.1%97.5%
8妊娠次数.0252.5%100.0%

注:重要性基于 Gini 不纯度减少量,归一化后各变量之和为 1。

填入数值的示例

变量重要性分析显示,血糖浓度(.312,31.2%)、BMI 指数(.214,21.4%)和年龄(.157,15.7%)是糖尿病风险分类中贡献最大的三个特征,三者累积重要性达 68.3%(见 Table 2)。胰岛素水平和糖尿病家族史亦有显著贡献(合计 20.7%)。皮肤厚度和妊娠次数的重要性均低于 4%,对分类决策的贡献边际化。


五、在 ChatSRS 一句话获得规范决策树报告

打开 chatsrs.com,上传数据后输入:

"对[因变量]做 CART 决策树分类,按 7:3 划分训练集和测试集,10 折交叉验证调优 max_depth(2–10)和 min_samples_leaf(5–20);输出测试集准确率(含 95% CI)、灵敏度、特异度、F1、ROC-AUC、Cohen's Kappa;报告最终树的深度和叶节点数;按 Gini 减少量给出所有变量的重要性排序(含百分比);结果按 APA 7th 格式输出,包含方法章节段落和结果章节段落。"

ChatSRS 会自动完成模型训练、评估指标计算、变量重要性排序,并输出符合上文格式的可直接复制段落,无需手动填写数值。


六、方法章节中的软件引用格式

APA 7th 要求在方法章节注明所用统计软件。各软件决策树的 APA 引用格式如下:

ChatSRS(推荐)

统计分析使用 ChatSRS(ChatSRS Team,2024)进行,
该平台集成 CART 决策树分析功能,输出符合 APA 7th 格式的分析报告。

Python scikit-learn

使用 Python(版本 3.11.0;Van Rossum & Drake,2009)
及 scikit-learn 库(版本 1.4.0;Pedregosa et al.,2011)
中的 DecisionTreeClassifier 进行 CART 决策树分析,
分裂准则为 Gini 不纯度,剪枝通过最大深度约束实现。

R rpart

使用 R(版本 4.3.2;R Core Team,2023)的 rpart 包
(版本 4.1.23;Therneau & Atkinson,2023)进行 CART 决策树分析,
分裂准则选用 Gini 不纯度。

七、常见错误对照表

常见错误正确做法说明
只报训练集准确率必须报测试集准确率训练集准确率高度乐观,无法反映泛化能力
准确率无置信区间补充 95% CI(如 Wilson 区间法)APA 要求区间估计,准确率 CI 使用 Wilson 法更准确
不区分 Gini 和信息增益方法章节明确写明分裂准则CART = Gini;ID3/C4.5 = 信息增益,不可混用
变量重要性无计算依据说明说明重要性基于 Gini 减少量贡献不同算法重要性定义不同,需说明来源
不报树深度和节点数结果章节必须报告树结构供读者判断复杂度与过拟合风险
类别不平衡只报准确率补充 F1、AUC、Kappa准确率在不平衡数据下会严重虚高
未说明剪枝策略方法章节报告剪枝超参数未剪枝与剪枝模型差异巨大,必须说明
混淆矩阵放入正文但格式随意用 APA 三线表呈现混淆矩阵正文描述 + 附表,不要用截图

常见 FAQ

Q:决策树需要报告"显著性 p 值"吗?

A:通常不需要,也没有单一的全局 p 值。CART 决策树是一种非参数机器学习算法,每个节点的分裂依据是 Gini 不纯度减少量(或信息增益),没有对应的假设检验框架。APA 7th §6.42–6.44 指出,当统计量不存在标准假设检验时,用效应量和置信区间替代——因此决策树报告的核心是准确率的 95% CI、AUC 的 95% CI 和 Cohen's Kappa,而非 p 值。部分研究者会用 McNemar 检验比较两个分类模型的准确率差异,此时才涉及 p 值,需说明检验对象是模型间比较而非模型本身。

Q:Gini 不纯度越低越好还是越高越好?

A:Gini 不纯度越低越好——它衡量节点内样本类别的混杂程度,值域为 [0, 0.5](二分类)。纯节点(所有样本属于同一类)Gini = 0;完全混杂节点(各类比例相等)Gini 最大(二分类时 = 0.5)。CART 在每个节点选择能使"分裂后加权 Gini 不纯度下降最大"的特征,因此 Gini 减少量越大的特征越重要。报告时通常不直接报告各节点的 Gini 值,而是报告基于 Gini 减少量计算的变量重要性。

Q:变量重要性排序和逻辑回归系数有可比性吗?

A:两者不可直接比较,含义不同。逻辑回归系数(或标准化后的 beta)反映该变量在控制其他变量后的独立效应方向与大小;CART 变量重要性反映该变量在分裂节点上贡献的 Gini 不纯度减少量总和,不区分效应方向(正负)。同一份数据,重要性排名第一的变量在逻辑回归中未必是最大系数,因为决策树能捕捉非线性关系和特征交互,而逻辑回归默认线性假设。若需解释变量方向,可结合 SHAP 值(SHapley Additive exPlanations)报告,ChatSRS 支持一键输出 SHAP 分析。

Q:论文里要放决策树图吗?放了之后还需要文字描述吗?

A:决策树图(树状结构图)建议作为 Figure 呈现,但仍需文字描述。原因:(1) 深度 > 4 的树图在 A4 页面可读性极差,应在方法章节说明"完整树图见附录 A";(2) 结果段落需用文字描述根节点、第一层分裂及关键路径,不能让读者自行看图得出结论。APA 7th Figure 格式要求:图标题置于图下方,格式为 "Figure [N]\n[描述]",不加粗,无句点。若树结构超过两层,建议仅在论文中呈现精简版(depth <= 3),完整树图作为补充材料。


相关阅读


本文首发于 ChatSRS 官方博客。如有问题或反馈,欢迎在 ChatSRS 站内 [用户中心 -> 帮助与反馈] 联系我们。