Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python LSTM的输入维度_Python_Tensorflow_Keras_Lstm_Recurrent Neural Network - Fatal编程技术网

Python LSTM的输入维度

Python LSTM的输入维度,python,tensorflow,keras,lstm,recurrent-neural-network,Python,Tensorflow,Keras,Lstm,Recurrent Neural Network,我有这样的模型 它从最后5个条目预测下一个条目 (这意味着给出项目[0]~项目[4]预测项目[4]) 我有培训数据(9411026) 因此,我将(93,511026)作为输入,并将(93,11026)作为验证。 (然后将测试和数值分开) 然后 历史=model.fit(x,y,epochs=epoch,批量大小=10,验证数据=(valux,valuy)) 然而,这种错误发生了 我猜它是说我应该先给出形状[1011026],而不是[10,511026] 然而,我想做的是给他们最后5个,并预测下一

我有这样的模型

它从最后5个条目预测下一个条目

(这意味着给出
项目[0]
~
项目[4]
预测
项目[4]

我有培训数据
(9411026)

因此,我将
(93,511026)
作为输入,并将
(93,11026)
作为验证。 (然后将测试和数值分开)

然后 历史=model.fit(x,y,epochs=epoch,批量大小=10,验证数据=(valux,valuy))

然而,这种错误发生了

我猜它是说我应该先给出形状
[1011026]
,而不是
[10,511026]

然而,我想做的是给他们最后5个,并预测下一个

为什么错了?(我认为它适用于SimpleRN)

模型:“顺序”
_________________________________________________________________
层(类型)输出形状参数
=================================================================
lstm(lstm)(无,5512)23631872
_________________________________________________________________
致密的(致密的)(无,5512)262656
_________________________________________________________________
稠密的(稠密的)(无,511026)5656338
=================================================================
总参数:29550866
可培训参数:29550866
不可训练参数:0
_________________________________________________________________
回溯(最近一次呼叫最后一次):
文件“manage.py”,第22行,在
main()
文件“manage.py”,第18行,主
从命令行(sys.argv)执行命令
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/django/core/management/_-init____;.py”,第401行,从命令行执行
utility.execute()
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/django/core/management/_-init___;.py”,第395行,在execute中
self.fetch_命令(子命令)。从_argv(self.argv)运行_
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/django/core/management/base.py”,第330行,运行时来自
self.execute(*args,**cmd_选项)
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site packages/django/core/management/base.py”,第371行,在execute中
输出=self.handle(*args,**选项)
文件“/Users/whitebear/CodingWorks/httproot/aiwave/defapp/management/commands/learn.py”,第205行,在handle中
历史=model.fit(f.x,f.y,epochs=epoch,批量大小=10,验证数据=(f.val\u x,f.val\u y))
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site packages/tensorflow/python/keras/engine/training.py”,第108行,在方法包装中
返回方法(self、*args、**kwargs)
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site packages/tensorflow/python/keras/engine/training.py”,第1098行
tmp_logs=训练函数(迭代器)
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site packages/tensorflow/python/eager/def_function.py”,第780行,in_u调用__
结果=自身调用(*args,**kwds)
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site packages/tensorflow/python/eager/def_function.py”,第840行,in_call
返回self.\u无状态\u fn(*args,**kwds)
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site packages/tensorflow/python/eager/function.py”,第2829行,在调用中__
返回图形\函数。\过滤\调用(args,kwargs)\ pylint:disable=受保护的访问
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site packages/tensorflow/python/eager/function.py”,第1848行,在“过滤”调用中
取消管理器=取消管理器)
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site packages/tensorflow/python/eager/function.py”,第1924行,在调用平面中
ctx,args,取消管理器=取消管理器)
调用中的第550行文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site packages/tensorflow/python/eager/function.py”
ctx=ctx)
文件“/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site packages/tensorflow/python/eager/execute.py”,第60行,快速执行
输入、属性、数量(输出)
tensorflow.python.framework.errors\u impl.InvalidArgumentError:不兼容的形状:[10,511026]与[1011026]
[[node gradient_tape/mean_squared_error/BroadcastGradientArgs(定义于/Users/whitebear/CodingWorks/httproot/aiwave/defapp/management/commands/learn.py:205)][Op:[Op:[Uu推断\训练\函数]
函数调用堆栈:
列车功能

您的模型预测的是5项,而不是1项

尝试:


哇,谢谢你,那是我的粗心。我删除
return\u sequences=True
,它就可以工作了
    n_hidden = 512
    model = Sequential()
    model.add(LSTM(n_hidden, activation=None, input_shape=(5,11026), return_sequences=True))
    model.add(Dense(n_hidden, activation="linear")) 
    model.add(Dense(n_in, activation="linear"))
    opt = Adam(lr=0.001)
    model.compile(loss='mse', optimizer=opt)
    model.summary()
Model: "sequential"
_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
lstm (LSTM)                  (None, 5, 512)            23631872  
_________________________________________________________________
dense (Dense)                (None, 5, 512)            262656    
_________________________________________________________________
dense_1 (Dense)              (None, 5, 11026)          5656338   
=================================================================
Total params: 29,550,866
Trainable params: 29,550,866
Non-trainable params: 0
_________________________________________________________________
Traceback (most recent call last):
  File "manage.py", line 22, in <module>
    main()
  File "manage.py", line 18, in main
    execute_from_command_line(sys.argv)
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/django/core/management/__init__.py", line 401, in execute_from_command_line
    utility.execute()
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/django/core/management/__init__.py", line 395, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/django/core/management/base.py", line 330, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/django/core/management/base.py", line 371, in execute
    output = self.handle(*args, **options)
  File "/Users/whitebear/CodingWorks/httproot/aiwave/defapp/management/commands/learn.py", line 205, in handle
    history = model.fit(f.x, f.y, epochs=epoch, batch_size=10,validation_data=(f.val_x, f.val_y))
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/tensorflow/python/keras/engine/training.py", line 108, in _method_wrapper
    return method(self, *args, **kwargs)
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/tensorflow/python/keras/engine/training.py", line 1098, in fit
    tmp_logs = train_function(iterator)
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/tensorflow/python/eager/def_function.py", line 780, in __call__
    result = self._call(*args, **kwds)
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/tensorflow/python/eager/def_function.py", line 840, in _call
    return self._stateless_fn(*args, **kwds)
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/tensorflow/python/eager/function.py", line 2829, in __call__
    return graph_function._filtered_call(args, kwargs)  # pylint: disable=protected-access
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/tensorflow/python/eager/function.py", line 1848, in _filtered_call
    cancellation_manager=cancellation_manager)
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/tensorflow/python/eager/function.py", line 1924, in _call_flat
    ctx, args, cancellation_manager=cancellation_manager))
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/tensorflow/python/eager/function.py", line 550, in call
    ctx=ctx)
  File "/Users/whitebear/anaconda3/envs/aiwave/lib/python3.6/site-packages/tensorflow/python/eager/execute.py", line 60, in quick_execute
    inputs, attrs, num_outputs)
tensorflow.python.framework.errors_impl.InvalidArgumentError:  Incompatible shapes: [10,5,11026] vs. [10,11026]
     [[node gradient_tape/mean_squared_error/BroadcastGradientArgs (defined at /Users/whitebear/CodingWorks/httproot/aiwave/defapp/management/commands/learn.py:205) ]] [Op:__inference_train_function_2084]

Function call stack:
train_function
model.add(LSTM(n_hidden, activation=None, input_shape=(5,11026)))