【发布时间】:2017-12-30 18:44:27
【问题描述】:
我有一个形状为 (19, 73984) 的 python 数组 - 这代表 19 个 272 x 272px 大小的灰色扁平图像。我希望能够处理它并将其输入前馈神经网络,但我希望能够分批输入它。
我希望有某种将在 for 循环中运行的函数。该函数应该接收数据集数组、批量大小以及迭代的索引值,以便知道应该返回多少项目以及从哪个位置返回。
前任:
def get_batch_data(i, dataset, batch_size):
其中i 是一个for 循环迭代索引,用于返回从某个位置开始的数据块,直到dataset 循环结束。
有没有更好的方法来做到这一点,或者你能帮我解决这个问题吗?
谢谢!
【问题讨论】:
-
为什么是批处理文件标签?如果你的数据已经在 Python 数组中,为什么不直接留在 Python 环境中呢?
-
恐怕我不明白你在暗示什么
-
问题是 - 什么构成 有用的块...看起来您已经有一个方便的 19 项图像的夹盘数组...不适合你/你想解决什么问题?
-
我很抱歉没有解释清楚。目前,它们是 19,这似乎是要输入 NN 的一大块数据。但我试图找到一个好的机制,假设这 19 个会是一个更大的数字(例如:数千个)。在这种情况下,块功能会派上用场。
-
我的意思是你可以随意分块任何东西,但在这种情况下,它需要对你的神经网络有意义。如果您有一千个图像文件,那么您将遍历图像文件并一次执行一个。如果您有一个多千兆字节的文件,您可能希望以 123456 字节的块读取它并使用它们。或者您可能想要获取一个基本数组并在其上执行 N 个突变并发送每个突变数组。当然 - 人们可以给你最好的猜测答案,但如果没有一些特定的标准,他们是否会对你有任何好处是不确定的。