tenorsflow keras conv1d: ValueError: len (dilation_rate) = 1, но должно быть -1 - PullRequest
0 голосов
/ 01 октября 2018

Я пытаюсь построить пользовательский Keras, который будет регулироваться с tenorflow в качестве бэкенда.Выполнение следующего фрагмента кода дает мне исключение:

import tensorflow as tf
from tensorflow import keras    
inputs = keras.Input(shape=(10,))
x  = keras.backend.conv1d(inputs, tf.constant([-1,1]), padding = 'same', dilation_rate=None)


 x  = keras.backend.conv1d(inputs, tf.constant([-1,1]), padding = 'same', dilation_rate=None)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/arthur/miniconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/python/keras/backend.py", line 3775, in conv1d
    data_format=tf_data_format)
  File "/home/arthur/miniconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/python/ops/nn_ops.py", line 779, in convolution
    data_format=data_format)
  File "/home/arthur/miniconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/python/ops/nn_ops.py", line 842, in __init__
    num_spatial_dims, strides, dilation_rate)
  File "/home/arthur/miniconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/python/ops/nn_ops.py", line 625, in _get_strides_and_dilation_rate
    (len(dilation_rate), num_spatial_dims))
ValueError: len(dilation_rate)=1 but should be -1

Я не могу понять, что я делаю неправильно.

Спасибо.

1 Ответ

0 голосов
/ 24 октября 2018

Я думаю, что проблема в tf.constant([-1,1]).Это место для ядра, которое должно иметь размерность вроде input_length,in_channel,out_channel.

...