我正在使用https://github.com/google-research/bert中的 BERT 实现进行特征提取,我注意到了一个我没想到的奇怪行为:如果我在同一文本上执行两次程序,我会得到不同结果。我需要知道这是否正常以及为什么会发生这种情况,以便以一种或另一种方式处理这一事实。这是为什么?神经网络不是确定性算法吗?
BERT 具有非确定性行为
数据挖掘
神经网络
nlp
特征提取
伯特
2022-02-18 22:27:00
1个回答
我在使用pytorch 实现时遇到了完全相同的问题,直到我意识到我没有将模型设置为eval 模式。因此,dropout仍然被激活。我想这也是你不确定行为的根源。
使用 pytorch 修复:
model.eval()
将 tensorflow 与 一起使用Estimator,确保您在测试期间调用estimator.evaluate或调用。estimator.predict如果您以某种方式导出了模型,那么您应该查看 tensorflow 文档。