QAT aware training for mobilenetV2 not working
@Xhark ya está trabajando en esto.
Desde el 28/8/2023.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Hello I am trying to apply quantization aware training for mobilenet, and I am testing on the mnist dataset, the floating point models works very well but the moment I add the quantization I have a very huge loss and the model isn't converging.
definition of the model :
`
def build_model(target_size):
input_tensor = Input(shape=(target_size, target_size, 3))
base_model = applications.MobileNetV2(
include_top=False,
weights='imagenet',
input_tensor=input_tensor,
input_shape=(target_size, target_size, 3),
pooling='avg')
for layer in base_model.layers:
layer.trainable = False # trainable has to be false in order to freeze the layers
op = Dense(256, activation='relu')(base_model.output)
op = Dropout(.25)(op)
output_tensor = Dense(10, activation='softmax')(op)
model = Model(inputs=input_tensor, outputs=output_tensor)
return model`
quantization and training:
def quantized_model(model_fp32):
quantize_model = tfmot.quantization.keras.quantize_model
q_aware_model = quantize_model(model_fp32)
return q_aware_model
`q_aware_model = quantized_model(model_fp32)
q_aware_model.compile(optimizer='adam',
loss='categorical_crossentropy',
metrics=['categorical_accuracy'])
print("training model with int8 precision")
train_images_subset = train_images[0:1000] # out of 60000
train_labels_subset = train_labels[0:1000]
encoded_y_quant_train = to_categorical(train_labels_subset, num_classes=10, dtype='float32')
train_quant_generator = load_data_generator(train_images_subset, encoded_y_quant_train, batch_size=64)
q_aware_model.fit(train_quant_generator,
batch_size=500, epochs=1, steps_per_epoch=900)`
- Lenguaje dominante
- Python
- Estrellas
- 1.6k
- Forks
- 349
- Merge medio
- 3 d 2 h
- PR fusionados (30 d)
- 1
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de tensorflow/model-optimization
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
tensorflow/model-optimization#1301 · 1 comentario ·
-
bug
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
tensorflow/model-optimization#1272 ·
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 50/100
tensorflow/model-optimization#1270 · 2 comentarios ·
-
build from source fails on macos Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 48/100
tensorflow/model-optimization#1241 ·
-
bug
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
tensorflow/model-optimization#1182 · 1 comentario ·
Todos los issues de tensorflow/model-optimization
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
stephrobert/dsoxlab#238 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
sublimehq/package_control#1780 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
nwg-piotr/nwg-displays#145 ·