seq2seq.py 文件源码

python
阅读 22 收藏 0 点赞 0 评论 0

项目:DMN-tensorflow 作者: sufengniu 项目源码 文件源码
def sentence_embedding_rnn(_encoder_inputs, vocab_size, cell, 
    embedding_size, mask=None, dtype=dtypes.float32, scope=None, reuse_scop=None):
    """

    """
    with variable_scope.variable_scope("embedding_rnn", reuse=reuse_scop):
        # encoder_cell = rnn_cell.EmbeddingWrapper(
        #       cell, embedding_classes=vocab_size,
        #       embedding_size=embedding_size)
        # Divde encoder_inputs by given input_mask
        if mask != None:
            encoder_inputs = [[] for _ in mask]
            _mask = 0
            for num in range(len(_encoder_inputs)):
                encoder_inputs[_mask].append(_encoder_inputs[num])
                if num == mask[_mask]:
                    _mask += 1
        else:
            encoder_inputs = []
            encoder_inputs.append(_encoder_inputs)
        encoder_state = None     
        encoder_states = []
        for encoder_input in encoder_inputs:
            if encoder_state == []:
                _, encoder_state = rnn.dynamic_rnn(encoder_cell, encoder_input, dtype=dtype)
            else:
                _, encoder_state = rnn.dynamic_rnn(encoder_cell, encoder_input, encoder_state, dtype=dtype)
            encoder_states.append(encoder_state)
        return encoder_states



# def def_feedforward_nn(input_size, l1_size, l2_size):
#   with tf.variable_scope("episodic"):
#       l1_weights = tf.get_variable("l1_weights", [input_size, l1_size])
#       l1_biases = tf.get_variable("l1_biases", [l1_size])
#       l2_weights = tf.get_variable("l2_weights", [l1_size, l2_size])
#       l2_biases = tf.get_variable("l2_biases", [l2_size])
#def feedforward_nn(l1_input, input_size, l1_size, l2_size):
#   with tf.variable_scope("episodic"):
#       l1_weights = tf.get_variable("l1_weights", [input_size, l1_size])
#       l1_biases = tf.get_variable("l1_biases", [l1_size])
#       l2_weights = tf.get_variable("l2_weights", [l1_size, l2_size])
#       l2_biases = tf.get_variable("l2_biases", [l2_size])
#       l2_input = tf.tanh(tf.matmul(l1_input , l1_weights) + l1_biases)
#       gate_prediction = tf.matmul(l2_input , l2_weights) + l2_biases
#       return gate_prediction
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号