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

Метод to_json

Метод to_json класса Model возвращает строку JSON, содержащую конфигурацию модели. Метод не принимает обязательных параметров. Сериализации подлежит только архитектура модели: слои, их параметры и связи между ними. Веса модели в JSON не сохраняются, для этого используйте метод save_weights.

Синтаксис

model.to_json()

Пример

Давайте создадим простую модель и получим ее JSON-представление:

import tensorflow as tf model = tf.keras.Sequential([ tf.keras.layers.Dense(3, input_shape=(2,)), tf.keras.layers.Dense(1) ]) res = model.to_json() print(res)

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

{"class_name": "Sequential", "config": {"name": "sequential", "layers": [{"class_name": "InputLayer", "config": {"batch_input_shape": [null, 2], "dtype": "float32", "sparse": false, "ragged": false, "name": "dense_input"}}, {"class_name": "Dense", "config": {"name": "dense", "trainable": true, "batch_input_shape": [null, 2], "dtype": "float32", "units": 3, "activation": "linear", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}, {"class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 1, "activation": "linear", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}]}, "keras_version": "2.15.0", "backend": "tensorflow"}

Пример

Давайте сохраним JSON-строку в файл 'model.json':

import tensorflow as tf model = tf.keras.Sequential([ tf.keras.layers.Dense(3, input_shape=(2,)), tf.keras.layers.Dense(1) ]) res = model.to_json() with open('model.json', 'w') as f: f.write(res) print('saved')

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

"saved"

Пример

Давайте восстановим модель из JSON-строки с помощью функции model_from_json и проверим ее архитектуру:

import tensorflow as tf from tensorflow.keras.models import model_from_json model = tf.keras.Sequential([ tf.keras.layers.Dense(3, input_shape=(2,)), tf.keras.layers.Dense(1) ]) res = model.to_json() restored = model_from_json(res) restored.summary()

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

Model: "sequential" _________________________________________________________________ Layer (type) Output Shape Param # ================================================================= dense (Dense) (None, 3) 9 dense_1 (Dense) (None, 1) 4 ================================================================= Total params: 13 (52.00 B) Trainable params: 13 (52.00 B) Non-trainable params: 0 (0.00 Byte) _________________________________________________________________

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

  • класс Model,
    который представляет модель Keras
  • метод to_yaml,
    который сериализует модель в формат YAML
  • метод get_config,
    который возвращает конфигурацию модели в виде словаря
  • метод save,
    который сохраняет модель целиком вместе с весами
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить