¿Cuáles son las desventajas entre aprovechar Kaldi y HTK para aplicaciones de reconocimiento de voz?

El kit de herramientas HTK se originó en 1996, Kaldi apareció en 2011. Por lo tanto, un kit de herramientas es muy antiguo y fue muy popular hace una década. Otro es nuevo y está recibiendo mucha más atención en estos días. En septiembre de 2015, HTK 3.5 se lanzó con nuevas características como redes neuronales para modelos acústicos, RNNLM, etc., HTK podría llamarse kit de herramientas de última generación. La competencia entre los juegos de herramientas todavía está en progreso.

En general, no existe tal característica de HTK que sería imposible de implementar en Kaldi. Las características de Kaldi como i-vectors son mucho más útiles que cualquier cosa adicional que esté presente en HTK. Kaldi también implementa numerosas funciones y secuencias de comandos que serían realmente difíciles de reproducir en HTK: detección de errores en las transcripciones, identificación del hablante, selección rápida de la mejor película, VAD basado en Gmm, soporte para entrenamiento multistyle, modelos de cadena muy rápidos y precisos.

Una gran ventaja de Kaldi es la comunidad de apoyo. Simplemente verifique el tráfico en la lista de correo HTK y el grupo Kaldi. Tenga en cuenta que HTK ni siquiera tiene VCS público disponible.

Otra gran ventaja está lista para recibir recibos para diversas tareas. Por supuesto, puede hacer muchas cosas con HTK, pero tiene que escribir mucho código para preparar las características, preparar los datos, ejecutar la capacitación, obtener resultados, evaluarlos. En Kaldi no hay necesidad, simplemente desempaquete los datos en el lugar correcto y ejecute el script run.sh y run.sh todo listo, puede configurar el procesamiento del clúster con una sola línea. Solo agregue los datos.

Lo más importante que falta en Kaldi son los decodificadores. El decodificador dinámico HDecode compone diccionario, modelo de lenguaje y modelo acústico sobre la marcha. La decodificación dinámica reduce significativamente los requisitos de memoria para el decodificador y también permite esquemas de decodificación más complejos como una extensión rápida de vocabulario. Los rellenos opcionales no son compatibles con Kaldi por este motivo. Kaldi podría tener algún progreso en esto en el futuro, pero ahora no lo tiene en este momento.

Entonces HVite, el decodificador de gramática HTK puede procesar gramáticas más complejas. Este es un caso de uso muy raro, pero los decodificadores Kaldi requieren propiedades específicas de la gramática que puede decodificar (siendo determinable), por lo que podría no ser fácil decodificar con gramática cíclica compleja con Kaldi. Otras diferencias entre HTK y Kaldi incluyen un control más fino de las mezclas. En HTK con HHed, puede seleccionar qué mezclas vincular, qué mezclar, etc. Lo mismo con los parámetros de la red neuronal, puede vincular capas con mucha precisión en HTK.

Para los desarrolladores que trabajan en aplicaciones que no son de voz, como la bioinformática, HTK ofrece más funciones que no son de voz. Por ejemplo, admite HMM discretos.