Tensorflow中tf.layers.dense()在RNN网络搭建中的使用

一般来说,tf.layers.dense()多用于CNN网络搭建时搭建全连接层使用。

但在RNN网络搭建,特别是涉及到用RNN做分类时,tf.layers.dense()可以用作RNN分类预测输出

 

分类预测输出一般形式:

其中n_hidden为RNN cell的units个数,n_classes为labels的个数。

import tensorflow as tf
weights = {
    'out': tf.Variable(tf.random_normal([n_hidden, n_classes], mean=1.0))
}
biases = {
    'out': tf.Variable(tf.random_normal([n_classes]))
}
output = tf.matmul(lstm_last_output, weights['out']) + biases['out']
predication = tf.nn.softmax(output)

使用tf.layers.dense():

import tensorflow as tf
prediction = tf.layers.dense(
    inputs=lstm_last_output,
    units=n_classes,
    activation=tf.nn.softmax
)

 

你可能感兴趣的:(机器学习,Tensorflow)