查看: 455|回复: 3|关注: 0

[未答复] 使用网络训练标签和预测结果内容不同导致训练无效提示响应必须为分类响应的向量,或者为分类响应序列的元胞数组。

[复制链接]

新手

10 麦片

财富积分


050


3

主题

11

帖子

0

最佳答案
发表于 2020-6-4 00:36:12 | 显示全部楼层 |阅读模式
输入是一个已经用resnet101提取后的图像特征。训练数据输入是5932*2048,2048是图像特征的维度,有5932个样本,5932个样本可以分为32个类别

希望能使用神经网络得到一个分类结果,

神经网络结构如下
layer1=CrossEntropy('ce');
layers=[
    sequenceInputLayer(2048,'name','input')
   fullyConnectedLayer(20,'name','fc1')
     softmaxLayer('name','softmax')
classificationlayer
   ]

希望能用trainNetwork(train_feature,train_label',layers,options)这句来训练

train_feature就是5932*2048的输入,train_label是一个5932*1的标签,内容是1到32的整数
但是运行后总会报下面这个错误
错误使用 trainNetwork (line 170)
无效的训练数据。响应必须为分类响应的向量,或者为分类响应序列的元胞数组。

出错 centerlearning (line 38)
trainNetwork(train_feature,train_label',layers,options)

应该是标签Y就是神经网络的预测结果结构和train_label不匹配,所以请问一下classification 输出层的结果是怎么样的,可以修改吗,或者我应该怎么修改我的标签Y。
谢谢
回复主题 已获打赏: 0 积分

举报

新手

10 麦片

财富积分


050


3

主题

11

帖子

0

最佳答案
 楼主| 发表于 2020-6-4 00:37:04 | 显示全部楼层
想知道可以是不应该选择这个分类输出函数的问题吗,还是需要修改训练数据的类标签Y
回复此楼 已获打赏: 0 积分

举报

新手

10 麦片

财富积分


050


3

主题

11

帖子

0

最佳答案
 楼主| 发表于 2020-6-4 10:04:12 | 显示全部楼层
希望大佬帮助解决一下,可以有偿,谢谢
回复此楼 已获打赏: 0 积分

举报

新手

10 麦片

财富积分


050


3

主题

11

帖子

0

最佳答案
 楼主| 发表于 2020-6-4 17:35:18 | 显示全部楼层
解决了,classificationoutputlayer必须要要对应一个categorical类型的标签Y,只用double类型的数据不可以,我将double转换成categorical就可以训练了
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表