首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MNIST数据集提升

MNIST数据集提升
EN

Stack Overflow用户
提问于 2020-05-09 23:33:28
回答 1查看 63关注 0票数 0

我正在尝试将梯度提升应用于MNIST数据集。这是我的代码:

代码语言:javascript
复制
library(dplyr)
library(caret)
mnist <- snedata::download_mnist()
mnist_num <- as.data.frame(lapply(mnist[1:10000,], as.numeric)) %>%
mutate(id = row_number())
mnist_num <- mnist_num[,sapply(mnist_num, function(x){max(x) - min(x) > 0})]

mnist_train <- sample_frac(mnist_num, .70)
mnist_test <- anti_join(mnist_num, mnist_train, by = 'id')

set.seed(5000)
library(gbm)
boost_mnist<-gbm(Label~ .,data=mnist_train, distribution="bernoulli", n.trees=70, 
interaction.depth=4, shrinkage=0.3)

它显示以下错误:

“gbm.fit中出现错误(x= x,y= y,偏移量=偏移量,分布=分布,:伯努利要求响应在{0,1}中)”

这里出了什么问题?有没有人能给我看正确操作的代码?

EN

回答 1

Stack Overflow用户

发布于 2020-05-28 16:50:03

错误

代码语言:javascript
复制
Error in gbm.fit(x = x, y = y, offset = offset, distribution = distribution, : Bernoulli requires the response to be in {0,1}

由于对分布的选择,您应该选择multinomial而不是bernoulli,因为伯努利分布只适用于二分响应,并且mnist标签从1到10。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61699279

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档