Перейти к содержанию

Локально-связные слои

LocallyConnected1D

keras.layers.LocallyConnected1D(filters, kernel_size, strides=1, padding=’valid’, data_format=None, activation=None, use_bias=True, kernel_initializer=’glorot_uniform’, bias_initializer=’zeros’, kernel_regularizer=None, bias_regularizer=None, activity_regularizer=None, kernel_constraint=None, bias_constraint=None)

Локально подключенный слой для 1D входов.

Слой LocallyConnected1D работает аналогично слою Conv1D, за исключением того, что веса не разделены, т.е. на каждый отдельный патч входа применяется разный набор фильтров.

Пример

# применить нераздельную весовую свертку 1d длиной 3 к последовательности с # 10 разрядами, с 64 выходными фильтрами

model = Sequential()

model.add(LocallyConnected1D(64, 3, input_shape=(10, 32)))# теперь model.output_shape == (None, 8, 64)# добавим сверху новый conv1d

model.add(LocallyConnected1D(32, 3))# теперь model.output_shape == (None, 6, 32)

Аргументы

  • filters: Целое, размерность выходного пространства (т.е. количество выходных фильтров в свертке).
  • kernel_size: Целое число или кортеж/перечень одного целого, задающего длину окна 1D свертки.
  • strides: Целое число или кортеж/перечень одного целого, задающего длину шага свертки. Указание любого значения страйда != 1 несовместимо с указанием любого значения dilation_rate!= 1.
  • padding: В настоящее время поддерживается только «valid» (без учета регистра). «same» может быть поддержано и в будущем.
  • data_format: Строка, один из channels_last, channels_first.
  • активация: Функция активации для использования (см. активации). Если ничего не указать, активация не применяется (т.е. «linear» activation: a(x) = x).
  • use_bias: Булева, использует ли слой вектор смещения.
  • kernel_initializer: Инициализатор для матрицы весов кернела (см. инициализаторы).
  • bias_initializer: Инициализатор для вектора смещения (см. инициализаторы).
  • kernel_regularizer: Функция регулялизатора, применяемая к матрице весов кернела (см. регуляризатор).
  • bias_regularizer: Функция регуляризатора применяется к вектору смещения (см. регуляризатор).
  • activity_regularizer: Функция регулялизатора применяется к выходу слоя (его «активация»). (см. регуляризатор).
  • kernel_constraint: Функция ограничения, применяемая к матрице кернела (см. ограничения).
  • bias_constraint: Функция ограничения, применяемая к вектору смещения (см. ограничения).

Форма ввода

3D тензор с формой: (batch_size, steps, input_dim)

Форма вывода

3D тензор с формой: (batch_size, new_steps, filters) steps значение могло измениться из-за пэддинга или страйдов.


[source]

LocallyConnected2D

keras.layers.LocallyConnected2D(filters, kernel_size, strides=(1, 1), padding=’valid’, data_format=None, activation=None, use_bias=True, kernel_initializer=’glorot_uniform’, bias_initializer=’zeros’, kernel_regularizer=None, bias_regularizer=None, activity_regularizer=None, kernel_constraint=None, bias_constraint=None)

Локально подключенный слой для 2D-входов.

Слой LocallyConnected2D работает аналогично слою Conv2D, за исключением того, что веса не разделены, т.е. на каждый отдельный патч входа применяется разный набор фильтров.

Примеры

# применить свертку неразборчивых весов 3×3 с 64 выходными фильтрами# на изображении 32×32 с `data_format=»channels_last»`:

model = Sequential()

model.add(LocallyConnected2D(64, (3, 3), input_shape=(32, 32, 3)))# теперь model.output_shape == (None, 30, 30, 64)# обратите внимание, что этот слой будет потреблять (30*30)*(3*3*3*64)# + (30*30)*64 параметры

# добавить сверху сверток несвязанных весов 3×3, с 32 выходными фильтрами:

model.add(LocallyConnected2D(32, (3, 3)))# теперь model.output_shape == (None, 28, 28, 32)

Аргументы

  • filters: Целое, размерность выходного пространства (т.е. количество выходных фильтров в свертке).
  • kernel_sizee: Целое число или кортеж/список из 2-х целых чисел, задающих ширину и высоту окна 2D свертки. Может быть одним целым числом, задающим одно и то же значение для всех пространственных измерений.
  • strides: Целое число или кортеж/список из 2-х целых чисел, задающих шаги свертки по ширине и высоте. Может быть одним целым числом, задающим одно и то же значение для всех пространственных измерений.
  • подкладка: В настоящее время поддерживает только «valid» (не чувствительный к регистру). «одно и то же» будет поддерживаться в будущем.
  • data_format: Строка, одна из channel_last (по умолчанию) или channels_first. Порядок следования размеров на входах. channels_last соответствует входам с формой (пакетный, высота, ширина, каналы), в то время как channels_first соответствует входам с формой (пакетный, каналы, высота, ширина). По умолчанию значением параметра image_data_format, найденным в конфигурационном файле Keras по адресу ~/.keras/keras.json, является ~/.keras/keras.json. Если вы никогда не устанавливали его, то это будет «channels_last».
  • activation: Функция активации для использования (см. активации). Если вы ничего не указываете, активация не применяется (т.е. «linear» actication: a(x) = x).
  • use_bias: Булева, использует ли слой вектор смещения.
  • kernel_initializer: Инициализатор для матрицы весов кернела (см. инициализаторы).
  • bias_initializer: Инициализатор для вектора смещения (см. инициализаторы).
  • kernel_regularizer: Функция регулялизатора, применяемая к матрице весов кернела (см. регуляризатор).
  • bias_regularizer: Функция регуляризатора применяется к вектору смещения (см. регуляризатор).
  • active_regularizer: Функция регулялизатора применяется к выходу слоя (его «активация»). (см. регуляризатор).
  • kernel_constraint: Функция ограничения, применяемая к матрице кернела (см. ограничения).
  • bias_constraint: Функция ограничения, применяемая к вектору смещения (см. ограничения).

Форма ввода

4D тензор с формой: (samples, channels, rows, cols) если data_format=’channels_first’ или 4D тензор с формой: (samples, rows, cols, channels) если data_format=’channels_last’.

Форма вывода

4D тензор с формой: (samples, filters, new_rows, new_cols) если data_format=’channels_first’ или 4D тензор с формой: (samples, new_rows, new_cols, filters) если data_format=’channels_last’. rows и cols значения могли измениться из-за пэддинга.