LexTreeState API

来源:互联网 发布:软件平台验收报告 编辑:程序博客网 时间:2024/05/29 09:57
 <span style="font-size:24px;"> abstract class LexTreeState implements SearchState, SearchStateArcLex树语言专家返回语言状态给搜索管理。此类形成了所有返回的语言状态的基本的实现。此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>

0 0
原创粉丝点击