Squeeze
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR&950DT系列产品 | √ |
| Atlas A3系列产品 | √ |
| Atlas A2系列产品 | √ |
| Atlas 200I/500 A2推理产品 | √ |
| Atlas推理系列产品 | √ |
| Atlas训练系列产品 | √ |
功能说明
接口功能:删除Tensor中维度值为1的维度。示例:
axis为空时,删除所有维度值为1的维度:
>>> x = tf.constant([[[1], [2]], [[3], [4]]]) # shape (2, 2, 1)
>>> tf.squeeze(x).shape
(2, 2)
axis指定时,仅删除指定的维度值为1的维度:
>>> x = tf.constant([[[1], [2]], [[3], [4]]]) # shape (2, 2, 1)
>>> tf.squeeze(x, [2]).shape
(2, 2)
>>> tf.squeeze(x, [0]).shape
(2, 1)
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| x | 输入 | 待压缩的输入张量 | BOOL、FLOAT16、FLOAT、INT4、INT8、UINT8、INT16、UINT16、INT32、UINT32、INT64、UINT64、DOUBLE、COMPLEX64 | ND、FRACTAL_NZ |
| axis | 可选属性 |
|
LIST_INT64 | - |
| y | 输出 | 压缩后的输出张量,数据类型与输入x一致 | BOOL、FLOAT16、FLOAT、INT4、INT8、UINT8、INT16、UINT16、INT32、UINT32、INT64、UINT64、DOUBLE、COMPLEX64 | ND、FRACTAL_NZ |
约束说明
- 指定axis时,axis对应维度的维度值必须为1,否则算子执行失败。
- 输入为动态shape(含-1)且axis为空时,无法确定-1维度是否为1,输出shape置为-2。
调用说明
| 调用方式 | 样例代码 | 说明 |
|---|---|---|
| 图模式调用 | test_geir_squeeze | 通过算子IR构图方式调用Squeeze算子。 |