Spec-Zone.ru › TensorFlow

tf.keras.layers.Lambda

Оборачивает произвольные выражения в объект Layer.

Наследует от: Layer, Operation

tf.keras.layers.Lambda(
    function, output_shape=None, mask=None, arguments=None, **kwargs
)

Используется в блокнотах

Используется в руководстве Используется в учебных пособиях
  • Основы TensorFlow
  • Прогнозирование временных рядов
  • Аугментация данных
  • Графовая регуляризация для классификации документов с использованием естественных графов
  • Использование TensorFlow Recommenders с TFX
  • Параметризованные квантовые схемы для обучения с подкреплением

Слой Lambda существует для того, чтобы при создании моделей Sequential и Functional API в качестве Layer можно было использовать произвольные выражения. Слои Lambda лучше всего подходят для простых операций или быстрых экспериментов. Для более сложных сценариев рекомендуется создавать новые подклассы Layer.

Предупреждение: Слои Lambda имеют ограничения на (де)сериализацию!

Основная причина создавать подкласс Layer вместо использования слоя Lambda — сохранение модели и её анализ. Слои Lambda сохраняются путём сериализации байт-кода Python, который по своей природе непереносим и потенциально небезопасен. Их следует загружать только в той же среде, в которой они были сохранены. Слои, созданные путём наследования, можно сохранять более переносимым способом, переопределив их метод get_config(). Модели, использующие слои, созданные путём наследования, также зачастую проще визуализировать и анализировать.

Пример:

# add a x -> x^2 layer
model.add(Lambda(lambda x: x ** 2))
Аргументы
function Функция, которую необходимо вычислить. Принимает входной тензор в качестве первого аргумента.
output_shape Ожидаемая форма выходных данных функции. Обычно этот аргумент можно вывести автоматически, если он не указан явно. Это может быть кортеж или функция. Если указана кортежем, она задаёт только измерения начиная с первого; предполагается, что размерность примеров совпадает с размерностью входных данных: output_shape = (input_shape[0], ) + output_shape, или что входные данные являются None и размерность примеров также является None: output_shape = (None, ) + output_shape. Если указана функцией, она задаёт всю форму как функцию от формы входных данных: output_shape = f(input_shape).
mask Либо None (означает отсутствие маскирования), либо вызываемый объект с той же сигнатурой, что и метод слоя compute_mask, либо тензор, который будет возвращён в качестве выходной маски независимо от входных данных.
arguments Необязательный словарь именованных аргументов, передаваемых функции.
Атрибуты
input Возвращает входной тензор (тензоры) символической операции.

Возвращает только тензор (тензоры), соответствующий первому вызову операции.

output Возвращает выходной тензор (тензоры) слоя.

Возвращает только тензор (тензоры), соответствующий первому вызову операции.

Методы

from_config

Просмотреть исходный код

@classmethod
from_config(
    config, custom_objects=None, safe_mode=None
)

Создаёт слой на основе его конфигурации.

Этот метод является обратным по отношению к get_config и позволяет создать экземпляр того же слоя из словаря конфигурации. Он не обрабатывает связи между слоями (за это отвечает Network) и веса (за это отвечает set_weights).

Аргументы
config Словарь Python, обычно являющийся результатом вызова get_config.
Возвращает
Экземпляр слоя.

symbolic_call

Просмотреть исходный код

symbolic_call(
    *args, **kwargs
)

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/keras/layers/Lambda

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API