python - Keras Conv1D 层在哪个轴上工作?
问题描述
我正在用 Keras 编写一个模型来进行时间序列分析。我发送到神经网络的信息结构是(samples, timesteps, features)
我的想法是在网络设计上分三个步骤。第一步有一个(或一些)Conv1D 层,然后是 LSTM 的另一个步骤,最后是一些 Dense 层。
对于第一层(Conv1D),如何选择将执行卷积的轴?我正在尝试在时间步长轴上这样做,但我不确定是否有类似的东西
model = Sequential()
model.add(Conv1D(180, 60, padding="same", strides=5, activation="relu"))
将使用时间步长轴,或者使用不同的轴。
解决方案
默认情况下,它应用到具有时间步长的轴。
import tensorflow as tf
timesteps = 7
features = 10
inputs = tf.random.uniform(shape=(100, timesteps, features), maxval=1, dtype=tf.float32)
filters = tf.random.uniform(shape=(3, 1, 1), maxval=1, dtype=tf.float32)
print(tf.keras.layers.Conv1D(filters=5, kernel_size=(3,))(inputs).shape)
(100, 5, 5)
得到的形状是(n_samples, time_steps - (kernel_size - 1), filters)
推荐阅读
- django - 如何在自引用外键中引用所有具有现有查询的子对象?
- python - 我的“检查值字符串是否等于字典练习”的错误是什么?
- azure - 使用 F# 进行 Azure.Data.Tables 序列化
- javascript - 如何在 div 框中显示来自 javascript innerhtml 的文本输出,而不会导致文本溢出并具有 html/css 样式
- java - 当我尝试将代码推送到 Rev Driver Hub 时出现错误
- firebase - 如何在所有 Firebase 文档中添加新字段?
- javascript - 如何将图像放置在侧边栏的左下角?
- python - 将数据合并为单个电子邮件:Python
- google-bigquery - 在 BigQuery 中使用计划查询时,我可以在 EXTERNAL_QUERY 中使用 @run_time 吗?
- javascript - 当按下按钮触发事件时没有任何反应