决策树C++实现
算法实现
本项目使用ID3和C4.5两种算法来生成决策树,并结合李航的《统计学习方法》中的决策树剪枝算法对生成的树进行优化。进一步优化还采用了随机森林算法,通过集成学习提升决策树的预测能力。
文件结构
├── LICENSE
├── README.MD
├── data
│ └── dataset.txt
├── data description
│ └── data description.txt
├── result_histogram.plt
├── run.sh
├── src
│ ├── ID3AndC45RandomForest.cpp
│ ├── ID3WithoutAndWithPruning.cpp
│ ├── calResult.cpp
│ ├── decisionMakingTree.h
主要实现代码
-
ID3AndC45RandomForest.cpp:实现了ID3、C4.5算法,并使用随机森林对决策树进行了集成优化。
-
ID3WithoutAndWithPruning.cpp:展示了决策树在无剪枝和有剪枝条件下的生成对比。
-
calResult.cpp:负责计算和显示生成的决策树的准确性及效果。
-
decisionMakingTree.h:包含核心决策树结构的定义及实现。
暂无评论