///** ///// Create a decoder by loading the serialized model from a specified ///// filename ///// ///// @param g2pmodel_file ///// the filename of the serialized model // */ //public G2PConverter(String g2pmodel_file) //{ // g2pmodel = ImmutableFst.loadModel(g2pmodel_file); // init(); //} /** * /// Initialize the decoder */ private void Init() { _skipSeqs.Add(Eps); _skipSeqs.Add(Sb); _skipSeqs.Add(Se); _skipSeqs.Add(Skip); _skipSeqs.Add("-"); // keep an augmented copy (for compose) Compose.Augment(0, _g2Pmodel, _g2Pmodel.Semiring); ArcSort.Apply(_g2Pmodel, new ILabelCompare()); var isyms = _g2Pmodel.Isyms; LoadClusters(isyms); // get epsilon filter for composition _epsilonFilter = Compose.GetFilter(_g2Pmodel.Isyms, _g2Pmodel.Semiring); ArcSort.Apply(_epsilonFilter, new ILabelCompare()); }