首页 > 解决方案 > TypeError:conv1d() 在 Tf 1.13.1 上得到了一个意外的关键字参数“输入”

问题描述

我正在使用Tensorflow 1.13.1一个项目。

它包含

batch_x = tf.nn.conv1d(input=batch_x, filters=eye_filter, stride=1, padding='SAME')

根据关键字存在https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/nn/conv1dinput

然而我得到

TypeError: conv1d() got an unexpected keyword argument 'input'

标签: pythonpython-3.xtensorflowwindows-subsystem-for-linux

解决方案


如果您正在使用TF 1.13,则允许的参数如下所示

tf.nn.conv1d(value,
           filters,
           stride,
           padding,
           use_cudnn_on_gpu=None,
           data_format=None,
           name=None)

要工作TF 1.13,那么您可以修改代码,如下所示

batch_x = tf.nn.conv1d(value=batch_x, filters=eye_filter, stride=1, padding='SAME')

TF 1.15中,允许的参数如下所示,其中input is alias for value.

tf.nn.conv1d(
    value=None, filters=None, stride=None, padding=None, use_cudnn_on_gpu=None,
    data_format=None, name=None, input=None, dilations=None
)

TF 2.4,允许的参数如下所示

tf.nn.conv1d(
    input, filters, stride, padding, data_format='NWC', dilations=None,
    name=None
) 

有关更多信息,您可以参考TF 1.13源代码。


推荐阅读