首页 Paddle框架 帖子详情
CRNN训练的时候Loss一直是0
收藏
快速回复
Paddle框架 问答深度学习模型训练 4385 26
CRNN训练的时候Loss一直是0
收藏
快速回复
Paddle框架 问答深度学习模型训练 4385 26

下面还有很多step,也都是0。。。

就是想问一下哪些原因会导致这种情况

0
收藏
回复
全部评论(26)
时间顺序
thinc
#22 回复于2020-11
不行用“麻雀”先跑下吧~~

网络“麻雀”还是数据“麻雀”都不太管用

0
回复
AIStudio810258
#23 回复于2020-12
thinc #22
网络“麻雀”还是数据“麻雀”都不太管用

这得请老中医号号脉了~~

0
回复
thinc
#24 回复于2020-12
这得请老中医号号脉了~~

太玄乎了

0
回复
CQ-Shang
#25 回复于2020-12
thinc #10
找到原因了!果然是ctc_loss函数计算出问题 ctc_loss函数里头有个参数叫做 label_lengths ,这是用来标识label中每个序列的长度,之所以说 每个,是因为这个参数的shape是 [batch_size]。 因为CRNN里头的训练标签是不定长的,而定义占位符InputSpec的时候需要指定shape。有两种办法可以实现,一个是把所有标签padding到最长的标签,一个是用LoDTensor。然而LoDTensor在2.0rc里面没找到相关使用方法介绍,就用的padding,于是乎在ctc_loss函数里把label_lengths都写成了最长标签的值。 解决办法也很简单,重新写一个list统计每个label的长度,然后用这个list作为参数label_lengths。 至于为什么会得到0,这个还得研究研究......
展开

厉害

0
回复
勇敢者2860102
#26 回复于2023-05

6

0
回复
qianyuhang10
#27 回复于2023-06

不错。

0
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户