ISSN: 1139-8736
Depósito Legal: B-8714-2001

5.3.3.1 Modificación del Algoritmo de Un Paso para la Obtención delas N Mejores Hipótesis de Salida

A continuación se incluye el pseudocódigo del algoritmo de “Un Paso” modificado para generar varias hipótesis de salida, intentando resaltar los aspectos más relevantes del cambio sufrido y manteniendo la estructura y la nomenclatura de los pseudocódigos anteriores (el de “Un Paso”) para facilitar la tarea de entender el proceso de cambio que ha sufrido.

ALGORITMO DE “UN PASO”
ESPACIO ESTÁTICO + N MEJORES HIPÓTESIS DE SALIDA

*** Inicialmente ***

LeerAutómata () - Módulo Gramatical (*.INV, *.CAT, *.EST, *.PRI)
LeerModelosHMM () - Módulo Acústico (DHMM o SCHMM, *.FON)
LeerDiccionarioCategorizado () - Módulo Léxico (*.TER, *.TRP)

*** Procesos en el Módulo Acústico ***

Bucle de Tramas (t = 1, ..., t = T)
   {
      Sit = 1 (Primera Trama)
         GenerarEspacioEstados ()
            :: SolicitarSPNodos (Del M. Acústico al M. Gramatical)
            :: IncorporarSPNodos
               - Rellenar ListaSuperNodosActivos[]
               - Inicializar
                  PRED[SPNodo, t] = INF
                  WW[SPNodo, t] = -1
                  BRED[SPNodo, t] = -1
                  SS[SPNodo, t] = -1

         :: SolicitarNodos (Del M. Acústico al M. Léxico)
         :: IncorporarNodos
            - Rellenar ListaNodosActivos[]
            - Inicializar
               DELTA0[est, Nodo] = INF
               ALFA0[est, Nodo] = -1
               SIGMA0[est, Nodo] = -1

         ProcesarListas ()
            :: ProcesarSPNodosIniciales
               - Calcular
               
               ALFA0[0, Nodo] = 0
               SIGMA0[0, Nodo] = SPNodoINICIAL

   Si t > 1 (Resto Tramas)
      {
         ProcesarListas ()
            :: RecorrerSPNodos
               :: RecorrerNodos
                  :: SolicitarSPNAnterioresActivos (Del M. Acústico al M.Gramatical)
                     - Obtener (considerando los SILENCIOS acústicos)
                       SPNodoAnt*

                  :: ProcesarEstadosNodo
                     :: ProcesarEstado0 (Ecuaciones (1),(2),(3))
                         (1)
                         (2)
                         (3)

                     :: ProcesarRestoEstados (Ecuaciones (4),(5),(6))
                         (4)
                         (5)
                         (6)

            CalcularReducciones ()
               
:: RecorrerSPNodos
               :: RecorrerNodos
                  - Calcular Variables Reducidas (Ecuaciones (7), (8), (9), (10))
                     PRED[SPNodo, t] = DELTA1[UltEstNodo*, Nodo*] (7)
                     WW[SPNodo, t] = ListaNodosActivos[Nodo*].Palabra (8)
                     BRED[SPNodo, t] = ALFA1[UltEstNodo*, Nodo*] (9)
                     SS[SPNodo, t] = SIGMA1[UltEstNodo*, Nodo*] (10)

         PrepararDatos ()
            
:: RecorrerSPNodos
               :: RecorrerNodos
                  - Copiar (Ecuaciones (11),(12),(13))
                     DELTA0[est, Nodo] = DELTA1[est, Nodo] (11)
                     ALFA0[est, Nodo] = ALFA1[est, Nodo] (12)
                     SIGMA0[est, Nodo] = SIGMA1[est, Nodo] (13)

}

*** Obtención del Resultado ***

   Si t = T (Últ. Trama)
      BackTracking ()
         
:: Recuperar la Secuencia de Palabras utilizando PRED[], WW[], BRED[], SS[].

 }

Anterior   I  Siguiente   I  Índice capítulo 5   I  Índice General


ISSN: 1139-8736
Depósito Legal: B-8714-2001