MousaviSajad / SleepEEGNet

SleepEEGNet: Automated Sleep Stage Scoring with Sequence to Sequence Deep Learning Approach
200 stars 72 forks source link

Issue with using Beam Search Algorithm #8

Open Maplexc opened 4 years ago

Maplexc commented 4 years ago

When setting the use_beamsearch_decode=True, it shows the ValueError: t must have statically known rank.

File "seq2seq_sleep_sleep-EDF.py", line 755, in main run_program(hparams,FLAGS) File "seq2seq_sleep_sleep-EDF.py", line 607, in run_program logits, pred_outputs, loss, optimizer,dec_states = build_whole_model(hparams,char2numY,inputs,targets, dec_inputs, keepprob) File "seq2seq_sleep_sleep-EDF.py", line 385, in build_whole_model logits, pred_outputs,dec_states = build_network(hparams,char2numY,inputs, dec_inputs, keepprob) File "seq2seq_sleep_sleep-EDF.py", line 295, in build_network encoder_state = tf.contrib.seq2seq.tile_batch(encoder_state, multiplier=hparams.beam_width) File "/home/Student/s4518991/.local/lib/python3.6/site-packages/tensorflow/contrib/seq2seq/python/ops/beam_search_decoder.py", line 126, in tile_batch return nest.mapstructure(lambda t: _tilebatch(t, multiplier), t) File "/home/Student/s4518991/.local/lib/python3.6/site-packages/tensorflow/python/util/nest.py", line 515, in map_structure structure[0], [func(x) for x in entries], File "/home/Student/s4518991/.local/lib/python3.6/site-packages/tensorflow/python/util/nest.py", line 515, in structure[0], [func(x) for x in entries], File "/home/Student/s4518991/.local/lib/python3.6/site-packages/tensorflow/contrib/seq2seq/python/ops/beam_search_decoder.py", line 126, in return nest.mapstructure(lambda t: _tilebatch(t, multiplier), t) File "/home/Student/s4518991/.local/lib/python3.6/site-packages/tensorflow/contrib/seq2seq/python/ops/beam_search_decoder.py", line 85, in _tile_batch raise ValueError("t must have statically known rank") ValueError: t must have statically known rank

nengwp commented 4 years ago

设置use_beamsearch_decode = True时,它显示ValueError:t必须具有静态已知的等级。

在主 run_program(hparams,FLAGS)中的行755中的 文件“ seq2seq_sleep_sleep-EDF.py”,在运行程序 logits中的行“ seq2seq_sleep_sleep-EDF.py”,行607 ,pred_outputs,loss,optimizer,dec_states = build_whole_model(hparams,char2numY输入,目标,dec_inputs,keepprob) 文件“ seq2seq_sleep_sleep-EDF.py”,第385行,在build_whole_model logits中,pred_outputs,dec_states = build_network(hparams,char2numY,inputs,dec_inputs,keepprob) 文件“ seq2ED-seq_sleep”。 295,位于build_network编码器状态 = tf.contrib.seq2seq.tile_batch(encoder_state,multiplier = hparams.beam_width) 文件“ /home/Student/s4518991/.local/lib/python3.6/site-packages/tensorflow/contrib/seq2seq/ python / ops / beam_search_decoder.py”,第126行,在tile_batch中 返回nest.mapstructure(lambda t:_tilebatch(t,multiplier),t) 文件“ /home/Student/s4518991/.local/lib/python3.6/site-packages/tensorflow/python/util/nest.py”,第515行,在map_structure 结构[0]中,[项中的x为func( x)], 文件“ /home/Student/s4518991/.local/lib/python3.6/site-packages/tensorflow/python/util/ nest.py”,第515行,位于 结构[0]中,[用于x项的func( x)], 文件“ /home/Student/s4518991/.local/lib/python3.6/site-packages/tensorflow/ contrib / seq2seq / python / ops / beam_search_decoder.py“,第126行, 返回nest.mapstructure(lambda t:_tilebatch(t,multiplier),t) _tile_batch中的文件“ /home/Student/s4518991/.local/lib/python3.6/site-packages/tensorflow/contrib/seq2seq/python/ops/beam_search_decoder.py”第85行 提高ValueError(“ t必须静态已知等级”) ValueError:t必须具有静态已知等级

I encountered the same difficulty, did you solve this problem, and if it solves, can you share the solution?