提问人:Yeonsun Ahn 提问时间:10/23/2023 最后编辑:talonmiesYeonsun Ahn 更新时间:10/23/2023 访问量:37
基于 TensorFlow 的模型的某些输出向量返回为零的问题
Issue where some of the output vectors of TensorFlow-based models are returned to zero
问:
我每 5 秒从视频中提取一帧,并将每一帧输入到 inception-v3 模型中以从 中提取嵌入。之后,使用 对所有选定的帧嵌入进行平均。pca_final_feature
np.mean
以下是用于从模型中提取特征的代码:
np.mean 代码为:
emb = np.mean(a_batch_rgb, axis=0).tolist()
问题在于,嵌入的最后 1024 个维度从中间到结尾都用零填充。零开始的点每次都不同。 例如:
[-0.26928872615098953,0.12116124055215291,...,-0.03135611915162632,0.0,0.0,...,0.0]
比较上述嵌入的非零值与正常提取的嵌入值的相似度,测得大于99%。 这意味着视频帧和嵌入通常被提取并平均化。
我的环境:
- TensorFlow
2.4.0
- CUDA 版本
12.0~12.2
- 作为BentoML
1.0.22
- numpy的
1.19.4
如果您需要任何其他信息,请告诉我。
在服务于当前 bentoml 之前,它是在 cuda 11 版本节点上作为批处理执行的,并且从未发生过此问题。 在服务于当前 bentoml 之前,它是在 cuda 11 版本节点上作为批处理执行的,并且从未发生过此问题。 因此,np.mean 函数是否生成零,或者 cuda 版本和 tensorflow 版本是否冲突是值得怀疑的。 此外,在本地运行和测试Bentoml时,由于没有问题,因此很难重现。问题只发生在生产中。 如果您能告诉我出现此问题的原因,我将不胜感激。
答: 暂无答案
评论