gpt4 book ai didi

python - Tensorflow ctc_loss_calculator : No valid path found

转载 作者:行者123 更新时间:2023-12-05 08:08:59 25 4
gpt4 key购买 nike

在运行我的神经网络(双向 LSTM)进行音频识别时,我使用的是 Conectionist 时间分类 (CTC)。但在某些时候,训练网络时我几乎每批都会收到来自 Tensorflow 的警告。

W tensorflow/core/util/ctc/ctc_loss_calculator.cc:144] No valid path found.

这会导致损失无限大且训练中断。

Epoch 1/5000, train_cost = inf, train_ler = 3.891, valid_cost = inf, valid_ler = 5.433
Train decoding:
Original: you want to go over and see his gang throw dirt
Decoded: hlvoyvrofuvulovowovwvoxvovoxwyzlwkngitewewewktwlwctnbkmpajxozovofovfvfwnsfvfnfavtieitstyvubeabmbmbjljaceutztqectpmgogovgvovjuvsvsihskikqlvnsmsmsmhmvwiecececeitmhmhfvrf tiet e gekesketksmvamnmamgmnm det ietutswsezvzovovjiecgs gs smsjs s g la ah kjrkmasanxrsdrhdrxgdhdaphxda th sxhsxrdsrsvr krs farsr rdrdakr lrsrsvrsrsrdrsrsraisdsrhrhdrajfrdhxrd d

这到底是什么意思,我该如何解决这个问题?

最佳答案

我一直在处理同样的问题并找到了 this article .这表明导致此问题的可能原因可能如下:

  1. 数据序列比标签序列短。
  2. 数据序列太长。

我一直在尝试使用 ctc 损失函数为 OCR 训练 CNN+RNN 模型,但遇到了同样的问题。我尝试降低学习率,但问题仍然存在。

当我第一次尝试训练模型时,我的数据集有超过 70,000 个数据实例,当我减少训练过程中使用的数据实例数量时,它对我有用。

不确定这是最好的选择,但可以理解的是,损失函数会随着太长的序列而爆炸。如果您的数据序列比标签序列长并且它仍然抛出 No valid path found. 警告,这可能就是原因。

关于python - Tensorflow ctc_loss_calculator : No valid path found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44195801/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com