keras - TypeError: `Conv2D` 只能接受 2 个位置参数('filters'、'kernel_size'),但您传递了以下位置参数:
问题描述
我正在尝试运行 CNN,但收到以下消息:
TypeError: `Conv2D` can accept only 2 positional arguments ('filters', 'kernel_size'), but you passed the following positional arguments: [64, (3, 3), (1, 1)]
我的代码是:
num_filters_conv1 = 64
kernel_size_conv1 = (3,3)
stride_conv1 = (1,1)
padding_conv1 = 'valid'
input_shape = (rows, cols, 1)
model.add(Conv2D(num_filters_conv1, kernel_size_conv1, stride_conv1, padding_conv1, activation='relu', input_shape=input_shape))
有谁知道发生了什么?为什么不支持内核和填充?
解决方案
步幅和填充是关键字参数。
参考:https
://keras.io/backend/#conv2d
试试:
model.add(Conv2D(num_filters_conv1, kernel_size_conv1,
strides=stride_conv1, padding=padding_conv1,
activation='relu', input_shape=input_shape))
推荐阅读
- regex - 找不到这个简单的正则表达式
- node.js - Argon2 与节点 docker 容器
- css - 顶部和底部有 td 内容的表格
- sql - 无法在 PostgreSQL 中创建别名
- python-3.x - 检查目标时出错:预期 dense_2 的形状为 (45, 20) 但得到的数组的形状为 (45, 1)
- python - 如何从文本文件中为不同的功能运行计数
- amadeus - 航班预订确认
- matlab - 是否可以在 Matlab 中绘制带有填充图案的条形图
- python - ModuleNotFoundError:没有以 virtualenv 命名的模块,需要了解如何为生产构建它
- python - 切片张量的每个原始数据