📄 hmm_00.cc
字号:
// file: $isip/class/pr/HiddenMarkovModel/hmm_00.cc// version: $Id: hmm_00.cc//// isip include files//#include "HiddenMarkovModel.h"//------------------------------------------------------------------------//// required public methods////-----------------------------------------------------------------------// method: destructor//// arguments: none//// return: none//// this is the default destructor//HiddenMarkovModel::~HiddenMarkovModel() {}// method: default constructor//// arguments: none//// return: none//// this is the default constructor//HiddenMarkovModel::HiddenMarkovModel() { // initialize protected data // algorithm_d = DEF_ALGORITHM; implementation_d = DEF_IMPLEMENTATION; adapt_supervision_mode_d = DEF_ADAPT_SUPERVISION_MODE; adapt_sequence_mode_d = DEF_ADAPT_SEQUENCE_MODE; context_mode_d = DEF_CONTEXT_MODE; function_mode_d = DEF_FUNCTION_MODE; update_mode_d = DEF_UPDATE_MODE; output_mode_d = DEF_OUTPUT_MODE; output_format_d = DEF_OUTPUT_FORMAT; output_type_d = DEF_OUTPUT_TYPE; num_iterations_d = DEF_NUM_ITERATIONS; num_levels_d = DEF_NUM_LEVELS; num_mixtures_d = DEF_NUM_MIXTURES; verify_d = DEF_VERIFY; transcription_bounds_d = DEF_TRANSCRIPTION_BOUNDS; beta_threshold_d = DEF_BETA_PRUNING_THRESHOLD; trellis_d = (BiGraph<TrainNode>*)NULL; alignment_level_d = DEF_ALIGNMENT_LEVEL; initial_level_d = DEF_INITIAL_LEVEL; context_level_d = DEF_CONTEXT_LEVEL; context_order_d = DEF_CONTEXT_ORDER; }// method: copy constructor//// arguments: none//// return: none//// this is the copy constructor//HiddenMarkovModel::HiddenMarkovModel(const HiddenMarkovModel& arg) { assign(arg);}//-----------------------------------------------------------------------------//// we define non-integral constants in the default constructor// //-----------------------------------------------------------------------------// constants: required constants such as class name//const String HiddenMarkovModel::CLASS_NAME(L"HiddenMarkovModel");// constants: NameMap(s) for the enumerated values//const NameMap HiddenMarkovModel::ALGO_MAP(L"DECODE, TRAIN, MODEL_CREATION, INITIALIZE, MIXTURE_SPLITTING, CONTEXT_GENERATION, TRAIN_PARAMETER_TYING, TEST_PARAMETER_TYING, FORCED_ALIGNMENT, ADAPT_DECODE");const NameMap HiddenMarkovModel::IMPL_MAP(L"VITERBI, STACK, BAUM_WELCH, GLOBAL, VARIANCE_SPLITTING, SYMBOL_GENERATION, ML, MODEL_GENERATION");const NameMap HiddenMarkovModel::ADAPT_SUP_MODE_MAP(L"SUPERVISED, UNSUPERVISED");const NameMap HiddenMarkovModel::ADAPT_SEQ_MODE_MAP(L"INCREMENTAL, BATCH");const NameMap HiddenMarkovModel::OUTPUT_MODE_MAP(L"FILE, TRANSFORM, LIST, DATABASE");const NameMap HiddenMarkovModel::CONTEXT_MODE_MAP(L"SYMBOL_ONLY, SYMBOL_INTERNAL, CROSS_SYMBOL");const NameMap HiddenMarkovModel::FUNCTION_MODE_MAP(L"NONE, GRAMMAR_DECODING, NETWORK_DECODING, NETWORK_RESCORING, NETWORK_GENERATION, NETWORK_VERIFICATION, ACCUMULATE, UPDATE");const NameMap HiddenMarkovModel::OUTPUT_FORMAT_MAP(L"NIST_SCORE, NATIVE, JSGF");const NameMap HiddenMarkovModel::OUTPUT_TYPE_MAP(L"TEXT, BINARY");const NameMap HiddenMarkovModel::UPDATE_MODE_MAP(L"TRANSITIONS, OBSERVATIONS, ALL");// constants: default values//const String HiddenMarkovModel::DEF_TRANSCRIPTION_LEVEL(L"unknown");const String HiddenMarkovModel::DEF_FORCE_ALIGNMENT_LEVEL(L"unknown");// constants: i/o related constants//const String HiddenMarkovModel::DEF_PARAM(L"");const String HiddenMarkovModel::PARAM_TRANSCRIPTION_LEVEL(L"transcription_level");const String HiddenMarkovModel::PARAM_FORCE_ALIGNMENT_LEVEL(L"alignment_level");const String HiddenMarkovModel::PARAM_ALGORITHM(L"algorithm");const String HiddenMarkovModel::PARAM_IMPLEMENTATION(L"implementation");const String HiddenMarkovModel::PARAM_ADAPT_SUPERVISION_MODE(L"adapt_supervision_mode");const String HiddenMarkovModel::PARAM_ADAPT_SEQUENCE_MODE(L"adapt_sequence_mode");const String HiddenMarkovModel::PARAM_TRANSCRIPTION_BOUNDS(L"force_transcription_bounds");const String HiddenMarkovModel::PARAM_NUM_LEVELS(L"num_levels");const String HiddenMarkovModel::PARAM_NUM_MIXTURES(L"num_mixtures");const String HiddenMarkovModel::PARAM_UPDATE_LEVELS(L"update_levels");const String HiddenMarkovModel::PARAM_NUM_ITERATIONS(L"num_iterations");const String HiddenMarkovModel::PARAM_VAR_FLOOR_FILE(L"variance_floor_file");const String HiddenMarkovModel::PARAM_VAR_FLOOR(L"variance_floor");const String HiddenMarkovModel::PARAM_BETA_THRESHOLD(L"beta_threshold");const String HiddenMarkovModel::PARAM_MIN_MPD(L"min_mpd");const String HiddenMarkovModel::PARAM_MIN_OCCUPANCY(L"min_occupancy");const String HiddenMarkovModel::PARAM_MIN_MODEL_COUNT(L"min_model_count");const String HiddenMarkovModel::PARAM_LANGUAGE_MODEL_FILE(L"language_model_file");const String HiddenMarkovModel::PARAM_ACOUSTIC_MODEL_FILE(L"acoustic_model_file");const String HiddenMarkovModel::PARAM_CONFIGURATION_FILE(L"config_file");const String HiddenMarkovModel::PARAM_FRONT_END_FILE(L"frontend_file");const String HiddenMarkovModel::PARAM_TRANS_DB_FILE(L"transcription_database_file");const String HiddenMarkovModel::PARAM_AUDIO_DB_FILE(L"audio_database_file");const String HiddenMarkovModel::PARAM_UPDATE_LANGUAGE_MODEL_FILE(L"update_language_model_file");const String HiddenMarkovModel::PARAM_UPDATE_ACOUSTIC_MODEL_FILE(L"update_acoustic_model_file");const String HiddenMarkovModel::PARAM_QUES_ANS_FILE(L"phonetic_ques_ans_file");const String HiddenMarkovModel::PARAM_PHONETIC_DT_FILE(L"phonetic_decisiontree_file");const String HiddenMarkovModel::PARAM_PHONETIC_DT_SPLIT_THRESHOLD(L"split_threshold");const String HiddenMarkovModel::PARAM_PHONETIC_DT_MERGE_THRESHOLD(L"merge_threshold");const String HiddenMarkovModel::PARAM_PHONETIC_DT_NUM_OCC_THRESHOLD(L"num_occ_threshold");const String HiddenMarkovModel::PARAM_CONTEXT_LEVEL(L"context_level");const String HiddenMarkovModel::PARAM_CONTEXT_ORDER(L"context_order");const String HiddenMarkovModel::PARAM_OUTPUT_MODE(L"output_mode");const String HiddenMarkovModel::PARAM_OUTPUT_FORMAT(L"output_format");const String HiddenMarkovModel::PARAM_OUTPUT_TYPE(L"output_type");const String HiddenMarkovModel::PARAM_OUTPUT_LEVELS(L"output_levels");const String HiddenMarkovModel::PARAM_UPDATE_MODE(L"update_mode");const String HiddenMarkovModel::PARAM_FUNCTION_MODE(L"function_mode");const String HiddenMarkovModel::PARAM_CONTEXT_MODE(L"context_mode");const String HiddenMarkovModel::PARAM_OUTPUT_FILE(L"output_file");const String HiddenMarkovModel::PARAM_ACCUMULATOR_FILE(L"accumulator_file");const String HiddenMarkovModel::PARAM_ACCUMULATOR_LIST(L"accumulator_list");const String HiddenMarkovModel::PARAM_OUTPUT_LIST(L"output_list");const String HiddenMarkovModel::PARAM_CONTEXT_LIST(L"context_list");const String HiddenMarkovModel::OPTION_OUT_MODE_FILE(L"FILE");const String HiddenMarkovModel::OPTION_OUT_MODE_TRANSFORM(L"TRANSFORM");const String HiddenMarkovModel::OPTION_OUT_MODE_LIST(L"LIST");const String HiddenMarkovModel::OPTION_OUT_FORM_NIST_SCORE(L"NIST_SCORE");const String HiddenMarkovModel::OPTION_OUT_FORM_NATIVE(L"NATIVE");const String HiddenMarkovModel::OPTION_OUT_FORM_JSGF(L"JSGF");const String HiddenMarkovModel::OPTION_TRANSCRIPTION_LEVEL(L"level");const String HiddenMarkovModel::OPTION_UPDATE_TRANSITIONS(L"TRANSITIONS");const String HiddenMarkovModel::OPTION_UPDATE_OBSERVATIONS(L"OBSERVATIONS");const String HiddenMarkovModel::OPTION_TEXT(L"TEXT");const String HiddenMarkovModel::OPTION_BINARY(L"BINARY");const String HiddenMarkovModel::OPTION_UPDATE_ALL(L"ALL");const String HiddenMarkovModel::OPTION_FUNCTION_NONE(L"NONE");const String HiddenMarkovModel::OPTION_FUNCTION_GRAMMAR_DECODING(L"GRAMMAR_DECODING");const String HiddenMarkovModel::OPTION_FUNCTION_NETWORK_DECODING(L"NETWORK_DECODING");const String HiddenMarkovModel::OPTION_FUNCTION_NETWORK_RESCORING(L"NETWORK_RESCORING");const String HiddenMarkovModel::OPTION_FUNCTION_NETWORK_GENERATION(L"NETWORK_GENERATION");const String HiddenMarkovModel::OPTION_FUNCTION_NETWORK_VERIFICATION(L"NETWORK_VERIFICATION");const String HiddenMarkovModel::OPTION_FUNCTION_ACCUMULATE(L"ACCUMULATE");const String HiddenMarkovModel::OPTION_FUNCTION_UPDATE(L"UPDATE");// static instantiations: memory manager, debug level and verbosity//MemoryManager HiddenMarkovModel::mgr_d(sizeof(HiddenMarkovModel), HiddenMarkovModel::CLASS_NAME);Integral::DEBUG HiddenMarkovModel::debug_level_d = Integral::NONE;Integral::DEBUG HiddenMarkovModel::verbosity_d = Integral::NONE;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -