首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理解Conv1D输出形状

理解Conv1D输出形状
EN

Data Science用户
提问于 2021-08-08 22:09:40
回答 1查看 830关注 0票数 3

我对Conv1D产生的输出形状有点困惑。考虑我使用的代码如下(为了清晰起见,省略了很多代码):

代码语言:javascript
复制
input_shape = x_train_2trans.shape
# (7425, 24, 1)

model.add(Conv1D(filters=4, input_shape=input_shape[1:], kernel_size=(3), activation=LeakyReLU))
model.add(Dropout(0.2))
model.add(Dense(1))

我尝试了3种不同的内核大小(3、2和1 ),其中产生的输出大小为:

(256,2500,12,1),(256,2500,18,1),(256,2500,24,1)。

我感到困惑的是,内核大小的每一滴都有6的差异。据我理解,对于内核大小为3的,12应该是21;而对于内核大小为2的18应该是22,这样才能适应具有指定内核大小的24的形状。

提前谢谢。

EN

回答 1

Data Science用户

发布于 2021-08-11 02:35:57

最有可能的是,问题在于输入数据。

这是一个玩具的例子。

代码语言:javascript
复制
import numpy as np
from tensorflow.keras import layers

input = np.ones((100,24,1))
input_shape = input.shape

layer = layers.Conv1D(filters=4, input_shape=input_shape[1:], kernel_size=(2))# Kernel=2
out = layer(input)
out.shape

layer = layers.Conv1D(filters=4, input_shape=input_shape[1:], kernel_size=(4))# Kernel=4
out = layer(input)
out.shape

输出- TensorShape(100、23、4) TensorShape(100、21、4)

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/99857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档