0

我正在阅读最重要的示例:关于标记化的http://www.openfst.org/twiki/bin/view/FST/FstExamples 。

在示例中,他们创建了三个 fst:Mars.fstMartian.fstman.fst,并手动运行一些 fst 命令以将它们合并为一个大传感器。他们从 中得到“Mars”、“Martian”和“man”三个wotw.syms词,共有 7102 个词。

我的问题是,有没有一种聪明的方法可以为所有 7102 个单词创建一个word.fst,以便所有 7102 个单词都可以制成一个大自动机,还是必须手动完成,就像他们为三个单词 Martian、Mars 所做的那样,和男人?

4

1 回答 1

1

他们给出了一个脚本:https ://www.openfst.org/twiki/pub/FST/FstExamples/makelex.py.txt 我们可以简单地:

cat wotw.syms | python2 makelex.py > lexicons_text.fst
fstcompile --isymbols=ascii.syms --osymbols=wotw.syms lexicon_text.fst lexicon.fst
fstrmepsilon lexicon.fst | fstdeterminize | fstminimize >lexicon_opt.fst
于 2021-12-05T12:07:00.913 回答