ML_Karasik
@ML_Karasik
Люблю нейросети и что с ними связанно

Влияет ли на что-то объединение блока слоев в Sequential модель (Keras, TensorFlow)?

Изучая примеры в документации TensorFlow заметил, что иногда при создании модели они объединяют блоки слоев в виде Sequential модели (пример от сюда https://www.tensorflow.org/tutorials/generative/pi...):

def downsample(filters, size, apply_batchnorm=True):
    initializer = tf.random_normal_initializer(0., 0.02)

    result = tf.keras.Sequential()
    result.add(
        tf.keras.layers.Conv2D(filters, size, strides=2, padding='same',
            kernel_initializer=initializer, use_bias=False)
    )

    if apply_batchnorm:
        result.add(tf.keras.layers.BatchNormalization())

    result.add(tf.keras.layers.LeakyReLU())

    return result


Влияет ли это на что-то? Или, может, это просто для более удобной работы со слоями?
  • Вопрос задан
  • 70 просмотров
Решения вопроса 1
@kamenyuga
Это чисто для удобства. Потом при выводе картинки делаешь
tf.keras.utils.plot_model(..., expand_nested=False)
, чтобы внутренности оберток не рисовались. На этом все удобство заканчивается. Видимо, сделали чисто для использования в туториале.

В общем и целом - полезность низкая. Лучше давать всем слоям осмысленные имена. Оборачивают в модели-обертки обычно крупные блоки, которые потом переиспользуют или сохраняют.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы