具体如下:
https://github.com/PaddlePaddle/models/blob/develop/conv_seq2seq/model.py
这个链接中有这一段代码:
ecoder_out, weight = decoder(
token_emb=trg_emb,
pos_emb=trg_pos_emb,
encoded_vec=encoded_vec,
encoded_sum=encoded_sum,
dict_size=trg_dict_size,
conv_blocks=dec_conv_blocks,
drop_rate=drop_rate,
with_bn=with_bn)
其中encoded_vec和encoded_sum是通过计算而来的,shape均为[1,512],
但是我直接改为以输入的方式,会报错,输入定义如下:
encoded_vec= paddle.layer.data(
name="prob_vec",
type=paddle.data_type.dense_array(1 * 512))
encoded_sum= paddle.layer.data(
name="prob_sum",
type=paddle.data_type.dense_array(1 * 512))
然后我在外面给予输入,会出现forward报错:
Thread [140482122340096] Forwarding __expand_layer_0__@__recurrent_group_0__, __recurrent_group_0__,
*** Aborted at 1527649220 (unix time) try "date -d @1527649220" if you are using GNU date ***
PC: @ 0x0 (unknown)
*** SIGSEGV (@0x30) received by PID 28050 (TID 0x7fc48affd700) from PID 48; stack trace: ***
@ 0x7fc5df31f100 (unknown)
@ 0x7fc5562003a9 paddle::ExpandLayer::forward()
@ 0x7fc55612ba4d paddle::NeuralNetwork::forward()
@ 0x7fc55611dab3 paddle::RecurrentGradientMachine::forward()
@ 0x7fc556209b43 paddle::RecurrentLayerGroup::forward()
@ 0x7fc55612ba4d paddle::NeuralNetwork::forward()
@ 0x7fc556108f54 paddle::TrainerThread::forward()
@ 0x7fc55610a268 paddle::TrainerThread::computeThread()
@ 0x7fc5c74a2870 (unknown)
@ 0x7fc5df317dc5 start_thread
@ 0x7fc5de93c21d __clone
@ 0x0 (unknown)
请问怎么解决
这个异常SIGSEGV,我忘了叫什么名字了,但通常是因为数据的问题,其中你说到encoded_vec的格式是[1,512],而你填的是1 * 512
还有你的以下代码我没有找到,你标注看看
多谢,确实是我数据问题