diff --git a/onnxruntime/python/tools/quantization/qdq_loss_debug.py b/onnxruntime/python/tools/quantization/qdq_loss_debug.py index 6e9fc612b1..4983811c21 100644 --- a/onnxruntime/python/tools/quantization/qdq_loss_debug.py +++ b/onnxruntime/python/tools/quantization/qdq_loss_debug.py @@ -343,9 +343,11 @@ def compute_signal_to_quantization_noice_ratio( left = numpy.concatenate(xlist).flatten() right = numpy.concatenate(ylist).flatten() - Ps = numpy.linalg.norm(left) - Pn = numpy.linalg.norm(left - right) + numpy.finfo("float").eps - return 20 * math.log10(Ps / Pn) + epsilon = numpy.finfo("float").eps + tensor_norm = max(numpy.linalg.norm(left), epsilon) + diff_norm = max(numpy.linalg.norm(left - right), epsilon) + res = tensor_norm / diff_norm + return 20 * math.log10(res) def compute_weight_error(