在 OpenFST (PyFST) 的弧中显示字符而不是整数

Showing characters instead of integers in arcs in OpenFST(PyFST)

我正在使用方法 linear_chain 接受 String。当我将其转换为 fst binary 然后转换为 DOT 格式时,我得到的是整数而不是字符。另外,我为每个正在读取的相应字母都有一个 SymbolTable。

我需要的是显示字符,通过命令行或直接在 Python 中编码。任何帮助或参考将不胜感激。

要在命令行上执行此操作,请确保同时提供输入和输出符号 table。该命令应该类似于

fstdraw --isymbols=input_syms.txt --osymbols=output_syms.txt fst.bin

我没有使用过 "PyFST",但我建议您使用 OpenFst 1.5.1 及更高版本中包含的 Python 绑定。 Python 支持在版本 1.5.x 中越来越好,所以最好使用 1.5.3 或更高版本。

如果使用 OpenFST 提供的 Python 绑定,请确保在尝试绘制之前设置符号 tables。

fst.input_symbols = your_symbol_table
fst.output_symbols = your_symbol_table
fst.draw("fst.dot")

此处提供了这些 Python 绑定的更多文档:http://www.openfst.org/twiki/bin/view/FST/PythonExtension

如果这没有帮助,你能post一些示例代码吗?