量化因子记录文件

量化因子record文件格式,为基于protobuf协议的序列化数据结构文件,通过该文件、量化配置文件以及原始网络模型文件,生成量化后的模型文件。

对于optional字段,由于protobuf协议未对重复出现的值报错,而是采用覆盖处理,因此出现重复配置的optional字段内容时会默认保留最后一次配置的值,需要用户自己保证文件的正确性

对于一般量化层需要配置包含scale_d、offset_d、scale_w、offset_w参数,对于AvgPool因为没有权重,因此不能够配置scale_w、offset_w参数,量化因子record文件格式参考示例如下(如下示例以inner_scale_offset_record.proto原型文件对应的量化因子为例进行说明):

record {
  key: "fc4/Tensordot/MatMul"
  value {
    scale_d: 0.0798481479
    offset_d: 1
    scale_w: 0.00297622895
    offset_w: 0
  }
}
record {
  key: "depthwise"
  value {
    scale_d: 0.00962011795
    offset_d: 1
    scale_w: 0.00787108205
    scale_w: 0.00787108205
    scale_w: 0.00787108205
    offset_w: 0
    offset_w: 0
    offset_w: 0
    skip_fusion: true
  }
}
record {
  key: "conv2d/Conv2D"
  value {
    scale_d: 0.00392156886
    offset_d: -128
    scale_w: 0.00106807391
    scale_w: 0.00104224426
    scale_w: 0.0010603976
    offset_w: 0
    offset_w: 0
    offset_w: 0
  }
}