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

时间:2017-02-01 11:24:16

标签: julia mnist mxnet mxnet.jl

我对神经网络有基本的了解。我知道应该有一个y矩阵(预期结果),它存储0或1对应不同的类别标签。例如,对于数字识别,如果要识别的数字是6,那么y矢量应该是[0,0,0,0,0,1,0,0,0,0]。但是,当我看到MXNet示例in MXNet.jl repository on Github时,我无法识别任何准备此类结果矩阵的代码。我认为神奇之处在于get_mnist_providers()方法,该方法返回2个提供者:

train_provider, eval_provider = get_mnist_providers(batch_size)

我不知道这些提供商是什么 - train_provider,eval_provider。 请帮助我了解这些提供商。我正在尝试编写一个具有不同分类的算法,因此理解这个提供者至关重要。

1 个答案:

答案 0 :(得分:1)

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

要更详细地了解数据迭代器如何适应模型优化的整体情况,您可以尝试本教程(链接到mxnet-notebooks Github存储库): linear-regression.ipynb

(你需要jupyter笔记本来运行教程。只需pip install jupyter然后在教程文件所在的文件夹中运行命令' jupyter notebook'