标签变量MXNet初始化错误
问题描述:
当我拨打module.fit()
时,出现错误 ValueError: Unknown initialization pattern for labelidx
。 符号“labelidx”是我为我的标签数据使用的名称 - 我不想使用softmax_label
,因为我没有使用softmax输出,但这似乎是许多行话的默认设置。它似乎试图初始化labelidx
作为参数,这是一个错误。我怎么能告诉它这是一个输入而不是学习参数?标签变量MXNet初始化错误
答
我想通了。
构建Module
对象时,需要告知它的名称(data_names
)和标签(label_names
)。其中每个应该是一个字符串名称的列表。默认情况下data_names=('data',), label_names=('softmax_label',),
否则它假设其他一切都是学习参数,并会尝试初始化它们,导致出现此错误。 Docs:http://mxnet.io/api/python/module.html#mxnet.module.module.Module
所以在我的情况下它需要Module(label_names=('labelidx',), ...)