R语言深度学习mxnet做分类

首先安装mxnet的包:

cran <- getOption("repos")
cran["dmlc"] <- "https://s3-us-west-2.amazonaws.com/apache-mxnet/R/CRAN/"
options(repos = cran)
install.packages("mxnet")  

完成之后我的R提示我要我重新下载"mlbench"包,我也不知道为啥,反正重新下载就重新下载把

install.packages("mlbench")

然后载入包

require(mlbench)
require(mxnet)

数据使用情况如下:
data(Sonar, package="mlbench")
Sonar[,61] = as.numeric(Sonar[,61])-1
train.ind = c(1:50, 100:150)
train.x = data.matrix(Sonar[train.ind, 1:60]) #训练集x
train.y = Sonar[train.ind, 61] #训练集y
test.x = data.matrix(Sonar[-train.ind, 1:60]) #测试集x
test.y = Sonar[-train.ind, 61] #测试集y

mx.set.seed(0)#设置随机种子(初始参数值)
                                      ## 输出激活函数类型(softmax映射为[0,1)的数值,表示概率,和为1)
model <- mx.mlp(train.x, train.y, hidden_node=10, out_node=2,out_activation="softmax", num.round=20, array.batch.size=15, 

                     ## 隐含层节点数  输出节点数                   训练次数

learning.rate=0.07, momentum=0.9, eval.metric=mx.metric.accuracy)

#学习效率(参数优化的步长)

#剩下的参数暂时没搞懂是干啥的,有懂得可以在评论区指教

preds = predict(model, test.x)#用训练的模型预测测试集y


pred.label = max.col(t(preds))-1 ##max.col为输出最大值的位置
table(pred.label, test.y)

结果如下:

                     test.y
pred.label  0  1
                0 26 15
                1 34 32

预测正确的数量是26+32,整体来说我感觉很差,仅仅过了百分之50多一点,不知道是数据集数量的问题还是规模的问题。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值