Shape【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge产品支持情况产品是否支持Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√模块导入from ge.graph import Shape功能说明Shape 类继承自 Python 内置的list用于表示张量的形状维度信息。除了具备标准列表的所有操作能力外还提供了计算形状总元素数和判断是否为未知形状的便捷方法。当 dims 为 None 时表示标量空列表。Shape 模块同时定义了以下常量常量名值说明UNKNOWN_DIM-1表示未知维度UNKNOWN_DIM_NUM-2表示未知维度数量UNKNOWN_DIM_SIZE-1未知形状时 get_shape_size() 的返回值类定义class Shape(list): def __init__(self, dims: Optional[List[int]] None) - None函数列表函数功能说明__init__(dimsNone)构造函数创建 Shape 对象。dims 为整数列表None 表示标量空列表get_shape_size()计算形状中所有维度的乘积即张量的总元素数is_unknown_shape()判断形状中是否包含未知维度参数说明__init__ 参数参数名类型是否必选说明dimsList[int]否维度值列表例如 [1, 3, 224, 224]。None 表示标量空列表。默认值为 None返回值说明函数返回值类型说明get_shape_size()int所有维度的乘积。当形状为空标量时返回 0当形状中包含未知维度UNKNOWN_DIM 或 UNKNOWN_DIM_NUM时返回 -1is_unknown_shape()bool如果形状中包含 UNKNOWN_DIM-1或 UNKNOWN_DIM_NUM-2返回 True否则返回 False约束说明dims 参数必须为整数列表list of int或 None否则抛出 TypeError。Shape 继承自 list因此支持所有标准列表操作索引、切片、迭代、len 等。当形状中包含未知维度时get_shape_size() 返回 -1而非抛出异常。使用示例from ge.graph import Shape # 创建 Shape 对象 shape Shape([1, 3, 224, 224]) # 获取总元素数 print(shape.get_shape_size()) # 150528 # 判断是否为未知形状 print(shape.is_unknown_shape()) # False # 创建包含未知维度的 Shape unknown_shape Shape([-1, 3, 224, 224]) print(unknown_shape.is_unknown_shape()) # True print(unknown_shape.get_shape_size()) # -1 # 标量形状空列表 scalar Shape() print(len(scalar)) # 0 print(scalar.get_shape_size()) # 0 # 支持 list 操作 print(shape[0]) # 1 print(len(shape)) # 4 print(list(shape)) # [1, 3, 224, 224]【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
