FLming/CRNN.tf2

你好,DatasetBuilder里面的tokenize有点疑问想请教一下作者

kingwpf opened this issue · 7 comments

作者你好,我发现你在tokenize里面用了tf.ragged.map_flat_values这个方法,这里会用0作为填充的index,但是index=0在字典里面又是有对应的字符的,请问这样训练的话会不会出问题呢?另外字典里面的最后一个BLK是用来做什么的呢?

tf.ragged.map_flat_values不会填充值,只是一个映射。BLK是作为blank,其实写什么都行。

image
我把这个结果打出来看了一下是这样的,这里的0只是为了可视化才会填充的吗?

dataset类输出的y值应该是一个sparsetensor呀?你输出的时候用to_tensor了吧。这个类方法会填充值

dataset类输出的y值应该是一个sparsetensor呀?你输出的时候用to_tensor了吧。这个类方法会填充值

好的好的,我的确是to_tensor了,谢谢。
另外还有一个问题要麻烦你一下,我是用自己跑的数据集,然后从头训练,loss从90左右降到50的样子就会出现inf,然后一会就变成nan了,请问你这个可能是什么问题呢?

ctc loss好像蛮容易跑飞了的,和数据有很大的关系。如果是梯度爆炸了的话,适度使用梯度剪裁等方式处理一下?应该不会是梯度消失大概。

ctc loss好像蛮容易跑飞了的,和数据有很大的关系。如果是梯度爆炸了的话,适度使用梯度剪裁等方式处理一下?应该不会是梯度消失大概。

嗯嗯,谢谢你

ctc loss好像蛮容易跑飞了的,和数据有很大的关系。如果是梯度爆炸了的话,适度使用梯度剪裁等方式处理一下?应该不会是梯度消失大概。

我试着加大sequence length就好了,应该是我的数据里面label长度太长导致的