问题标签 [batchsize]

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.

0 投票
1 回答
636 浏览

mnist - pytorch:索引超出批处理大小的索引

我正在尝试使用 Pytorch 预测来自 MNIST 的一些图像,但我无法选择 0-60,000 之间的任何索引。首先我添加了“drop_last=True”,因为我注意到最后一个不完整的批次没有被丢弃,我认为这可以解决问题,但事实并非如此。如果我的批量大小为 256,我可以选择预测的最大索引为 255。我应该如何解决这个问题?这是我获取图像的方式:

以及我如何尝试做出预测:

然后我得到 IndexError: index 258 is out of bounds for dimension 0 with size 256

0 投票
2 回答
208 浏览

python - 使用更小批量的线性分类器获得更好/更快的结果

我目前正在用 tensorflow 训练多个线性分类器,但我发现了一些奇怪的东西。

如果 batch_size 很小,我的结果会更好(模型学得更快)我正在研究 FashionMNIST

结果

批量大小:20000 和 200 个 epoch

批量大小:10000 和 200 个 epoch

批量大小:2000 和 200 个 epoch

批量大小:1000 和 200 个 epoch

你知道我为什么会得到这样的结果吗?

0 投票
1 回答
417 浏览

python - 在训练和验证中丢弃最后一批(或添加一些条目)

我已将数据拆分为训练和验证样本(80% 用于训练,20% 用于验证):

但是,我面临与我的最后一批数据小于batch_size我为我的问题定义的数据相关的维度错误问题。假设我使用 a batch_size = 32,您可以看到最后一批训练和验证数据都比这小。我创建了一个 python 生成器来提供这些批次,如下所示:

如果最后一批小于batch_size我定义的,我可以添加任何命令来忽略最后一批(或添加一些条目以使其完全等于我的batch_size)?

0 投票
1 回答
152 浏览

keras - 如何在 keras 中嵌入 3d 输入?

我正在尝试Embedding在 Keras 中创建一个图层。

我的输入大小是 3d: (batch, 8, 6),我想嵌入最后一个维度。
所以嵌入应该像(batch*8, 6)->embedding output

但我不想batchsize在所有学习步骤中都保留这个,只是为了嵌入层。

我认为解决方案之一是分离 8 个输入并将嵌入应用于每个输入。
但是这个嵌入层与一个大的嵌入层不同。

有没有可能的解决方案?谢谢!

0 投票
2 回答
393 浏览

keras - 为什么我会根据预测的顺序从 Keras LSTM 网络得到完全不同的预测?

我有一个构建 LSTM 模型的脚本,适合训练数据,预测一些测试数据。(只是为了对火车数据进行有趣的绘图预测,因为它们应该接近火车数据,只是为了知道我的模型是否构建良好)

1)第一个问题是,对测试和训练数据的预测完全不同,这取决于我是先预测训练还是先测试。

2)第二个问题可能与第一个问题相关,所以每次我运行我的脚本时,对测试数据的预测都是完全不同的。我知道神经网络具有某种随机性,但正如您在我的结果图中看到的那样,它完全不同:

编辑1:我尝试按照评论中的建议设置'stateful = False'但没有成功。

edit2:我更新了脚本和绘图,并在新代码中提供了一些基本的正弦波样本数据。即使在那个简单的例子中,问题仍然存在

stateful=False 的预测结果图

我得到一个输入信号 X 作为正弦波,具有 100 个时间步长和随机幅度和频率。我的目标 y 与 X 相关(在每个时间步)并且是 - 在这种情况下 - 也是一个正弦波。我的数据的形状是

我正在使用 LSTM 网络尝试拟合完整的正弦波,因此批量大小 = 100,并预测测试信号的每个单点,因此预测的批量大小 = 1。此外,我正在手动重置 LSTM 的状态在每个时代之后,如此处所述: https ://machinelearningmastery.com/use-different-batch-sizes-training-predicting-python-keras/

为了建立我的网络,我遵循了这里提到的“keras-rules”: Delayed echo of sin - cannot reproduce Tensorflow result in Keras

我知道解决问题的基本方法,就像这里建议的那样: Wrong predictions with LSTM Neural Network but nothing for me.

我很感激这方面的任何帮助,以及提出更好的问题,以防我做错了什么,因为这是我在堆栈上的第一篇文章。

谢谢大家!这是我的代码示例:

0 投票
1 回答
157 浏览

java - MapR Streams Kafka API 的批量大小问题

您好,我正在使用 Kafka MapRStream 从 Mapr Streams 主题中接收事件。

我正在尝试增加消费者的批量大小,但一批中收到的消息不超过30条!

单个事件的大小约为 5000 字节。如果事件较小,我会在一批中获得更多。

这是我的消费者配置:

0 投票
1 回答
298 浏览

pytorch - 2D张量的元素乘法作为pytorch中的神经网络层

我有一个尺寸为 [Batch_size, n, n] 的 3D 火炬张量,它是我的网络层的输出,以及一个大小为 [n, n] 的恒定 2D 火炬张量。如何在批量大小上执行元素明智的乘法运算,这应该导致大小为 [Batch_size, n, n] 的火炬张量?

我知道可以使用显式循环来实现此操作,但我对最有效的方式感兴趣。

0 投票
1 回答
321 浏览

machine-learning - 学习率、损失和批量大小

损失是否取决于学习率和批量大小。例如,如果我保持批量大小为 4 并且学习率可以说是 .002,那么损失不会收敛,但如果将批量大小更改为 32,保持学习率相同,我会得到收敛的损失曲线。这可以吗?

0 投票
1 回答
373 浏览

java - 如何增加 MongoDB 的 ReactiveCrudRepository 的 batchSize?

我在调用我的 mongoDB 时,我的应用程序返回了数百个“getMore”请求。批量大小目前为 24,我想增加它以最大限度地减少昂贵调用的数量。有没有办法为 ReactiveMongo 配置 batchSize?

注意:我见过@Meta(batchSize = [xyz])有人建议,但仅适用于标准 (nonReactive) CrudRepository

0 投票
1 回答
192 浏览

tensorflow - 为什么 TensorFlow GPU 不适用于更大的批量?

我正在 Tensorflow GPU 1.13.1 上训练自动编码器网络。最初,我使用了批量大小 32/64/128,但似乎根本没有使用 GPU。虽然,“nvidia-smi”中的“memory-usage”返回以下内容:

并且,每次训练都在第 39 步停止。

即使等待几个小时,培训过程也不会进一步发展。

我注意到的另一件不寻常的事情是,将批量大小设置为“1”,GPU 将被持续使用。

可能是什么问题呢?