Skip to Content
💡WebNN Origin Trial 即将到来!开发者可注册试用密钥进行体验 →
学习TutorialsONNX RuntimeFree Dimension Overrides

自由维度覆盖

ONNX 模型通过自由维度支持动态输入形状。自由维度允许模型在该维度上接受不同大小的输入。例如,输入形状为 [batch, 3, height, width] 的模型可以处理任意数量、任意尺寸的 RGB 图像(3 个通道)。

虽然这很灵活,但当你的应用使用一致的输入尺寸时,可以通过固定这些维度来优化性能。例如,如果你的 WebNN 应用始终只处理单张 224×224 的图像,就可以使用 freeDimensionOverrides 选项,将自由维度从 [batch, 3, height, width] 覆盖为 [1, 3, 224, 224]:

*.js
const sessionOptions = { freeDimensionOverrides: { batch: 1, height: 224, width: 224 } };

该配置会把输入维度锁定为特定值,从而有可能提升模型性能。

符号维度

No symbolic dimensions
没有符号维度的示例模型
Symbolic dimensions
带有三个符号维度的示例模型,名称分别为 batch_size、height 和 width

WebNN 执行提供程序需要通过 freeDimensionOverrides 为所有符号维度指定固定的整数值。

其他资源

Last updated on