produce_shapes
函数功能
根据两个输入shape,生成broadcast后的shape。
如果两个shape对应维度都有值,则对应维度值必须相等或者其中有一个为1;如果两个输入shape的维度不同,则首先将维度小的shape进行高维度补1操作,然后再将两个维度相等的shape进行broadcast操作。
函数原型
def produce_shapes(shape1, shape2)
参数说明
参数 |
说明 |
---|---|
shape1 |
第一个输入shape |
shape2 |
第二个输入shape |
返回值说明
返回shape元组,包含shape1、shape2以及broadcast后的shape。
约束说明
无
调用示例
from tbe.common.utils import shape_util shape1 = (1,32,32, 3) shape2 = (32, 32, 32, 1) shape_util.produce_shapes(shape1, shape2)
返回如下shape元组:
shape1= (1, 32, 32, 3)
shape2= (32, 32, 32, 1)
shape3= (32, 32, 32,3)
父主题: shape相关工具