HMMNode API

<span style="font-size:24px;">class HMMNode extends UnitNode
表示了在hmm树中的一个代表hmm的节点。
由于在大词汇量的识别中,存在节点数十分的巨大,因此尽可能的节省空间是很重要的。当建立hmm节点时,我们把右场景保持在一个集合中以便很容易的实现对副本进行剪枝。一旦树被完全建立起来了,我们就不在需要把右场景当做一个集合来管理,一个简单的数组就可行了。Freeze方法是把集合转换成单元数组。Rc右场景对象在创建成功中是集合,贼freeze后是数组。
本类的属性:
 private final HMM hmm;此节点表示的hmm
 private Object rcSet;右场景。
本类的构造方法:
 HMMNode(HMM hmm, float probablilty);根据给定的hmm来创建节点。输入hmm为包含的hmm。Probablilty表示概率。此方法中设置了hmm节点的类型。
本类的方法:
Unit getBaseUnit();返回的此hmm节点的基本单元即base unit。
HMM getHMM();返回的是此节点的hmm,即hmm属性。
 HMMPosition getPosition();返回的是此hmm节点的hmm的hmm位置。
 HMM getKey();返回的是关键字,本方法即此hmm节点的hmm。
 public String toString();返回的是此对象的字符串表示。
 void addRC(Unit rc);添加一个右场景入此节点可能的右场景集中,此仅在字结尾处的hmm才需要。输入:rc为表示场景的单元对象。
 void freeze();freeze此节点。把集合转换为数组以便节省内存空间。即把节点中的集合对象变为数组对象。
 private Set<Unit> getRCSet();获得右场景的集合表现形式。如果为null,则会new一个空的新的集合返回。
 Unit[] getRC();返回的此节点右场景的数组表现形式。即右场景的数组。</span>


你可能感兴趣的:(sphinx,语音识别)