JFSA 2023-05-13 22:49 采纳率: 50%
浏览 69
已结题

怎么修改onnx 文件的的节点名字。

我需要把onne 转caffe 后量化wk文件,但是在量化的时候,提示我节点名字有特殊符号,所以我现在需要改节点的名字。需要把下图中的 所有节点name 改成data,或者其他简单的英语字母。

img


改成如下图这样

img

  • 写回答

4条回答 默认 最新

  • yy64ll826 2023-05-16 15:06
    关注
    获得7.50元问题酬金
    
    import onnx
    
    # 加载模型文件
    model = onnx.load("model.onnx")
    
    # 修改输入输出张量的名称
    idx_start = 0
    for input in model.graph.input:
        for node in model.graph.node:
            # 如果当前节点的输入名称与待修改的名称相同,则将其替换为新名称
            for i, name in enumerate(node.input):
                if name == input.name:
                    node.input[i] = "input_" + str(idx_start)
        input.name = "input_" + str(idx_start)
        idx_start += 1
    
    idx_start = 0
    for output in model.graph.output:
        for node in model.graph.node:
            # 如果当前节点的输入名称与待修改的名称相同,则将其替换为新名称
            for i, name in enumerate(node.output):
                if name == output.name:
                    node.output[i] = "output_" + str(idx_start)
        output.name = "output_" + str(idx_start)
        idx_start += 1
    
    # 保存修改后的模型
    onnx.save(model, "modified_model.onnx")
    
    
    
    评论

报告相同问题?

问题事件

  • 系统已结题 5月21日
  • 创建了问题 5月13日