Conv1D 层 Keras 的 input_shape

2024-01-24

我正在尝试制作一个用于非图像数据集二元分类的 CNN 模型。我的模型/代码正在运行并产生非常好的结果(准确性很高),但我无法理解input_shape第一层参数Conv1D.

X 或输入的形状(此处x_train_df) 为 (2000, 28)。它有 28 个特征和 2000 个样本。以及 Y 或标签的形状(此处y_train_df) 是 (2000, 1)。

model = Sequential()
model.add(Conv1D(filters = 64, kernel_size = 3, activation = 'relu', input_shape = (x_train_df.shape[1], 1)))
model.add(Conv1D(filters = 64, kernel_size = 3, activation = 'relu'))
model.add(MaxPooling1D(pool_size = 2))
model.add(Flatten())
model.add(Dense(100, activation = 'relu'))
model.add(Dense(1, activation = 'sigmoid'))

optimzr = Adam(learning_rate=0.005)
model.compile(loss='binary_crossentropy', optimizer=optimzr,  metrics=[[tf.keras.metrics.AUC(curve="ROC", name = 'auc')], [tf.keras.metrics.AUC(curve="PR", name = 'pr')]])

# running the fitting
model.fit(x_train_df, y_train_df, epochs = 2, batch_size = 32, validation_data = (x_val_df, y_val_df), verbose = 2)

我给了input_shape作为 (28, 1) (参考自这个问题 https://stackoverflow.com/questions/61030068/keras-cnn-with-1d-data).

But in Conv1D 层文档 https://keras.io/api/layers/convolution_layers/convolution1d/文中写道,

当使用该层作为模型中的第一层时,请提供 input_shape 参数(整数元组或 None,例如 (10, 128) 表示 的序列128维向量的10个向量.

我从中了解到的是 input_shape 的维度应该是 (2000, 1) 因为我有 2000 个一维向量。但将此作为input_shape显示错误为,

ValueError:层“sequential_25”的输入 0 与 层:预期形状=(无,2000,1),发现形状=(无,28)

所以我的问题是什么应该是正确的input_shape?


让我们检查一下“Conv1D”如何接受输入。

>>> # The inputs are 128-length vectors with 10 timesteps, and the batch size
>>> # is 4.
>>> input_shape = (4, 10, 128)
>>> x = tf.random.normal(input_shape)
>>> y = tf.keras.layers.Conv1D(
... 32, 3, activation='relu',input_shape=input_shape[1:])(x)
>>> print(y.shape)
    (4, 8, 32)

3+D 张量,形状:batch_shape + (steps, input_dim)

如上所示 https://keras.io/api/layers/convolution_layers/convolution1d/,有 128 个特征,10 个时间步长,批量大小为 4。因此,Conv1D 将输入视为 (batch_size,timesteps,features)。它需要 3D 输入。假设您为您的案例选择批量大小为 1。您必须提供类似 (1,2000,28) 的输入。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Conv1D 层 Keras 的 input_shape 的相关文章

  • ptb_word_lm中batch_size的含义(tensorflow的LSTM模型)

    我是张量流的新手 我现在对它的含义有点困惑batch size 众所周知 其含义是batch size是每批次的样本数 但是根据中的代码ptb word lm 似乎不是 读者 py data len tf size raw data the
  • 如何向数据添加填充以使其可以接受 pycrypto 库中的 AES256 加密算法

    有人可以告诉我如何向数据添加填充 使其可以接受 pycrypto 库 Python 中的 AES256 加密算法 提前非常感谢 看着文档 http www dlitz net software pycrypto doc 看来要由图书馆用户自
  • 使用 matplotlib 在图像数据之上对线网格进行像素精确定位

    我试图在 python 库 matplotlib 显示的图像网格顶部精确地覆盖 1 像素宽线的网格 不幸的是 我似乎无法对结果进行足够精细的控制 以实现线网格与数据网格的正确对齐 如下面的代码所示 结果似乎总是很接近 但并不完全正确 我尝试
  • Python:用中值替换异常值

    我有一个 python 数据框 其中有一些异常值 如果这些值不存在的话 我想用数据的中值替换它们 id Age 10236 766105 11993 288 9337 205 38189 88 35555 82 39443 75 10762
  • Python(openpyxl):将数据从一个excel文件转移到另一个(模板文件)并用另一个名称保存,同时保留模板

    我有一个templateexcel 文件名为template xlsx其中有许多张 我想从单独的地方复制数据 csv文件到第一页template xlsx 命名为data 并将新文件另存为result xlsx同时保留原来的模板文件 我想粘
  • swig char ** 作为指向 char * 的指针

    我在使用 swig 和 char 作为指向变量 char 的指针时遇到问题 而不是作为 char 的列表 我找不到将指针包装到 char 的方法 目的是将连接的结果写入指针引用的 char 中 以下是我的代码 文件指针 cpp includ
  • 如何在 pySpark 数据框中添加行 ID [重复]

    这个问题在这里已经有答案了 我有一个 csv 文件 我在 pyspark 中将其转换为 DataFrame df 经过一番改造后 我想在 df 中添加一列 这应该是简单的行 ID 从 0 或 1 开始到 N 我将 df 转换为 rdd 并使
  • Pandas Dataframe.to_csv 小数=',' 不起作用

    在 Python 中 我正在将 Pandas Dataframe 写入 csv 文件 并希望将小数分隔符更改为逗号 像这样 results to csv D Data Kaeashi BigData ProcessMining Voorbe
  • 检查对象是否是字符串列表的列表?

    是什么elegant检查对象是否是字符串列表列表的方法 没有嵌套循环 也许这里必须是构造结构化迭代的常规方法 UPD 像这样的东西 l a b c d 1 3 e 2 f def recurse iterable levels result
  • 在OpenCV Python中编写4通道以上图像

    这对我来说是一个持续的挑战 我正在尝试使用 openCV 将两个 3 RGB 图像组合成一个 6 通道 TIFF 图像 到目前为止我的代码如下 import cv2 import numpy as np im1 cv2 imread im1
  • 如何在Python模拟中调用模拟方法

    我想创建一个模拟方法来调用被模拟的底层方法 我正在想象类似以下的内容 但我找不到任何有关模拟对象的文档 该对象包含对被模拟对象的引用 我将其表示为 wrapped method foo below from mock import patc
  • 在NN中指定连接(在keras中)

    我正在使用 keras 和tensorflow 1 4 我想明确指定哪些神经元在两层之间连接 因此 每当第一层中的神经元 i 连接到第二层中的神经元 j 且其他地方为零时 我就有一个矩阵 A 其中包含 1 我的第一次尝试是创建一个带有内核的
  • os.path.expanduser("~") 的替代方案?

    在Python 2 7 x中 os path expanduser Unicode 已损坏 这意味着如果 的扩展中包含非 ASCII 字符 则会出现异常 http bugs python org issue13207 http bugs p
  • 仅打印字符串中的元音

    我是Python新手 我正在尝试打印字符串中的所有元音 因此 如果有人输入 嘿 一切都好吗 所有元音都需要打印 但我不知道怎么做 所以这不是计算元音 而是打印元音 现在我已经得到了这个 sentence input Enter your s
  • Anaconda (Python) - Windows 10 上的 Cmder 集成

    我在 Windows 10 64 位上通过 Anaconda 让 Cmder 使用 Python 时遇到了一些麻烦 我让 Anaconda 工作得很好 测试过用 matplotlib 绘制一些东西 它与 Anaconda Prompt 一起
  • 使用 pyinstaller 制作的可执行文件出现运行时错误

    所以我使用 Pygame 制作了一个游戏 现在我想用它制作一个可执行文件 首选独立可执行文件 所以我用它来制作可执行文件 pyinstaller onefile main py 编译顺利 但运行时出现错误 这是错误 Traceback mo
  • Python:如何访问 Lotus Notes 8.5 Inbox 来阅读电子邮件

    我想用 python 创建一个脚本 从 Lotus Notes 8 5 读取电子邮件 然后在 jira 中为每封电子邮件创建一个问题 但当我尝试从 Lotus 读取邮件时 它会返回此错误 Traceback most recent call
  • 如何使用 Python 3 在 OpenCV 3 上正确加载 cv2.KeyPoint 和描述符?

    有一天 我不得不恢复一个使用 OpenCV 3 和 Python 2 7 的旧项目 在此代码中 要加载 cv2 KeyPoint 我执行以下操作 import numpy as np import cPickle import cv2 ke
  • FileAllowed 不显示错误消息

    我正在使用 WTForms 我正在对文件上传应用验证 并将其限制为仅 jpg png 和 pdf 格式 但是 如果我输入不正确 则不会出现错误消息 我按照这个教程https flask wtf readthedocs io en stabl
  • 使用 PyCharm 分析 Django

    即使在开发环境中 我的应用程序也相当慢 所以我想找出是什么导致它变慢 以便我可以尝试修复它 我了解调试工具栏 根据它的报告 数据库查询和下载的源都不是问题 所以它一定是业务逻辑 但是 我无法使用 Django 服务器运行 PyCharm 分

随机推荐

  • 需要图像编辑库的建议

    我正在尝试创建一个基于 WPF 的应用程序 该应用程序将允许用户编辑照片并提供以下功能 增加 减少亮度 Crop 复古外观 还有更多 我还期待提供更多奇特的功能 例如 构图 打印到 T 恤 但这些功能的优先级较低 有相关的开源库吗 P S
  • 在 C 中使用 #define 定义路径

    我想定义这样的路径 define PATH abc xyz lmn 该 PATH 是一个包含文件 foo1 foo2 foo3 foo115 的目录 如何在 open 调用中使用这个 define 来打开 foo1 foo2 foo115
  • 查询Windows显示缩放比例

    I want to query the Windows display scaling setting programmatically In this case I want it to return 125 since I config
  • 如何使用斯坦福 CoreNLP 对预标记文本进行 NER 和 POS 标记?

    我在我的应用程序中使用斯坦福大学的 CoreNLP 命名实体识别器 NER 和词性 POS 标记器 问题是我的代码预先标记了文本 然后我需要对每个标记进行 NER 和 POS 标记 但是 我只能找到如何使用命令行选项来执行此操作 而不能以编
  • 没有冲突的合并是否等于没有冲突的rebase?

    这是正确的吗git merge当且仅当相应的git rebase会在没有冲突的情况下成功吗 不 事实上有一个简单的情况 合并工作正常 但变基却不行 o A lt mainline B C C lt branch where C是一个与以下冲
  • 数据绑定错误 - 找不到访问器

    我用谷歌搜索但仍然没有找到适合我的解决方案 这是我的 xml
  • 带标志的数组

    假设我有一个布尔标志数组 它会根据条件设置为 true 或 false 假设索引 1 2 6 已设置 所有其他标志均未设置 我需要调用functionA 如果索引 2 3 5 已设置并且所有其他标志未设置 我需要调用functionB 除了
  • 如何使角度组件与窗口的实际尺寸全屏显示

    我正在使用 Angular 在我的 app component html 中我有一些像这样的组件
  • 在c语句中计算token

    以下 C 语句中的标记数 printf i d i x i i 我认为这里有 12 个令牌 但我的答案是错误的 谁能告诉我如何找到上述 C 语句中的标记 PS 我知道标记是编译器不会分解为组件元素的源程序文本 据我了解C代码解析 标记是 总
  • 在 UITableView 中取消选择行时如何从数组中删除项目

    我正在尝试从 a 中捕获选定的项目UITableView并将它们保存到一个新数组中 以下代码通过在点击行时添加项目来创建新数组 但它不会在取消选择行时删除项目 如何从列表中删除项目newFruitList当a中的一行UITableView被
  • 在 Ant build.xml 中使用 Compass 编译 SASS

    有谁知道如何使用 JRuby 和 Compass 模块在 build xml 中编译 SASS scss 文件 我可以在 sass 独立安装中使用 Sass Exec 模块 通过以下方式从 scss 编译为 css
  • NHibernate 错误消息:此 SqlParameterCollection 的索引 3 无效,计数 = 3

    I have a test database design like this 以下是伪代码 BhillHeader public class BillHeader public BillHeader BillDetails new Lis
  • std::regex 和忽略标志

    学习基础后c questions tagged c 2b 2b规则 我专注于std regex 创建两个控制台应用程序 1 renrem and 2 bfind 我决定创建一些方便的函数来处理regex in c questions tag
  • React/MUI Popover 使用anchorPosition 定位不正确

    我在 a 中使用 React MUI Popover反应窗口 https github com bvaughn react window列表元素并且无法使 Popover 正确定位 它总是出现在窗口的左上角 该组件无法在锚元素上执行 get
  • dojox.grid.DataGrid自定义排序方法?

    我有一个 dojox grid DataGrid 其中一列包含日期数据 例如 09 01 00 18 10 2010 09 03 00 18 10 2010 09 02 00 19 10 2010 当我单击标题并对列进行排序时 我得到了 0
  • 移植 AT&T inline-asm inb / outb 包装器以与 gcc -masm=intel 一起使用

    我目前正在开发 x86 操作系统 我尝试实现 inb 函数here https wiki osdev org Inline Assembly Examples它给了我Error Operand type mismatch for in 这也
  • 使用 Oracle 客户端和 Kerberos 与 Python 连接到数据库

    我有一个 python 脚本 它基本上使用x Oracleoracle 客户端连接到我的数据库服务器 连接后我可以运行 SQL 查询 现在 由于我的数据库凭据已过期 我被迫使用我不知道的 kerberos 身份验证 以前只需执行以下代码即可
  • Redis:可能使数组或排序集中的元素过期吗?

    目前是否只能使整个键 值对过期 如果我想将值添加到列表类型结构并让它们在插入后 1 小时自动删除 该怎么办 目前是否可行 或者是否需要运行 cron 作业来手动进行清除 有一个通用模式可以很好地解决这个问题 使用排序集 并使用时间戳作为分数
  • 取消透视从另一个表中获取的列

    我有超过 500 个列需要在取消透视时使用 select col1 col2 col3 from select from table unpivot col3 for col2 in value value2 value788 因此 我没有
  • Conv1D 层 Keras 的 input_shape

    我正在尝试制作一个用于非图像数据集二元分类的 CNN 模型 我的模型 代码正在运行并产生非常好的结果 准确性很高 但我无法理解input shape第一层参数Conv1D X 或输入的形状 此处x train df 为 2000 28 它有