MCPcopy Create free account
hub / github.com/XiaoMi/mace / __init__

Method __init__

tools/python/transform/transformer.py:51–162  ·  view source on GitHub ↗
(self, option, model, converter_info)

Source from the content-addressed store, hash-verified

49 """
50
51 def __init__(self, option, model, converter_info):
52 # Dependencies
53 # (TRANSFORM_MATMUL_TO_FC, TRANSFORM_GLOBAL_CONV_TO_FC) -> RESHAPE_FC_WEIGHT # noqa
54 self._registered_transformers = {
55 TransformerRule.TRANSFORM_FAKE_QUANTIZE:
56 self.transform_fake_quantize,
57 TransformerRule.REMOVE_USELESS_OP: self.remove_useless_op,
58 TransformerRule.FOLD_DIV_BN: self.fold_div_bn,
59 TransformerRule.TRANSPOSE_CONST_OP_INPUT:
60 self.transpose_const_op_input,
61 TransformerRule.TRANSFORM_GLOBAL_POOLING:
62 self.transform_global_pooling,
63 TransformerRule.TRANSFORM_LSTMCELL_ZEROSTATE:
64 self.transform_lstmcell_zerostate,
65 TransformerRule.TRANSFORM_BASIC_LSTMCELL:
66 self.transform_basic_lstmcell,
67 TransformerRule.FOLD_RESHAPE: self.fold_reshape,
68 TransformerRule.TRANSFORM_MATMUL_TO_FC:
69 self.transform_matmul_to_fc,
70 TransformerRule.UPDATE_FC_OUTPUT_SHAPE:
71 self.update_fc_output_shape,
72 TransformerRule.FOLD_BATCHNORM: self.fold_batchnorm,
73 TransformerRule.FOLD_BIASADD: self.fold_biasadd,
74 TransformerRule.FOLD_CONV_AND_BN:
75 self.fold_conv_and_bn, # data_format related
76 TransformerRule.FOLD_DECONV_AND_BN:
77 self.fold_deconv_and_bn, # data_format related
78 TransformerRule.FOLD_DEPTHWISE_CONV_AND_BN:
79 self.fold_depthwise_conv_and_bn, # data_format related
80 TransformerRule.TRANSFORM_ADD_TO_BIASADD:
81 self.transform_add_to_biasadd,
82 TransformerRule.REARRANGE_BATCH_TO_SPACE:
83 self.rearrange_batch_to_space,
84 TransformerRule.FLATTEN_ATROUS_CONV: self.flatten_atrous_conv,
85 TransformerRule.FOLD_ACTIVATION: self.fold_activation,
86 TransformerRule.FOLD_SQRDIFF_MEAN: self.fold_squared_diff_mean,
87 # fold_instance_norm depends on fold_squared_diff_mean
88 TransformerRule.FOLD_INSTANCE_NORM: self.fold_instance_norm,
89 TransformerRule.FOLD_MOMENTS: self.fold_moments,
90 TransformerRule.FOLD_EMBEDDING_LOOKUP: self.fold_embedding_lookup,
91 TransformerRule.TRANSPOSE_FILTERS: self.transpose_filters,
92 TransformerRule.TRANSPOSE_MATMUL_WEIGHT:
93 self.transpose_matmul_weight,
94 TransformerRule.FOLD_FC_RESHAPE:
95 self.fold_fc_reshape,
96 TransformerRule.ADD_IN_OUT_TENSOR_INFO:
97 self.add_in_out_tensor_info,
98 TransformerRule.ADD_WINOGRAD_ARG: self.add_winograd_arg,
99 TransformerRule.TRANSFORM_GLOBAL_CONV_TO_FC:
100 self.transform_global_conv_to_fc,
101 TransformerRule.RESHAPE_FC_WEIGHT: self.reshape_fc_weight,
102 TransformerRule.QUANTIZE_NODES:
103 self.quantize_nodes,
104 TransformerRule.ADD_QUANTIZE_TENSOR_RANGE:
105 self.add_quantize_tensor_range,
106 TransformerRule.QUANTIZE_WEIGHTS:
107 self.quantize_weights,
108 TransformerRule.UPDATE_FLOAT_OP_DATA_TYPE:

Callers

nothing calls this directly

Calls 1

initialize_name_mapMethod · 0.95

Tested by

no test coverage detected