【问题标题】:what the Conv1D with kernel size equal to 1 do?内核大小等于 1 的 Conv1D 做什么?
【发布时间】:2020-08-17 04:39:16
【问题描述】:

我阅读了一个使用LSTMCONV1 的示例。 (取自:CNN LSTM

Conv1D(filters=64, kernel_size=1, activation='relu')
  • 我知道卷积的维度是 1(一个尺寸为 1 的暗淡))
  1. 卷积的值是多少? (矩阵 1*1 的值是多少?)
  2. 我不知道filters=64 是什么?这是什么意思?
  3. relu 激活函数是否对卷积的输出起作用? (从我读到的似乎是这样,但我不确定)
  4. 我们在这里使用卷积和kernel_size = 1 的动机是什么?

【问题讨论】:

    标签: keras deep-learning conv-neural-network lstm convolution


    【解决方案1】:

    过滤器

    filters = 64 表示使用的单独过滤器数量为 64。 每个滤波器将输出 1 个通道。即这里有 64 个过滤器对输入进行操作以产生 64 个不同的通道(或向量)。因此filters参数决定了输出通道的数量。

    kernel_size

    kernel_size 决定卷积窗口的大小。假设kernel_size = 1,那么每个内核的维度为in_channels x 1。因此每个内核权重将是in_channels x 1 维度张量。

    激活 = relu

    这意味着relu激活将应用于卷积运算的输出。

    kernel_size = 1 卷积

    用于通过应用非线性来减少深度通道。它会在保持感受野的同时对通道进行加权平均。

    在您的例如:filters = 64, kernel_size = 1, activation = relu 假设输入特征图的大小为100 x 10(100 个通道)。然后层权重将是维度64 x 100 x 1。输出大小将为64 x 10

    【讨论】:

    • 谢谢,但是卷积的值是多少? (例如 3x3 的蓝色卷积包含 9 个 1/9 的值)。这里的卷积值是多少?
    • 假设输入向量是 [[1,1,1], [2,2,2]] 即长度为 3 的 2 通道向量和内核是 [[.5], [.5]]和 [[1], [1]] 那么输出将是 [[1.5, 1.5, 1.5], [3, 3, 3]] (bcoz 1x0.5 + 2x0.5 = 1.5 and 1x1 + 2x1 = 3)
    • keras 中默认的内核初始化方法是 glorot_uniform。
    • 我想我错过了你的例子中的一些东西。如果内核是 [[.5], [.5]] 和 [[.5], [.5]] 那么 kernel_size 不是 1 ? (不是 1*2 吗?)
    • Kernel_size = 1 表示内核空间(第一)维度的大小将为 1。这里第二维度表示取决于输入特征通道大小的通道。查看this关于1x1卷积的视频
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-24
    • 2019-01-31
    • 1970-01-01
    • 2020-07-03
    • 2013-08-17
    • 2019-11-11
    • 1970-01-01
    相关资源
    最近更新 更多