python - 我怎样才能控制我的算法需要多少特征才能达到一定的精度?
问题描述
我使用蒙特卡洛算法生成具有 25 个特征的数据点。基本上我有两个球体(每个代表一个标签),并通过调整它们的中心和弧度来确定它们彼此相交的深度。我将它们组合成数据集。像这样:
centre1 = [3, 3, 3, 3, 4, 6, 1, 3, 2, 3, 4, 5, 6, 6, 5, 5, 5, 3, 3, 3, 4, 4, 4, 5, 4] # length is 25
centre2 = [3, 3, 3, 3, 5, 1, 2, 3, 2, 3, 2, 3, 6, 6, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 2]
radian1 = 15
radian2 = 15
在特征 2 上绘制的特征 1 的图片看起来像这样(数据集包括两朵云)。
我使用来自 Sk-learn 的随机森林将这些云彼此分开。目前该算法需要大约 5 个特征才能达到最佳精度(因此图片;请忽略显示超过 25 个特征的事实)。
将球体中心靠得更近不会导致峰值精度所需的最小特征发生变化。此外,如果它们相交太深,最终的准确度会降低,但仍然只需要 5 个特征就可以达到。
怎样才能使这个阈值达到 15 个左右的特征?还有什么影响随机森林所需的特征数量?
我也在这里问过这个问题,但无法回答。
解决方案
推荐阅读
- vba - 行中的单元格等于一个单词,然后在其下方的每个使用的单元格中添加 0
- amazon-dynamodb - 如何直接订阅我的 AWS AppSync 数据源?
- c++ - 为什么不能在 C++11 中初始化静态数据成员?
- sas - 如何在没有定义的情况下使宏可调用
- javascript - ES6:优化命令模式
- javascript - (THREE.JS) 计算自定义缓冲区几何的自定义 UV
- c# - 使用行为动画 DataGridRow
- react-native - react native项目目录结构中的react native区别
- vba - vba excel,增量宏
- text - 我在哪里可以找到像 ['Dr.', 'Mrs', 'DC', 'Inc.','.com'] 这样的单词列表,这些单词在按句点(标点符号)分割文本时会被忽略?