LexTreeState API
2015-06-22 15:58
218 查看
<span style="font-size:24px;"> abstract class LexTreeState implements SearchState, SearchStateArc Lex树语言专家返回语言状态给搜索管理。此类形成了所有返回的语言状态的基本的实现。此LexTreeState 跟踪了进入此状态的概率(语言概率加插入概率)以及单元历史。单元历史由与左,中心,右场景相关的lextree 节点。 此为一个抽象类,子类必须实现getSuccessorss 方法。 本类的属性: private final Node node;与状态相关的节点。 private final WordSequence wordSequence;为历史字字的历史是直到此点指针。 protected final boolean collapsed;是否收缩。 final float currentSmearTerm;当前的smear项。 final float currentSmearProb;当前的smear概率。 本类的构造方法: LexTreeState(Node node, WordSequence wordSequence, float smearTerm,float smearProb, boolean collapsed);给定属性参数创建此类对象。 本类的方法: public String getSignature();为此状态获得独特的签名。签名建立代码是缓慢的,仅被用于对时间不是很敏感的任务如画状态。返回的是字符串。 public float getSmearTerm();获得当前的smear项。即currentSmearTerm public float getSmearProb();获得当前的smear概率。 public int hashCode();为此对象产生一个hashcode。 public boolean equals(Object o);决定给定的对象是否等于此对象。等于为true。此需要比较器决定,是否收缩等。 public SearchState getState();返回的是这个搜索状态的一个后续。本方法返回的就本对象本身。 public float getProbability() ;获得进入此状态的组合概率为语言概率加插入概率之和。 public float getLanguageProbability();返回的是进入此状态的语言概率,在本类中返回的是logone,为log域的。一般需要子类实现。 public float getInsertionProbability();获得进入此状态的插入概率,本类返回的是logone,一般由子类重新实现。 public boolean isEmitting();决定此状态是否为一个发射状态,本类此方法返回的是false,一般由子类重载。 public boolean isFinal();决定此状态是否是一个终止状态。是为true,本类返回的是false,一般应由子类重载实现。 protected Node getNode();获得hmm树节点表示的单元。返回的是单元 lex节点。本方法返回的是node属性。 public WordSequence getWordHistory();返回的此状态的字序列。即历史字。wordSequence public Node getLexState();返回的是node属性。 public SearchStateArc[] getSuccessors();返回的是此状态的后续列表。为搜索状态弧列表。 protected SearchStateArc[] getSuccessors(Node theNode);返回此状态的连接后续的弧。 Protected SearchStateArc createWordStateArc(WordNode wordNode, HMMNode lastUnit, LexTreeState previous);为给定的字节点创建一个字搜索弧。wordNode为字节点。lastUnit为前一hmm节点,previous为前一状态。返回的其实是实现了搜索状态弧接口的状态。本方法返回的2种状态中的一种: LexTreeWordState,LexTreeEndWordState。本方法需要考虑三种情况。 SearchStateArc createUnitStateArc(HMMNode hmmNode, LexTreeState previous) ;为给定的单元节点创建一个单元搜索状态。输入为hmmNode单元节点。Previous前一状态。如果我们想要一个单元状态则创建它,否则的话获得此单元的第一个hmm状态。 SearchStateArc createEndUnitArc(EndNode endNode, LexTreeState previous);为给定的单元状态创建一个单元搜索状态。endNode输入为endnode单元节点。Previous为前一状态。返回的是LexTreeEndUnitState。 public String toString();返回的是此对象的字符串表示。 public String toPrettyString();返回的是此对象的字符串的pretty版本。 SearchStateArc[] getCachedArcs();从缓存中得到此状态的后续弧。返回的是此状态的后续弧集。如果在缓存中没有发现则返回为null。 void putCachedArcs(SearchStateArc[] arcs);把给定的弧的集合为数组放入缓存中。即arccache。 abstract public int getOrder();获得状态的阶。 </span>
相关文章推荐
- 使用Sphinx对索引进行搜索
- 关于Sphinx创建全文检索的索引介绍
- sphinx增量索引的一个问题
- C#中调用SAPI实现语音识别的2种方法
- mysql中使用sphinx搜索子域名需注意的问题
- Sphinx/MySQL 协议支持与SphinxQL应用实例
- 深入解析php之sphinx
- php启用sphinx全文搜索的实现方法
- sphinx使用及其简单配置方法
- Android实现语音识别代码
- 测试sphinx/coreseek xmlpipe2 support NOT compiled
- 电商平台技术架构 多用户商城 仿天猫 淘宝 亚马逊 当当 阿里巴巴 大数据模块 低成本运维 高效开发
- sphinx服务器安装及配置详解
- 如何给Sphinx做增量索引更新
- 模式识别
- CentOS7下安装coreseek
- 谷歌眼镜GDK开发指南之语音输入
- CoreSeek快速安装 sphinx
- coreseek 利用python作数据源建立索引
- sphinx/coreseek如何及时删除索引里的数据呢?