Клонирование модели аналогично вызову модели на новых входных данных, за исключением того, что оно создает новые слои (и, следовательно, новые веса), а не использует веса существующих слоев.
Аргументы
model
Экземпляр Model (может быть функциональной моделью или моделью Sequential).
input_tensors
необязательный список тензоров входных данных или объектов InputLayer для построения модели. Если не указано, будут созданы плейсхолдеры.
clone_function
Функция, которая используется для клонирования каждого слоя в целевой модели (кроме экземпляров InputLayer). Она принимает в качестве аргумента экземпляр слоя для клонирования и возвращает соответствующий экземпляр слоя, который будет использоваться в копии модели. Если не указано, эта функция по умолчанию равна функции сериализации/десериализации: lambda layer: layer.__class__.from_config(layer.get_config()). Передача пользовательской функции позволяет настраивать копию модели, например, путем обертывания определенных слоев, которые вас интересуют (вы можете, например, заменить все экземпляры LSTM эквивалентными экземплярами Bidirectional(LSTM(...))).
Возвращаемое значение
Экземпляр Model, воспроизводящий поведение исходной модели на основе новых тензоров входных данных, используя новые созданные веса. Клонированная модель может вести себя иначе, чем исходная модель, если пользовательская функция `clone_function` изменяет слой.
Исключения
ValueError
в случае недействительного значения аргумента model.