This topic created in 1248 days ago, the information mentioned may be changed or developed.
一个模型文件,做图片中的文本识别的,onnx 格式,运行的程序也是一样的。
在 2 个不同的机器,windows 和 linux ,对接的显卡型号不一样,windows 是 3080i ,T4
发现同一个图片,在 2 个机器上识别出的结果会有差异,有的识别成功,有的识别不了。
对 AI 不熟,想问一下,这样的差异正常吗?
顺便问个:有没有比较好的,识别图片中文字或图标的开源框架,可以返回坐标及其文字的。
4 replies • 2023-03-31 09:52:27 +08:00
 |
|
1
jack4in Dec 14, 2022
百度的 paddleocr
|
 |
|
2
lhggame Dec 27, 2022
在训练机器学习模型时,使用不同的显卡可能会导致训练时间的差异。但是,一旦模型训练完成并在不同的设备上运行,它应该会产生相同的结果。这是因为在训练过程中所学到的权重和偏差已经被固化到模型中,并且在不同的设备上进行推理时,它们应该会产生相同的输出。
但是,在推理过程中,使用不同的显卡可能会导致性能差异。这是因为某些显卡可能更快,更有效地执行特定的计算操作,这可能会导致推理速度的差异。
总的来说,使用不同的显卡可能会导致训练时间的差异,但在推理过程中应该会产生相同的结果,但可能会有性能差异。
|
 |
|
4
oceaniaxie Mar 31, 2023
可不可以把不同机器的模型推理库和 CUDA/CuDNN 分别列一下?包括版本。能想到的影响推理结果的因素:1. 有些推理引擎 /库会进行模型量化( Quantization ),比如把 FP32 浮点数压缩成 FP16 浮点数甚至 INT8 整数,当然会影响结果了。2.有些复杂一点的模型操作,在不同推理库中的实现方式有差异。3.图像数据前处理方式有差异,比如是不是用了相同的参数进行 Normalization 、是不是 Reszie 成了相同的大小? 4.识别结果后处理方式有差异,比如非极大抑制 NMS 参数是不是相同的?置信度阈值是否一样?
如果要进行细致的排错,可以按步骤来,分别在两个推理环境中,用同一张图片作为输入,输出前处理后的图像、特征层、模型输出、后处理之后的结果等等中间结果。然后就可以定位到问题出在哪个环节了。
|