I’m currently trying to benchmark a simple Autoencoder model for anomaly detection:
for n_bits in range(2,7):
brevitas_model = torch.nn.Sequential(
# QuantIdentity layer as entry point
brevitas.nn.QuantIdentity(bit_width=n_bits, return_quant_tensor=True),
# Encoder
brevitas.nn.QuantLinear(input_dim, encoding_dim, bias=True, weight_bit_width=n_bits),
brevitas.nn.QuantReLU(),
# Decoder
brevitas.nn.QuantLinear(encoding_dim, input_dim, bias=True, weight_bit_width=n_bits),
brevitas.nn.QuantSigmoid()
)
# train and compile the model on train dataset
...
# predict on test dataset
...
I attempted to adhere to the instructions outlined in this guide: Step-by-step Guide - Concrete ML
However, I seem to encounter an issue. When reaching n_bits=4 and compiling the model, it consistently exceeds the maximum_integer_bit_width limit of 16.
Is this a problem of my model architecture?