public class Viterbi extends Object
| 构造器和说明 |
|---|
Viterbi() |
| 限定符和类型 | 方法和说明 |
|---|---|
static int[] |
compute(int[] obs,
int[] states,
double[] start_p,
double[][] trans_p,
double[][] emit_p)
求解HMM模型,所有概率请提前取对数
|
static void |
compute(List<Vertex> vertexList,
TransformMatrixDictionary<Nature> transformMatrixDictionary)
特化版的求解HMM模型
|
static <E extends Enum<E>> |
computeEnum(List<EnumItem<E>> roleTagList,
TransformMatrixDictionary<E> transformMatrixDictionary)
标准版的Viterbi算法,查准率高,效率稍低
|
static <E extends Enum<E>> |
computeEnumSimply(List<EnumItem<E>> roleTagList,
TransformMatrixDictionary<E> transformMatrixDictionary)
仅仅利用了转移矩阵的“维特比”算法
|
public static int[] compute(int[] obs,
int[] states,
double[] start_p,
double[][] trans_p,
double[][] emit_p)
obs - 观测序列states - 隐状态start_p - 初始概率(隐状态)trans_p - 转移概率(隐状态)emit_p - 发射概率 (隐状态表现为显状态的概率)public static void compute(List<Vertex> vertexList, TransformMatrixDictionary<Nature> transformMatrixDictionary)
vertexList - 包含Vertex.B节点的路径transformMatrixDictionary - 词典对应的转移矩阵public static <E extends Enum<E>> List<E> computeEnum(List<EnumItem<E>> roleTagList, TransformMatrixDictionary<E> transformMatrixDictionary)
E - EnumItem的具体类型roleTagList - 观测序列transformMatrixDictionary - 转移矩阵public static <E extends Enum<E>> List<E> computeEnumSimply(List<EnumItem<E>> roleTagList, TransformMatrixDictionary<E> transformMatrixDictionary)
E - EnumItem的具体类型roleTagList - 观测序列transformMatrixDictionary - 转移矩阵Copyright © 2014–2018 码农场. All rights reserved.