Home > other >  converting recurrent to bi recurrent
converting recurrent to bi recurrent

Time:05-05

I want to convert this below RNN into bidirectional RNN, how can I do that?

#Call the function and compile the model.

model = RNN() model.summary() model.compile(loss='categorical_crossentropy',optimizer=RMSprop(),metrics=['accuracy']) model.fit(X_train,Y_train,batch_size=10,epochs=20, validation_split=0.1)

CodePudding user response:

You can use Bidirectional layer:

def RNN():
    inputs = Input(name='inputs',shape=[max_len])
    layer = Embedding(max_words, 100, input_length=max_len, 
                      weights=[embedding_matrix_vocab])(inputs)
    layer = Bidirectional(LSTM(64))(layer)
    layer = Dense(356,name='FC1')(layer)
    layer = Activation('relu')(layer)
    layer = Dense(356,name='FC2')(layer)
    layer = Activation('relu')(layer)
    layer = Dropout(0.5)(layer)
    layer = Dense(6,name='out_layer')(layer)
    layer = Activation('softmax')(layer)
    model = Model(inputs=inputs,outputs=layer)
    return model
  • Related