使用tf.graph_util.convert_variables_to_constants对图做一下转换,发现中间的op的shape没了,然后使用baldeDISC编译会报错,这个问题怎么解决呢
如果中间操作的形状在转换过程中丢失,可以检查原始模型的定义和形状信息,确保其正确定义了中间操作的形状。如果原始模型中的形状信息也不完整,可以尝试更新模型定义,添加缺失的形状信息。
在阿里云机器学习PAI(Platform of Artificial Intelligence,简称PAI)中,当对图进行转换时,可能会导致中间操作(op)的形状(shape)信息丢失。这可能是因为某些操作在转换过程中可能会改变输入数据的形状,从而导致中间操作的形状无法推断。
为了解决这个问题,您可以尝试以下几种方法:
1、显式指定形状:在转换过程中,可以显式地指定中间操作的形状。例如,对于某个操作op,您可以通过设置op的shape属性来指定其形状,例如:op.set_attr("shape", [batch_size, height, width, channels]),其中batch_size、height、width和channels是您期望的形状参数。
2、使用shape推断工具:PAI提供了一些用于形状推断的工具,可以帮助您在转换过程中恢复中间操作的形状信息。您可以尝试使用这些工具来推断中间操作的形状,然后将其作为转换的参数进行传递。
3、检查原始模型:如果中间操作的形状在转换过程中丢失,可以检查原始模型的定义和形状信息,确保其正确定义了中间操作的形状。如果原始模型中的形状信息也不完整,可以尝试更新模型定义,添加缺失的形状信息。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
人工智能平台 PAI(Platform for AI,原机器学习平台PAI)是面向开发者和企业的机器学习/深度学习工程平台,提供包含数据标注、模型构建、模型训练、模型部署、推理优化在内的AI开发全链路服务,内置140+种优化算法,具备丰富的行业场景插件,为用户提供低门槛、高性能的云原生AI工程化能力。