解析用于卷积神经网络的CSV格式的修改版MNIST

我计划使用这个修改版的MNIST来进行基准测试研究,但它们目前是以.mat格式存储的。因此,我在StackOverflow上读到MatlabRecordReader实际上并不那么robust,最明智的做法是将数据转换为CSV格式。我已经下载了Matlab,并将.mat文件转换为包含60000行(用于测试数据)的.csv文件,每行前784个值是图像本身的像素值,最后10个值是标签(虽然我相信我可以轻松地将标签压缩成第一个784个值之后的一个值)。

现在我有了这些数据,我不太确定如何正确地通过Iterator将其传递给我的卷积神经网络。我查看了文档,但这并不是我所需要的,并且查找RecordReaderDatasetIterator文档中的示例也几乎不符合要求,因为它将CSV文件的行视为一维向量(而不是矩阵),或者将数据格式化为线性回归使用。

希望我已经解释得足够清楚了。请问有人可以帮助我吗?



回答:

使用CSVRecordReader,将标签作为0到9的整数附加到每一行的末尾。

在底部使用convolutionalFlat作为setInputType。示例代码片段: .setInputType(InputType.convolutionalFlat(28,28,1)) .backprop(true).pretrain(false).build();

神经网络配置的完整代码示例:https://github.com/deeplearning4j/dl4j-examples/blob/master/dl4j-examples/src/main/java/org/deeplearning4j/examples/convolution/LenetMnistExample.java

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注