1

我需要一个在 FST 运行期间打印/可视化输入/输出对的应用程序。我的意思是,对于 fst 的每个状态,它需要打印出一个元组,其中包含该状态的输入和该状态的输出。现在我可以生成与fomahfstxfst fst工具兼容的 fst 文件。所以,我想我需要的可视化工具应该足以兼容其中任何一个。有没有人知道这样的工具?

4

1 回答 1

0

foma可以生成dot格式文件,可以通过graphviz. 在 Debian/Ubuntu 上,graphviz安装

$ sudo apt-get install graphviz

foma可以读取att格式文件(由hfst-fst2txtHFST 可以读取lt-print的任何内容或来自lttoolbox的任何内容生成);假设你有这样一个名为 的文件myfst.att,你可以这样做

$ foma
foma[0]: read att myfst.att
foma[1]: view

显示完整的 FST。这将显示 FST 状态之间每个边缘上的每个输入/输出对。

但是你说“在运行期间”——你是说还要显示“实时状态”的队列吗?如果是这样,我不知道有什么工具可以做到这一点,那就太好了!您可以做的一件事是修改 HFST 源以在处理时输出实时状态列表和字符串向量,然后将其与dot文件结合起来,例如在实时状态中显示颜色。(如果是这样,你可能想把它带到#hfstirc.freenode.net 上的频道。)


https://ftyers.github.io/2017-%D0%9A%D0%9B_%D0%9C%D0%9A%D0%9B/hfst.htmlatt2dot.py上还有一个脚本可以在命令行使用就像 您喜欢更具脚本性的东西一样。如果您使用 HFST 的 Python 库中的它,您可能能够更轻松地获得分析每个部分的“实时状态”。hfst-fst2txt chv.lexc.hfst | python3 att2dot.py | dot -Tpng -ochv.lexc.png

于 2017-11-22T08:21:14.820 回答