了解Julia中使用MXNet的简单3层MLP示例

了解Julia中使用MXNet的简单3层MLP示例,julia,mnist,mxnet,mxnet.jl,Julia,Mnist,Mxnet,Mxnet.jl,我对神经网络有基本的了解。我知道应该有一个y矩阵(预期结果),它存储对应于不同类别标签的0或1。例如,对于数字识别,如果要识别的数字为6,则y向量应为[0,0,0,0,0,1,0,0,0,0]。然而,当我看到MXNet示例时,我无法识别任何准备这种结果矩阵的代码。我认为神奇之处在于get\u mnist\u providers()方法,它返回两个提供程序: train_provider, eval_provider = get_mnist_providers(batch_size) 我不知道这

我对神经网络有基本的了解。我知道应该有一个y矩阵(预期结果),它存储对应于不同类别标签的0或1。例如,对于数字识别,如果要识别的数字为6,则y向量应为
[0,0,0,0,0,1,0,0,0,0]
。然而,当我看到MXNet示例时,我无法识别任何准备这种结果矩阵的代码。我认为神奇之处在于
get\u mnist\u providers()
方法,它返回两个提供程序:

train_provider, eval_provider = get_mnist_providers(batch_size)
我不知道这些供应商是什么-培训供应商,评估供应商。
请帮助我了解这些供应商。我正在尝试编写一个具有不同分类的算法,因此理解此提供程序至关重要。

提供与标签对应的y向量是正确的。在MXNet中有迭代器的概念。迭代器用于将数据绑定到标签。get_mnist_providers方法可能正在提供数据迭代器,该迭代器附带了相应的标签

要更详细地了解数据迭代器如何融入整个模型优化,可以尝试本教程(链接到Github存储库):


(您需要jupyter notebook来运行教程。只需安装jupyter,然后在教程文件所在的文件夹中运行命令“jupyter notebook”

我所指的示例就在这里-回答完问题后,不要忘记接受答案。请参阅。感谢您的解释。
get\u mnist\u providers()
的实际函数定义可以在OP链接到的存储库dmlc/MXNet.jl的文件中找到