我有一套数据,我使用决策树在matlab中对它们进行分类。我把它分成两部分。一个培训数据(85%)和其他测试数据(15%)。问题是准确度在90%左右,我不知道如何改进。如果您对此有任何想法,我将不胜感激。如何提高matlab决策树的准确性
2
A
回答
1
我不认为你应该改善这一点,可能数据是由分类器过度配置。尝试使用其他数据集或交叉验证来查看更准确的结果。
顺便说一句,如果不是过度配合,90%是很好的结果,可能你甚至不需要改进它。
0
您可以查看pruning叶子来改进决策树的泛化。但正如所提到的,90%的准确率也算是相当不错的..
3
我想在这里更重要的问题是什么是一个很好的精度定域:如果你的垃圾进行分类,然后90%可能是有点低,但如果你预测股票价格,那么90%是非常高的!
如果你这样做是在已知域集和有分类精度比你高的前面的例子,那么你可以尝试几件事情:
0
90%是好还是坏,取决于数据的域。
但是,您的数据中的类可能会重叠,而且您无法真正做到超过90%。
您可以尝试查看哪些节点是错误,并检查是否可以通过更改它们来改善分类。
您还可以尝试随机森林。
5
决策树可能因为很多原因而低性能,这是我能想到的一个突出的原因是,在计算分裂他们不考虑的变量或其他变量目标变量的相互依存关系。 在改进性能之前,应该意识到它不应引起过度拟合并能够推广。
为了提高性能,这几件事情可以做:
可变预选:不同的测试可以像多重测试,VIF计算,IV计算来完成对变量的选择只有少数顶级的变量。这将会提高性能,因为它会严格削减不需要的变量。
Ensemble Learning使用多棵树(随机森林)来预测结果。随机森林通常比单一决策树表现出色,因为他们设法减少偏见和变异。它们也不太容易过度配合。
K-fold交叉验证:交叉验证在训练数据本身可以提高模型的性能有点。
混合模型:使用混合模型,即使用决策树改进性能后使用逻辑回归。
相关问题
- 1. 决策树sklearn:预测准确率100%
- 2. 如何提高Matlab中SVM训练和分类的准确性?
- 3. J48决策树没有给予更好的准确性
- 4. 决策树总是返回完美的准确性
- 5. 如何提高cmuSphinx的准确性?
- 6. 如何提高pocketsphinxcontroller的准确性
- 7. 用于提高OCR准确度的多决策引擎
- 8. 如何计算决策树
- 9. 如何设置决策树
- 10. 如何存储决策树
- 11. 如何提高网络提供商的位置准确性? Android
- 12. 如何提高性能分析的准确性
- 13. 提高Android TessBaseAPI(Tesseract)的准确性OCR
- 14. Python tesseract提高了OCR的准确性
- 15. 我们如何才能比较scikit-learn和Spark ML的准确性决策树算法性能?
- 16. J48决策树
- 17. 决策树jQuery
- 18. 来自决策树的提取概率
- 19. 如何提高MATLAB的可读性图
- 20. 如何在matlab中存储和检索多个决策树
- 21. 找到决策树的最佳属性
- 22. Bigquery提高准确性问题
- 23. 如何提高我的起始位置的准确性?
- 24. 如何提高Tesseract的OCR文本的准确性?
- 25. 决策树。噪声策略
- 26. 如何提高语音到文本转换器的准确性
- 27. 如何提高GPS坐标的准确性?
- 28. 如何提高室内定位的准确性?
- 29. 如何提高GPS位置的准确性?
- 30. Python - 如何提高小数的准确性?
什么是数据集的维度?是否有某些原因必须使用决策树,或者您可以探索其他算法吗? –