[WebNN] Fix bug in quantizeLinear and dequantizeLinear - #25931
Conversation
In latest WebNN spec, it requires the scale and zeroPoint rank to be same as the input rank for dequantizeLinear and dequantizeLinear operators. This PR adjusts the shape of scale and zeroPoint by appending or prepending 1s to their dimensions if they are not equal to the input rank. BTW, this PR also fixes some nits and makes some code improvement.
|
/azp run ONNX Runtime Web CI Pipeline,Windows GPU CI Pipeline,Linux Android Emulator QNN CI Pipeline,Windows GPU WebGPU CI Pipeline,Windows OpenVINO CI Pipeline |
|
/azp run Linux CPU CI Pipeline,Linux CPU Minimal Build E2E CI Pipeline,Linux GPU CI Pipeline,Linux GPU TensorRT CI Pipeline,Linux OpenVINO CI Pipeline,Linux QNN CI Pipeline,MacOS CI Pipeline,Windows ARM64 QNN CI Pipeline,Windows CPU CI Pipeline |
|
/azp run Windows GPU CUDA CI Pipeline,Windows GPU DML CI Pipeline,Windows GPU Doc Gen CI Pipeline,Win_TRT_Minimal_CUDA_Test_CI |
|
/azp run Windows GPU TensorRT CI Pipeline,onnxruntime-binary-size-checks-ci-pipeline,orttraining-linux-ci-pipeline,orttraining-linux-gpu-ci-pipeline,orttraining-ortmodule-distributed,Windows x64 QNN CI Pipeline,Big Models |
|
/azp run Test Linux CUDA x64 Release,Test Linux TensorRT x64 Release,web_Debug / build_onnxruntime_web,web_Release / build_onnxruntime_web |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
Azure Pipelines successfully started running 2 pipeline(s). |
|
No pipelines are associated with this pull request. |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
Azure Pipelines successfully started running 2 pipeline(s). |
Description
In latest WebNN spec, it requires the
scaleandzeroPointrank to be same as the input rank forquantizeLinearanddequantizeLinearoperators.Motivation and Context
This PR adjusts the shape of scale and zeroPoint by appending or prepending 1s to their dimensions if they are not equal to the input rank to align with the latest spec.
BTW, this PR also fixes some nits and makes some code improvement.