如何在 TensorFlow 中使用线性激活函数?
How to use a linear activation function in TensorFlow?
在CUDA ConvNet中,我们可以通过写neuron=linear[a,b]
来指定神经元激活函数是线性的,这样f(x) = ax + b
.
如何在 TensorFlow 中获得相同的结果?
在 TensorFlow 中编写线性激活的最基本方法是使用 tf.matmul()
和 tf.add()
(或 +
运算符)。假设您有一个大小为 batch_size
x prev_units
的前一层输出矩阵(我们称之为 prev_layer
),并且线性层的大小为 linear_units
:
prev_layer = …
linear_W = tf.Variable(tf.truncated_normal([prev_units, linear_units], …))
linear_b = tf.Variable(tf.zeros([linear_units]))
linear_layer = tf.matmul(prev_layer, linear_W) + linear_b
在CUDA ConvNet中,我们可以通过写neuron=linear[a,b]
来指定神经元激活函数是线性的,这样f(x) = ax + b
.
如何在 TensorFlow 中获得相同的结果?
在 TensorFlow 中编写线性激活的最基本方法是使用 tf.matmul()
和 tf.add()
(或 +
运算符)。假设您有一个大小为 batch_size
x prev_units
的前一层输出矩阵(我们称之为 prev_layer
),并且线性层的大小为 linear_units
:
prev_layer = …
linear_W = tf.Variable(tf.truncated_normal([prev_units, linear_units], …))
linear_b = tf.Variable(tf.zeros([linear_units]))
linear_layer = tf.matmul(prev_layer, linear_W) + linear_b