- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在尝试在 mnist 手写数字数据集上运行 scikit 学习随机森林算法。在算法训练期间,系统会出现内存错误。请告诉我应该如何解决这个问题。
CPU 统计数据: Intel Core 2 Duo,4GB 内存
数据集的形状是60000, 784。 linux终端的完整错误如下:
> File "./reducer.py", line 53, in <module>
> main() File "./reducer.py", line 38, in main
> clf = clf.fit(data,labels) #training the algorithm File "/usr/lib/pymodules/python2.7/sklearn/ensemble/forest.py", line 202,
> in fit
> for i in xrange(n_jobs)) File "/usr/lib/pymodules/python2.7/joblib/parallel.py", line 409, in
> __call__
> self.dispatch(function, args, kwargs) File "/usr/lib/pymodules/python2.7/joblib/parallel.py", line 295, in
> dispatch
> job = ImmediateApply(func, args, kwargs) File "/usr/lib/pymodules/python2.7/joblib/parallel.py", line 101, in
> __init__
> self.results = func(*args, **kwargs) File "/usr/lib/pymodules/python2.7/sklearn/ensemble/forest.py", line 73, in
> _parallel_build_trees
> sample_mask=sample_mask, X_argsorted=X_argsorted) File "/usr/lib/pymodules/python2.7/sklearn/tree/tree.py", line 476, in fit
> X_argsorted=X_argsorted) File "/usr/lib/pymodules/python2.7/sklearn/tree/tree.py", line 357, in
> _build_tree
> np.argsort(X.T, axis=1).astype(np.int32).T) File "/usr/lib/python2.7/dist-packages/numpy/core/fromnumeric.py", line
> 680, in argsort
> return argsort(axis, kind, order) MemoryError
最佳答案
设置 n_jobs=1
或升级到 scikit-learn 的最新版本。问题是当前发布的版本使用多个进程来并行拟合树,这意味着数据(X
和y
)需要被复制到这些进程。下一个版本将使用线程而不是进程,因此树学习者共享内存。
关于python - Scikit Learn RandomForest 内存错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23118309/
setwd("D:/Santander") ## import train dataset train0.9999] train2<-train[,! colnames(train) %in% c(e
当我运行这样的代码时,我对获得的不同结果感到困惑: set.seed(100) test1<-randomForest(BinaryY~., data=Xvars, trees=51, mtry=5,
当我通过拆分单个数据帧创建训练集和测试集并使用 randomForest 包构建随机森林时,对于训练数据中不存在的某些因子级别, predict() 函数仍然会抛出一个输出。虽然这没有给出错误(这是我
当尝试在因子水平低于我的训练数据的新测试数据上测试我的训练模型时,predict()返回以下内容: Type of predictors in new data do not match that o
我正在尝试使用 randomForest 进行分类,但我反复收到一条错误消息,似乎没有明显的解决方案(randomForest 在过去对我进行回归时效果很好)。我在下面粘贴了我的代码。 “成功”是一个
我想训练我的模型并选择最佳的树数量。代码在这里 from sklearn.ensemble import RandomForestClassifier tree_dep = [3,5,6] tree_
有谁知道 R randomForest 包用来解决分类关系的机制是什么 - 即当树最终在两个或多个类别中获得相同的投票时? 文档说领带是随机断开的。但是,当您在一组数据上训练模型,然后使用一组验证数据
我在使用 RandomForest 拟合函数时遇到问题 这是我的训练集 P1 Tp1 IrrPOA Gz Drz2 0
在 randomForest 包中实现的 R 随机森林算法对数字类和整数类的变量的行为是否相同? 最佳答案 是的,randomForest 实现确实对待整数和数字( double )类似。在 RF 模
重要性图: 我想将 y 轴文本向右对齐,并且还想根据不同的变量组为变量着色。例如 Limonene 和 Valencane,a-Selinene 和 g-Selinen 分别属于同一组。 但我在 "r
R 3.0.0 的新特性之一是引入了长向量。但是, .C() 和 .Fortran() 不接受长向量输入。在 R-bloggers我发现: This is a precaution as it is
我一直在用 R 对 700 万行数据(41 个特征)训练 randomForest 模型。这是一个示例调用: myModel <- randomForest(RESPONSE~., data=myda
我一直在尝试安装 R 包“randomForest”,为此我运行了通常的安装命令 install.packages("randomForest", dependencies = T) 这给了我以下错误
我正在尝试构建一个在线随机森林分类器。在 for 循环中,我遇到了一个错误,但找不到原因。 clf = RandomForestClassifier(n_estimators=1, warm_star
如果我运行 randomForest(y ~ x, data = df) 模型,x 会得到超过 53 个级别的因子变量 Error in randomForest.default(m, y, ...)
我在 R 中使用 randomForest 包来构建几个物种分布模型。我的响应变量是二元的(0 - 缺席或 1 存在),并且非常不平衡 - 对于某些物种,缺席:存在的比率是 37:1。这种不平衡(或零
我刚刚开始使用 Weka,当我的决策树太深时我无法理解。我有一组 423 个特征,据我所知,这些特征是为每个目标随机选择的。因此,这些特征子集生成带有决策叶的分支或流程,这些决策叶似乎不通用,实际上它
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 5 年前。 Improve this ques
我的数据高度不平衡,想要对少数类进行上采样以提高准确性(少数类是感兴趣的对象)。 我尝试在“randomForest”函数中使用“sampsize”选项 - 但它只允许下采样。我在某个地方读到,可以使
我有一个包含 10,000 行和两列的数据框、段(具有 32 个值的因子)和目标(具有两个值"is"和“否”的因子,每个值 5,000 个)。我正在尝试使用随机森林来使用分段作为特征对目标进行分类。
我是一名优秀的程序员,十分优秀!