Веса в RNNCell - PullRequest
       5

Веса в RNNCell

0 голосов
/ 20 января 2019

я приду к руководству udemy по созданию чат-бота в глубоком nlp, и я застрял в этой ошибке, которая связана со слоем кодировщика в rnn ...

ValueError: попытка второй RNNCell использовать веса переменной области, которая уже имеет веса: 'bidirectional_rnn / fw / multi_rnn_cell / cell_0 / basic_lstm_cell'; и ячейка не была сконструирована как BasicLSTMCell (..., reuse = True). Чтобы разделить вес RNNCell, просто используйте его во втором расчете или создайте новый с аргументом reuse = True.

код

def encoder_rnn(rnn_inputs, rnn_size, num_layers, keep_prob, sequence_length):
    lstm = tf.contrib.rnn.BasicLSTMCell(rnn_size)
    lstm_dropout = tf.contrib.rnn.DropoutWrapper(lstm, input_keep_prob = keep_prob)
    encoder_cell = tf.contrib.rnn.MultiRNNCell([lstm_dropout] * num_layers)
    _, encoder_state = tf.nn.bidirectional_dynamic_rnn(cell_fw = encoder_cell,
                                                                    cell_bw = encoder_cell,
                                                                    sequence_length = sequence_length,
                                                                    inputs = rnn_inputs,
                                                                    dtype = tf.float32)


 #getting traing and test predictions
training_predictions, test_predictions=seq2seq_model(tf.reverse(inputs,[-1]), targets, keep_probe,
                                                     batch_size,
                                                     sequence_length,len(answerswords2int), len(questionswords2int),
                                                     encoding_embedding_size, decoding_embedding_size,
                                                     rnn_size, num_layers, questionswords2int)

пожалуйста, помогите !!

...