keras ctc loss error: InvalidArgumentError: Saw a non-null label following a null label

在使用Keras和TensorFlow后端进行语音识别网络开发时,遇到CTC Loss错误:InvalidArgumentError - 系统检测到非空标签紧跟在空标签之后。问题源于输入MFCC特征序列和LSTM网络配置。尝试将ignore_longer_outputs_than_inputs设为True,但错误依然存在。解决方案是确保output_dim与标签类别总数一致,对于中文识别,设置output_dim为1422(包括1个空白类别)。
摘要由CSDN通过智能技术生成

在用keras-tf backend做语音识别网络时,采用MFCC特征值输入,LSTM网络和ctc loss function,出现了以下错误:

2018-07-02 11:32:45.861523: W tensorflow/core/framework/op_kernel.cc:1318] OP_REQUIRES failed at ctc_loss_op.cc:166 : Invalid argument: Saw a non-null label (index >= num_classes- 1) following a null label, batch: 4 num_classes: 29 labels:
Traceback (most recent call last):
  File "/media/chutz/000206BE0003636E/ASRT_SpeechRecognition/train_mspeech.py", line 47, in <module>
    ms.TrainModel(datapath, epoch = 50, batch_size = 8, save_step = 1000, filename= modelpath)
  File "/media/chutz/000206BE0003636E/ASRT_SpeechRecognition/SpeechModel25.py", line 215, in TrainModel
    #self._model.fit_generator(yielddatas, save_step, nb_worker=2)
  File "/home/chutz/anaconda3/lib/python3.5/site-packages/keras/legacy/interfaces.py", line 91, in wrapper
    return func(*args, **kwargs)
  File "/home/chutz/anaconda3/lib/python3.5/site-packages/keras/engine/training.py", line 2230, in fit_generator
    class_weight=class_weight)
  File "/home/chutz/anaconda3/lib/python3.5/site-packages/keras/engine/training.py", line 1883, in train_on_batch
    outputs = self.train_function(ins)
  File "/home/chutz/anaconda3/lib/python3.5/site-packages/keras/backend/tensorflow_backend.py", line 2482, in __call__
    **self.session_kwargs)
  File "/home/chutz/anaconda3/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 900, in run
    run_metadata_ptr)
  File "/home/chutz/anaconda3/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1135, in _run
    feed_dict_tensor, options, run_metadata)
  File "/home/chutz/anaconda3/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1316, in _do_run
    run_metadata)
  File "/home/chutz/anaconda3/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1335, in _do_call
    raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.InvalidArgumentError: Saw a non-null label (index >= num_classes - 1) following a null label, batch: 4 num_classes: 29 labels:
         [[Node: ctc/CTCLoss = CTCLoss[_class=["loc:@training/SGD/gradients/ctc/CTCLoss_grad/mul"], ctc_merge_repeated=true, ignore_longer_outputs_than_inputs=false, preprocess_collapse_repeated=false, _device="/job:localhost/replica:0/task:0/device:CPU:0"](ctc/Log/_123, ctc/ToInt64/_125, ctc/GatherNd, ctc/Squeeze_1/_127)]]
         [[Node: training/SGD/gradients/ctc/CTCLoss_grad/
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值