keras convnet 1d 有偏差,尽管 activation=none
keras convnet 1d has bias although activation=none
我有一个带 keras 的卷积神经元网络:
x = tf.keras.layers.Conv1D(128, 65, padding='same', strides=2,activation=None)(input)
输入的大小为 (8192,1)
如果我检查我的模型摘要,该层具有以下属性,
输出形状和参数:
(None, 4096, 128) 8448
这里是如何计算参数的:
Input I x I x C
Filter F x F (x K) // K times applied
Parameters (F x F x C + 1) x K // where +1 bias per filter, and K is the number of filters
我计算了参数 -> (65 x 1 x 1 + 1) x 128
给了我准确的 8448。但我不明白为什么偏差在里面?我有激活=None。
here 我阅读了:
If use_bias
is True, a bias vector is created and added to the
outputs. Finally, if activation is not None
, it is applied to the
outputs as well.
我没有将偏差设置为 true 并将激活设置为 none。
参数use_bias
默认设置为True
,所以这就是您的参数计数不匹配的简单原因。激活也不影响偏差的使用。
我有一个带 keras 的卷积神经元网络:
x = tf.keras.layers.Conv1D(128, 65, padding='same', strides=2,activation=None)(input)
输入的大小为 (8192,1)
如果我检查我的模型摘要,该层具有以下属性, 输出形状和参数:
(None, 4096, 128) 8448
这里是如何计算参数的:
Input I x I x C
Filter F x F (x K) // K times applied
Parameters (F x F x C + 1) x K // where +1 bias per filter, and K is the number of filters
我计算了参数 -> (65 x 1 x 1 + 1) x 128
给了我准确的 8448。但我不明白为什么偏差在里面?我有激活=None。
here 我阅读了:
If
use_bias
is True, a bias vector is created and added to the outputs. Finally, ifactivation is not None
, it is applied to the outputs as well.
我没有将偏差设置为 true 并将激活设置为 none。
参数use_bias
默认设置为True
,所以这就是您的参数计数不匹配的简单原因。激活也不影响偏差的使用。