Keras - 區域性連線層



區域性連線層類似於Conv1D層,但不同之處在於Conv1D層的權重是共享的,而這裡權重是不共享的。我們可以使用不同的過濾器集來應用不同的輸入塊。

區域性連線層有一個引數,如下所示:

keras.layers.LocallyConnected1D(n)

使用一維區域性連線層的一個簡單示例如下所示:

>>> from keras.models import Sequential 
>>> from keras.layers import Activation, Dense,LocallyConnected1D 
>>> model = Sequential() 

# apply a unshared weight convolution 1-dimension of length 3 to a sequence with 
# 10 timesteps, with 16 output filters 

>>> model.add(LocallyConnected1D(16, 3, input_shape = (10, 8))) 

# add a new conv1d on top 
>>> model.add(LocallyConnected1D(8, 3))

一維區域性連線層的函式簽名及其引數(帶有預設值)如下所示:

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
)

這裡,

  • kernel_initializer 指的是核心權重矩陣的初始化器。

  • kernel_regularizer 用於將正則化函式應用於核心權重矩陣。

  • bias_regularizer 用於將正則化函式應用於偏差向量。

  • activity_regularizer 用於將正則化函式應用於層的輸出。

類似地,我們也可以使用二維和三維層。

迴圈層

它用於迴圈神經網路(RNN)。其定義如下所示:

keras.engine.base_layer.wrapped_fn()

它支援以下引數:

  • cell 指的是一個例項。

  • return_sequences 返回輸出序列中的最後一個輸出,或返回整個序列。

  • return_state 除了輸出之外,還返回最後一個狀態。

  • go_backwards 返回布林結果。如果值為真,則反向處理輸入序列,否則返回反向序列。

  • stateful 指的是每個索引的狀態。

  • unroll 指定網路是否需要展開。

  • input_dim 指的是輸入維度。

  • input_length 指的是輸入序列的長度。

廣告
© . All rights reserved.