2010-10-14 23 views
1

Je voudrais intégrer la reconnaissance vocale dans mon application Android. Je sais que google fournit deux modèles de langue (forme libre pour la dictée et la recherche sur le Web pour les phrases courtes).Modèle de langage de reconnaissance vocale

Cependant, mon application aura un nombre fini de mots possibles (peut-être quelques milliers). Est-il possible de spécifier le vocabulaire? en le limitant à ces mots, dans l'espoir d'obtenir des résultats plus précis? Mes pensées immédiates seraient d'utiliser le modèle de langage de recherche sur le Web, puis de vérifier les résultats de cela par rapport à mon vocabulaire.

Toutes les pensées ont apprécié.

Répondre

1

Je pense que votre intuition est correcte et que vous avez répondu à votre propre question.

La reconnaissance vocale intégrée fournie par google ne prend en charge que les modèles de dictée et de recherche de langue. Voir http://developer.android.com/reference/android/speech/RecognizerIntent.html

Vous pouvez obtenir des résultats en utilisant ces modèles de reconnaissance, puis classer ou filtrer les résultats pour trouver ce qui correspond le mieux à votre vocabulaire limité. Il existe différentes techniques pour ce faire et elles peuvent aller de l'analyse simple à des modèles statistiques complexes.

La seule autre alternative que j'ai vu est d'utiliser une autre reconnaissance vocale sur un serveur qui peut accepter votre modèle de langage dédié. Bien que cela soit coûteux et complexe et utilisé par des entreprises commerciales vocales comme VLingo ou Dragon ou Microsoft Bing.

0

Vous pouvez utiliser des modèles Opensource comme Voxforge ou des modèles bon marché comme Lumenvox. Certains ont été portés sur Android. J'ai oublié par qui.

0

je répondu à peu près la même question avant - s'il vous plaît vérifier ici: Building openears compatible language model

et ici:

généralement vous avez besoin très grand corpus de textes pour générer des modèles linguistiques utiles.

Si vous n'avez qu'une petite quantité de données d'apprentissage, votre modèle de langue sera sur-ajusté, ce qui signifie qu'il ne généralisera pas.