专栏算法工具链QAT量化(模型检查)

QAT量化(模型检查)

已解决
默认328322024-08-19
112
19

J5 J5_OE_1.1.74

1、我们根据算法工具链示例进行模型部署的第一步(模型检查)报了如下错误:

我在修改了torch.jit.trace为torch.jit.script后报了如下错误:

我们的代码如下所示:

请问我们该如何修改呢?

算法工具链
技术深度解析征程5
评论3
0/1000
  • Pipeline
    Lv.2

    不要以batch形式传入,每个数据单独作为输入

    2024-08-20
    0
    9
    • 默认32832回复Pipeline:
      请问我是要将batch里面的所有tensor一个一个提取出来然后再定义为example_inputs,再传入到torch.jit.trace函数里面吗?
      2024-08-20
      0
    • gaoh回复默认32832:

      是的

      2024-08-20
      0
    • 默认32832回复Pipeline:

      你好,我将batch里面的每个数据作为单独输入之后,出现了两个问题:

      1、torch.jit.trace函数期望模型的 forward 方法接受一个单一的输入参数,example_input 包含了多个参数?
      2、模型的 forward 方法应该能够处理 example_input 作为一个整体,而不是将每个参数分开处理?

      请问上面两个问题该如何解决呢?

      下面是我修改后的代码:

      报错如下:

      2024-08-20
      0
    • kuku回复默认32832:

      可以传入一个dic吗?类似这样,输入只有一个

      2024-08-20
      0
    • 默认32832回复kuku:

      你好,我也试了传入一个dic,不知道是不是因为我的dic里面有不是tensor类型的数据的原因,还是会报下面的错误:

      dic如下所示:

      2024-08-20
      0
    • kuku回复默认32832:

      dict里的数据要是同一个类型的,例如都是tensor,jit-trace 的 input 不支持复杂格式

      2024-08-20
      0
    • 默认32832回复kuku:

      请问我的dict里面的数据不是同一个类型该怎么处理呢?jit-trace又只能传入一个参数,也不能将数据的不同类型分开传入。

      2024-08-21
      0
    • kuku回复默认32832:

      修改成同一个类型的,例如 numpy转tensor,list之类的拆开转tensor,

      2024-08-21
      0
    • 默认32832回复kuku:

      好的,谢谢您的解答!

      2024-09-04
      0
  • Pipeline
    Lv.2

    能否提供模型结构报错的位置的代码呢?


    2024-08-19
    0
    4
    • 默认32832回复Pipeline:

      下面是报错位置的截图:

      2024-08-20
      0
    • 默认32832回复Pipeline:

      你好请问有适用于batch类型的生成计算图的函数吗?

      2024-08-20
      0
    • gaoh回复默认32832:

      torch.jit.trace或torch.jit.script使用上都有约束,应该都不支持batch类型输入,可以查阅一下pytorch的官方文档

      2024-08-20
      0
    • 默认32832回复gaoh:

      好的

      2024-08-20
      0
  • gaoh
    Lv.1

    请根据报错提示修改,用做trace的example_inputs准备单份tensor类型输入即可,不要传入整个data loader

    2024-08-20
    0
    3
    • 默认32832回复gaoh:

      算法工具链的示例数据传入只有image和target,而我们的算法输入数据非常多,所以是一个batch。请问你说的单份tensor是需要将我们的一个batch转化为一个tensor吗?

      2024-08-20
      0
    • gaoh回复默认32832:

      是的,视模型输入信息,可以转为dict(Tensor)传入

      2024-08-20
      0
    • 默认32832回复gaoh:

      你好,我的模型输入信息有些不是Tensor应该怎麼处理呢?

      2024-08-20
      0