【发布时间】:2021-09-18 09:37:34
【问题描述】:
例如,我用 LSTM 做了一个 4 类分类器。
test_data = [
'I have a flower',
'The stars are beautiful,because of a flower that cannot be seen.',
'You know one loves the sunset,when one is so sad.'
]
test_gen = create_generator(test_data, batch_size=1) # do padding
res = model.predict_generator(test_gen)
I have a flower predict score 这句话可能是这样的:
[0.92, 0.07, 0.001, 0.009]
当我让batch_size 为 16 时,预测分数可能
[0.84, 0.12, 0.02, 0.02]
因为I have a flower的句子比test_data中的其他句子短,所以
它填充到相同的长度,填充项可能是0 或其他东西。
最后,它导致了这个巨大的差异(0.08=0.92-0.84 是一个很大的数字)。
我只想知道:这是正常现象吗? 否则,如何消除这种不确定性?
【问题讨论】:
-
批量大小不同会有不同的结果是正常的
-
那么,有办法解决这个问题吗?作为 AI 中重要的 Model,不可能赤裸裸地应用到产品上吧?
-
不确定我是否理解但回答“这是正常现象?否则,如何消除这种不确定性?”答案是 1) 是的,2) 这不是不确定性。很简单,使用 16 的 batch_size 或其他任何设置都是不同的设置,会产生不同的结果。这里几乎没有什么需要解决的。
标签: python keras deep-learning lstm