是否可以在TensorFlow方面自定义beam scorer实现?我在CTCBeamSearchDecoder C++类构造函数的注释中看到了这种可能性,但不知道如何为C++用户提供此功能?
具体问题是将语言模型插入到基于CTC的语音解码器中。语言模型可能是预训练的TensorFlow子图,能够输出光束分数调整的概率。但我们得想办法把这个注射到射束机里。
发布于 2016-06-22 10:18:51
目前没有任何API可供Python使用带有自定义记分器的语言模型。贡献是受欢迎的,但是在Python中实现这一点有一些困难,因为它需要在解码器op内的独立会话中运行TF LM子图,而且这些子图不能很好地混合在一起。
最简单的方法是在C++中实现,并需要扩展BaseBeamScorer类和BeamState (类似于在测试中可以看到的内容),并进一步运行CTCBeamSearchDecoder::Decode在通常在ctc_beam_search_decoder op中运行的tensorflow图的输出之上。
通过这样做,您的BeamScorer实现可以使用现有的任何语言模型,只需在将光束从一种状态扩展到另一种状态时返回适当的分数。
https://stackoverflow.com/questions/37947619
复制相似问题