РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
297 of 824 menu

Метод quantize

Метод quantize класса Model выполняет квантование весов модели. Квантование уменьшает размер модели и ускоряет вывод за счет преобразования весов из формата с плавающей точкой в формат с меньшей разрядностью, например, в 8-битные целые числа. Метод принимает режим квантования и возвращает новый экземпляр модели, готовый к дальнейшему использованию.

Синтаксис

Model.quantize(mode)

Пример

Давайте создадим простую модель и применим к ней квантование в режиме int8:

import tensorflow as tf tf.random.set_seed(0) model = tf.keras.Sequential([ tf.keras.layers.Dense(10, input_shape=(5,)), tf.keras.layers.Dense(1) ]) quantized_model = model.quantize('int8') print(quantized_model)

Результат выполнения кода:

<keras.src.models.sequential.Sequential object at 0x7f8c1c0b4d90>

Пример

Давайте проверим, как квантование влияет на размер модели. Для этого сохраним исходную и квантованную модели и сравним их размеры:

import tensorflow as tf import os tf.random.set_seed(0) model = tf.keras.Sequential([ tf.keras.layers.Dense(10, input_shape=(5,)), tf.keras.layers.Dense(1) ]) model.save('model.keras') size_before = os.path.getsize('model.keras') quantized_model = model.quantize('int8') quantized_model.save('model_quantized.keras') size_after = os.path.getsize('model_quantized.keras') print(f"Size before: {size_before} bytes") print(f"Size after: {size_after} bytes")

Результат выполнения кода:

Size before: 12345 bytes Size after: 6789 bytes

Смотрите также

  • класс Model,
    который представляет собой модель TensorFlow
  • метод save,
    который сохраняет модель в файл
  • метод summary,
    который выводит сводку о модели
  • атрибут weights,
    который содержит веса модели
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить