首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有人在用HFST工作吗?(赫尔辛基有限状态技术)

有人在用HFST工作吗?(赫尔辛基有限状态技术)
EN

Stack Overflow用户
提问于 2021-07-13 20:27:02
回答 1查看 49关注 0票数 1

最近,我正在尝试用Python的HFST设置一个有限状态转换器。我想让换能器做的很简单。如果单词的第一个字符是'o‘,则输出为“正”,如果同一个单词后面有字符,我将使用regex为每个字符输出empty。但我不会只接受"o“。

代码语言:javascript
复制
e.g. "oa" = "positive" , empty
     "aa" = 0
     "o"  = 0

到目前为止,我从hfst教程中学到了以下内容:

代码语言:javascript
复制
t = hfst.HfstBasicTransducer()
t.add_state(1)
t.add_state(2)
tr = hfst.HfstBasicTransition(1,"o","positive",0.0)
tr2 = hfst.regex("?:0")
t.add_transition(0,1,tr)
t.add_transition(1,2, tr2)

有没有人能帮帮我或者给我举一些其他的例子。我会非常感激的。

EN

回答 1

Stack Overflow用户

发布于 2021-10-13 23:11:26

缺少的一步是,lookup()将只返回以最终状态结束的路径,您可以使用transducer.set_final_weight(state, weight)指定最终状态。

代码语言:javascript
复制
>>> import hfst
>>> t = hfst.HfstBasicTransducer()
>>> t.add_state(1)
1
>>> tr = hfst.HfstBasicTransition(1,'o', 'positive',0.0)
>>> t.add_transition(0,tr)
>>> t.set_final_weight(1,0.0)
>>> t.lookup('o')
{'o': [('positive', 0.0)]}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68362408

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档