SPRAAK
|
Creation of phonetic decision trees for context clustering. More...
Creation of phonetic decision trees for context clustering.
spr_tree_create <-h HMMFileName> [-u UnitFileName] [-g MVGFileName] [-sel SelFileName] <-ci CIphones> <-cd CDphones> <-q Questions> [-counts State_counts] [-tree Output trees](-) [-global](flag: ) [-measure DistanceMeasure](MIXTURE) [-context_len Context_length](1) [-min_count Min_count](1) [-class_ratio class_ratio](1e9) [-norm_exp Norm_exponent](0.5) [-hash_len Hash_table_length](-1) [-LMspch Value](-10.0) [-logic](flag: )
-h<em>HMMFileName</em><a | name="spr_tree_create.h" class="el"> Input HMM with the distributions of the non-tied states. |
-u<em>UnitFileName</em><a | name="spr_tree_create.u" class="el"> Unit file name for the input HMM (.arcd or .cd format). |
-g<em>MVGFileName</em><a | name="spr_tree_create.g" class="el"> MVG file name for the input HMM. |
-sel<em>SelFileName</em><a | name="spr_tree_create.sel" class="el"> SELECT file name for the input HMM. |
-ci<em>CIphones</em><a | name="spr_tree_create.ci" class="el"> File with context independent phones. |
-cd<em>CDphones</em><a | name="spr_tree_create.cd" class="el"> File with context dependent phones. |
-q<em>Questions</em><a | name="spr_tree_create.q" class="el"> File with the phonetic questions. The format is described in the manual for routine read_questions(). |
-counts<em>State_counts</em><a | name="spr_tree_create.counts" class="el"> File with the occupancies, the number of frames assigned to each state in the input HMM. In later package versions, these numbers are stored in the HMM file itself (in this case this file is not necessary). |
-tree<em>Output | trees File to write the resulting trees to. |
-globalflag | If this flag is set, one global decision tree is constructed for all states of all phones. Else, one tree per context independent phone state is constructed. |
-measure<em>DistanceMeasure</em><a | name="spr_tree_create.measure" class="el"> Different splitting criteria can be chosen. The criterion defines which question will be chosen in a tree node. The choices are: MIXTURE (default, minimises the overlap between the distributions of the subtrees, both modelled as a mixture of gaussians), SINGLE (maximises the likelihood increase by splitting when the tree leaves are modelled with a single gaussian), DISCRETE (maximises the likelihood increase by splitting when the tree leaves are modelled with a discrete distribution), NONE (no criterion, e.g. to select best tree balancing question with option -class_ratio 1.000001). |
-context_len<em>Context_length</em><a | name="spr_tree_create.context_len" class="el"> Context length (1 for triphones, 2 for quinphones). |
-min_count<em>Min_count</em><a | name="spr_tree_create.min_count" class="el"> Minimal occupancy for both subtrees when the decision about the question in a tree node is made. Only if both subtrees have an occupancy higher than or equal to this value, the question can be chosen. The higher this value, the smaller the resulting trees. |
-class_ratio<em>class_ratio</em><a | name="spr_tree_create.class_ratio" class="el"> The ratio between the occupancies of both subtrees for a question is used to define a class to which each question belongs for a tree node. The class is defined as: class = floor [ log(largest occup./smallest occup.) / log(class_ratio) ]. A question with a lower class, for which both subtrees are better balanced in occupancy, will be preferred over a question with a higher class (even if the latter performs better on the chosen splitting criterion). This can be used to force more balanced trees, as was done before for the criterion based on mixtures (which does not balance the trees automatically), or when no criterion is used (with class_ratio 1.000001, the best balancing question will be chosen). |
-norm_exp<em>Norm_exponent</em><a | name="spr_tree_create.norm_exp" class="el"> This option only concerns the MIXTURE criterion. In order to balance the tree automatically, the overlap is normalised by dividing it by the product of the occupancies of both subtrees, where this product is carried to the power given by this option. The better balanced subtrees a question generates, the larger the product is thus the lower the overlap measure, thus the better this question will be ranked. If 0.0 is chosen, no normalisation is applied. |
-hash_len<em>Hash_table_length</em><a | name="spr_tree_create.hash_len" class="el"> This option only concerns the MIXTURE criterion. To increase the speed of the calculations for the overlap between mixtures of gaussians, the overlap between single gaussians is stored in a hash table. The hash table length is defined with this option. The default table length, set for the case where one decision tree for each phone state is constructed, is the double of the square of the maximal number of gaussians per state. For a global decision tree, all overlap values are calculated only once in advance, and the largest values are stored in a hash table. Therefore, as the smaller overlaps are just neglected in the calculations, only approximate overlaps for mixtures of gaussians will be calculated. The number of stored values can be given with this option, the hash table is 30% larger. The higher the number of stored values, the better the approximation. The maximal value is 10000000, corresponding to 210 MB memory. |
-LMspch<em>Value</em><a | name="spr_tree_create.LMspch" class="el"> Minimal (logarithmic) weight for a gaussian in a state, as generally imposed in model estimation. With this option, these weights will be turned to zero before the tree construction starts. |
-logicflag | If this flag is set, the more logic question is chosen when two questions result in the same sets of yes-states and no-states. For instance a question about the left context is preferred for the first node in a model. |
Creation of phonetic decision trees for context clustering. Creates a phonetic decision tree based on the distributions for the non-tied state models. Based on this tree, the different non-tied states can be tied according to the phonetic context. At each point in the decision tree, the optimal (optimal in the sense of the splitting criterion that is used) phonetic question is selected. The resulting decision tree is written into a file. Corresponding models with tied states can be generated with the programme tree2model.