AbstractSausageMaker API

<span style="font-size:24px;">public abstract class AbstractSausageMaker implements ConfidenceScorer, Configurable 
此类为所有sausage制造者即 sausage makers的父类。
本类的属性:
 @S4Double(defaultValue = 1.0)
 public final static String PROP_LANGUAGE_WEIGHT = "languageWeight";属性定义了语言的权重。
protected float languageWeight;
 protected Lattice lattice;字格。
本类的构造方法:
  public AbstractSausageMaker(){};空的构造方法。
本类的方法:
 public void newProperties(PropertySheet ps);设置属性。为语言权重。
  protected static int getOverlap(Node n, int startTime, int endTime);根据输入的节点来获得节点的开始和结束时间并与输入的时间比较,来获得时间间隔。Math.min(n.getEndTime(), endTime) - Math.max(n.getBeginTime(), startTime);
 protected static int getOverlap(Node n1, Node n2);来获得2输入节点重叠时间。
  protected boolean hasOverlap(Cluster cluster1, Cluster cluster2) ;如果2个给定的cluster对象在时间上有重叠则返回为true。分支为false。
  protected List<Node> makeWordSubCluster(List<Node> cluster, String word);通过从所有节点中提取与给定的字相关的节点来形成一个子集群。输入的cluster为父集群。Word为给定字的拼写。返回的是cluster中与word相关的节点列表。
 protected double clusterProbability(List<Node> cluster);计算输入的cluster的后验概率的和。输入的cluster为要求后验概率和的节点集。
 protected double clusterProbability(Cluster cluster) ;获得输入cluster对象的后验概率的总和。
  protected double wordSubClusterProbability(List<Node> cluster, String word);返回的是给定的cluster中的与输入的字拼写相关的子集群相关的后验概率和。输入参数:cluster为子集群的来源集群,word为特定字的拼写。
protected Cluster makeWordSubCluster(Cluster cluster, String word);从输入的cluster中提取与word相关的节点,并根据输入的cluster的开始和结束时间来创建一个新cluster对象,此中的节点仅包含与输入word相关的节点。
 protected void printClusters(List<Cluster> clusters);打印出cluster列表为调试。
 protected Sausage sausageFromClusters(List<Cluster> clusters);把lattice节点的cluster列表放入一个sausage对象中。输入的clusters为按正确拓扑顺序的节点cluster对象列表。返回的是与cluster列表相关的sausage。
本类的内部类:
class Cluster implements Iterable<Node> 
A cluster 是节点集和他们的开始时间和结束时间的类。一个sausageMarker建立起来,一个一些cluster序列变成了一个sausage。
  public int startTime;
 public int endTime;
 private List<Node> elements = new LinkedList<Node>();节点集
构造方法:
  public Cluster(Node n);给定节点对象来创建一个cluster对象。开始时间和结束时间为输入节点的开始时间和结束时间。并此输入节点加入element即节点集中。
public Cluster(int start, int end);给定开始时间和结束时间来创建对象。
本类的方法:
   public void add(Node n);把输入的节点添加入此cluster对象,并根据需要来改变开始和结束时间。
 public void add(Cluster c) ;把输入的cluster对象添加入此cluster对象中。并根据输入的c的开始和结束时间来是否改变此对象的开始和结束时间。
   public Iterator<Node> iterator();获得此cluster对象的迭代器,此迭代器用来迭代此(访问)cluster对象的中节点。
 public String toString() ;此对象的字符串表示。
public void setElements(List<Node> elements);设置此cluster对象的elements。即设置它的节点。
内部类:
class ClusterComparator implements Comparator<Cluster> 
根据cluster的拓扑关系来比较clusters。此依赖于cluster的组成成分,这些成分在sausage创建处理中是合法的。
  public int compare(Cluster cluster1, Cluster cluster2) ;比较输入的2个cluster对象。如果cluster1中有节点是是cluster2对象的节点的父节点则返回为-1,如果cluster2中有节点是是cluster1对象的节点的父节点则返回为1。其它情况返回为0.</span>




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值