问题标签 [mnist]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
neural-network - MNIST - 训练卡住
我正在阅读《神经网络和深度学习》(前两章),我正在尝试跟随并构建自己的 ANN 来对 MNIST 数据集中的数字进行分类。
几天来我一直在摸不着头脑,因为我的实现在 10 个 epoch 后对来自测试集(约 5734/10000)的数字进行分类时达到了约 57% 的准确率(训练集的准确度在第 10 个 epoch 之后停滞不前,并且测试集的准确性可能会因为过度拟合而下降)。
我使用的配置与书中几乎相同:2 层前馈 ANN(784-30-10),所有层都完全连接;标准 sigmoid 激活函数;二次成本函数;权重以相同的方式初始化(取自均值为 0 和标准差为 1 的高斯分布)唯一的区别是我使用在线训练而不是批量/小批量训练,并且学习率为 1.0 而不是 3.0(我已经尝试过小批量训练 + 3.0 的学习率)
然而,我的实现在一堆 epochs 之后没有通过 60% 的百分位数,正如书中所说,ANN 在第一个 epoch 之后以几乎完全相同的配置超过 %90 。起初我搞砸了反向传播算法的实现,但是在以不同的方式重新实现反向传播 3 次之后,每次重新实现的结果完全相同,我难住了......
反向传播算法产生的结果示例:
使用具有上述相同配置的更简单的前馈网络(在线训练 + 学习率为 1.0):3 个输入神经元、2 个隐藏神经元和 1 个输出神经元。
初始权重初始化如下:
给定输入 [0.0, 0.5, 1.0],输出为 0.78900331。对相同的输入进行反向传播,期望输出为 1.0,得到以下偏导数(dw = 导数 wrt 权重,db = 导数 wrt 偏差):
使用这些偏导数更新网络会产生 0.74862305 的校正输出值。
如果有人愿意确认上述结果,那将极大地帮助我,因为我几乎排除了反向传播错误是问题的原因。
有没有人处理 MNIST 问题遇到过这个问题?甚至对我应该检查的事情的建议也会有所帮助,因为我真的迷路了。
python - TensorFlow 从 numpy 数组创建数据集
TensorFlow 构建了一种存储数据的好方法。例如,这用于存储示例中的 MNIST 数据:
假设有一个输入和输出 numpy 数组。
如何在tf
数据集中转换它们?
我想使用类似的功能next_batch
python - 解封后在终端上查看 MNIST 数据集中的所有值
我已经查看了与我的查询有关的先前提出的问题,但需要更多帮助才能查看腌制文件 (MNIST.pkl.gz) 中的每个值我使用 gzip 解压缩它,并且能够查看一部分终端上的数组,但其余条目被替换为点。为了解决打印完整数组时出现的这个问题,我尝试了一种打印它的方法,但这并没有解决我的问题,因为它主要解决了同样的问题,但是当使用 NumPy 打印时。这是我的代码:
neural-network - 识别非数字
我已经编写了一个神经网络来识别推送到我的服务器的单个数字。我工作得很好,直到客户开始推送“空数字”。首先,我开始手动迭代它们并检查 NOT WHITE。现在它变得更加复杂,因为上传了“脏”的空白,其中有一些噪音。此外,有些人开始推对角线和水平线或 X,而不是写 0(零)。
我想知道我应该如何训练一个对这些“非数字”进行分类的“前”神经网络,尤其是我很难找到一种方法来训练一个嘈杂的空白所描绘的零。
caffe - 为什么 Caffe 的 Accuracy 层的底部由 InnerProduct 和 Label 组成?
我是caffe的新手,在MNIST示例中,我认为标签应该与 softmax 层进行比较,但在lenet.prototxt
. 我想知道为什么使用InnerProduct
结果和标签来获得准确性,这似乎不合理。是因为我错过了图层中的某些内容吗?
matlab - 如何在 MatConvNet 中使用使用 cnn_mnist 示例训练的网络?
我已经通过提供的代码 cnn_mnist 训练了一个 cnn。之后,我尝试对图像进行分类,但我不明白在以下代码之后出现此错误的原因:
machine-learning - TensorFlow MNIST 初学者需要一些了解评估步骤
我浏览了 Tensorflow 中评估训练模型的基本示例。这是它所说的:
我没有遵循此代码,训练有素的“模型”在哪里?还是tf.reduce_mean(....)?检查训练好的模型。
tensorflow - 占位符 x-input TensorFlow 的提要的 dtype 错误
我想用我刚刚安装的 TF 在 MNIST 上实现一个简单的逻辑回归,并想用 TensorBoard 监控 minibatch-SGD 的进度。
我首先在没有 tensorboard 的情况下编译它并在测试集上获得 0.9166 的准确度。
但是,当我添加 tensorboard 以查看发生了什么时,我什至无法编译它,我得到了:
the placeholders must be fed with dtype float
但我所有的数组都是具有 dtype float 的 np 数组!
如果您可以在我的代码中指出问题,那就太棒了:
它发生在要合并的提要中,但是当我以与输入 train_step 完全相同的方式输入时,我不知所措...
mnist - 如何制作手写算术运算符的数据集,如 MNIST 数据集
我想制作手写数字和算术运算符的数据集。互联网上可用的数据仅与 MNIST 数据集的处理有关。任何人都可以说出 MNIST 数据集是如何制作的会更好。
machine-learning - 如何使用腌制文件作为 keras 的数据集
我已经为数字分类构建了自己的数据集,它与 lisa lab 开发的卷积网络模型(这里)配合得很好。我想可视化权重,我想通过 keras 来实现。
Keras 文档尝试像这样加载 mnist 数据:
但我希望我的腌制数据集加载而不是 mnist 默认数据。用于 keras 的 mnist 模块在哪里加载它的数据集?而且,我怎样才能传递我自己的数据集而不是使用来自 keras 的 mnist 模块?
提前致谢。