标签: random-forest

如何从scikit-learn决策树中提取决策规则?

我可以从决策树中的受过训练的树中提取基础决策规则(或"决策路径")作为文本列表吗?

就像是:

if A>0.4 then if B<0.2 then if C>0.8 then class='X'

谢谢你的帮助.

python machine-learning decision-tree random-forest scikit-learn

140
推荐指数
9
解决办法
8万
查看次数

如何确定RandomForestClassifier中的feature_importances?

我有一个分类任务,时间序列作为数据输入,其中每个属性(n = 23)代表一个特定的时间点.除了绝对分类结果我想知道,哪些属性/日期对结果的贡献程度如何.所以我只是使用它feature_importances_,这对我很有用.

但是,我想知道如何计算它们以及使用哪种度量/算法.很遗憾,我找不到有关此主题的任何文档.

feature-selection random-forest scikit-learn

114
推荐指数
4
解决办法
6万
查看次数

在scikit中的RandomForestClassifier与ExtraTreesClassifier学习

任何人都可以解释scikit中的RandomForestClassifier和ExtraTreesClassifier之间的区别.我花了很多时间阅读论文:

P. Geurts,D.Ernst.和L. Wehenkel,"极度随机树",机器学习,63(1),3-42,2006

看来这些是ET的区别:

1)当在分割中选择变量时,从整个训练集中抽取样本而不是训练集的自举样本.

2)从每次分裂的样品中的值范围中完全随机地选择裂解.

这两件事的结果是更多的"叶子".

random-forest scikit-learn

87
推荐指数
2
解决办法
3万
查看次数

如何在R中构建具有缺失(NA)值的随机森林?

我想适应一个随机的森林模型,但是当我打电话时

library(randomForest)
rf.model <- randomForest(WIN ~ ., data = learn)
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

Error in na.fail.default(list(WIN = c(2L, 1L, 1L, 2L, 1L, 2L, 2L, 1L,  : 
missing values in object
Run Code Online (Sandbox Code Playgroud)

r random-forest

71
推荐指数
3
解决办法
7万
查看次数

我是否需要规范化(或缩放)randomForest(R包)的数据?

我正在做回归任务 - 我是否需要规范化(或缩放)randomForest(R包)的数据?是否有必要扩大目标价值?如果 - 我想使用来自插入包的scale函数,但我没有找到如何获取数据(descale,denormalize).你不知道其他一些函数(在任何包中)对规范化/非规范化有帮助吗?谢谢,米兰

r random-forest

58
推荐指数
3
解决办法
4万
查看次数

随机森林中的包装袋错误是什么?

随机森林中的包装袋错误是什么?它是在随机森林中找到正确数量的树的最佳参数吗?

language-agnostic classification machine-learning random-forest

54
推荐指数
2
解决办法
5万
查看次数

RandomForestClassfier.fit():ValueError:无法将字符串转换为float

给出一个简单的CSV文件:

A,B,C
Hello,Hi,0
Hola,Bueno,1
Run Code Online (Sandbox Code Playgroud)

显然,真正的数据集远比这复杂得多,但是这个数据集再现了错误.我正在尝试为它构建一个随机的森林分类器,如下所示:

cols = ['A','B','C']
col_types = {'A': str, 'B': str, 'C': int}
test = pd.read_csv('test.csv', dtype=col_types)

train_y = test['C'] == 1
train_x = test[cols]

clf_rf = RandomForestClassifier(n_estimators=50)
clf_rf.fit(train_x, train_y)
Run Code Online (Sandbox Code Playgroud)

但是我在调​​用fit()时得到这个回溯:

ValueError: could not convert string to float: 'Bueno'
Run Code Online (Sandbox Code Playgroud)

scikit-learn版本是0.16.1.

python random-forest scikit-learn

50
推荐指数
6
解决办法
6万
查看次数

R随机森林变量重要性

我试图使用随机森林包在R中进行分类.

列出的可变重要性措施是:

  • 对于0级,变量x的平均原始重要性得分
  • 第1类的变量x的平均原始重要性得分
  • MeanDecreaseAccuracy
  • MeanDecreaseGini

现在我知道这些"意思"是什么,因为我知道他们的定义.我想知道的是如何使用它们.

我真正想知道的是,这些价值仅仅意味着它们是多么准确,什么是好价值,什么是坏价值,什么是最大值和最小值等等.

如果变量有高MeanDecreaseAccuracy或者MeanDecreaseGini这意味着它是重要的还是不重要的?此外,有关原始分数的任何信息也可能有用.我想知道有关这些数字的所有信息,这些数字与它们的应用相关.

使用"错误","求和"或"置换"等词语的解释将不那么有用,因为更简单的解释不涉及任何关于随机森林如何运作的讨论.

就像我希望有人向我解释如何使用收音机一样,我不希望这个解释涉及无线电如何将无线电波转换成声音.

statistics r data-mining random-forest

46
推荐指数
3
解决办法
5万
查看次数

sklearn随机森林可以直接处理分类功能?

假设我有一个分类特征,颜色,它取值

['red','blue','green','orange'],

我想用它来预测随机森林里的东西.如果我对它进行单热编码(即我将其更改为四个虚拟变量),我如何告诉sklearn这四个虚拟变量实际上是一个变量?具体来说,当sklearn随机选择要在不同节点使用的特征时,它应该包括红色,蓝色,绿色和橙色虚拟对象,或者它不应包括任何一个.

我听说没有办法做到这一点,但我认为必须有一种方法来处理分类变量,而不是随意将它们编码为数字或类似的东西.

python random-forest scikit-learn one-hot-encoding

46
推荐指数
3
解决办法
3万
查看次数

为随机森林回归模型设置ntree和mtry的值

我正在使用R包randomForest来对一些生物数据进行回归.我的训练数据大小是38772 X 201.

我只是想知道---树木ntree的数量和每个级别的变量数量有什么好处mtry?是否有一个近似的公式来找到这样的参数值?

我的输入数据中的每一行都是一个代表氨基酸序列的200个字符,我想建立一个回归模型来使用这样的序列来预测蛋白质之间的距离.

statistics regression r machine-learning random-forest

38
推荐指数
3
解决办法
7万
查看次数