Recientemente probamos una aplicación similar para la búsqueda basada en voz para los productos de nuestra compañía y tenemos algunos conocimientos que estoy feliz de compartir. Puede que no sea perfecto, pero podría ayudar a obtener una vista inicial.
Necesitas 4 componentes básicos.
1. ASR (reconocimiento automático de voz para convertir voz en texto). Google ASR es quizás el mejor y puede obtener. La capacidad del navegador solo está disponible en Chrome. IE, Firefox y Safari aún no admiten ASR en el navegador. Esto debería capturar lo que necesita hablar y convertirlo en texto. Para las aplicaciones también obtienes google ASR y la implementación es muy sencilla. Mi fuerte ascenso indio no fue un problema en absoluto. Puede echar un vistazo a esto aquí https://www.google.com/intl/en/c…
- ¿Por qué Python no es adecuado como lenguaje de desarrollo de aplicaciones móviles?
- ¿Por qué los desarrolladores de software eligen desarrollar para iOS?
- ¿Quiénes son los mejores desarrolladores de aplicaciones móviles en Escocia?
- ¿Hay alguna forma de probar su aplicación en todos los dispositivos sin comprar realmente todos los dispositivos?
- ¿Cuáles son las cosas que necesitas saber para hacer una aplicación?
2. PNL (motor de procesamiento de lenguaje natural) . Esto convertirá el texto para darle parámetros de significado para consultar. Algunos ejemplos de esto son IBM Watson, Alexa de Amazon, Open NLP de Apache, Taneo de Artificial Solution, SmartSpoken y muchos más disponibles para esto. Este es el corazón del sistema y cada implementación es un Modelo de aprendizaje automático diferente. Puede ajustar este modelo según sus necesidades y su propia comprensión. Algunos modelos están preconfigurados y otros necesitan mucha configuración. Debe seleccionar uno en función de la cantidad de control que necesita sobre el sistema y su salida.
3. Objetivo de consulta : si está haciendo un asistente personal, necesitará acceso a otras aplicaciones en el teléfono, que normalmente depende de lo que la aplicación permita. Si está buscando sus propios datos, como fue nuestro caso, puede indexar los datos y exponer un servicio de consulta encima. Recomendaría hacer un índice de texto completo ya que es más fácil de usar. Puede probar SOLR o Elastic Search para indexar.
4. Respuesta: normalmente, la respuesta es JSON simple que contiene 2 partes: 1. los datos para mostrar y 2. Esto facilitará el formateo de la presentación al usuario.
Estos 4 componentes juntos le dan la primera parte de su aplicación, es decir, el Servicio. También necesitará capacidades de análisis y reimplementación.
Análisis y reimplementación
Necesita análisis para descubrir si su aplicación funciona como se esperaba. ¿Los usuarios pueden hacer el trabajo que pretendían hacer? En caso negativo, debería poder modificar el modelo del componente 2 anterior y luego volver a implementar el servicio. IBM Watson y Taneo de AS vienen con esta capacidad y, por lo tanto, son buenos para la implementación empresarial.
También piense en lo siguiente para su caso de uso.
1. ¿Los usuarios usarán la aplicación frente a otras personas?
2. ¿Qué tipo de preguntas / comandos anticipa? Google Now es una implementación muy genérica y, por lo tanto, la precisión puede ser un desafío. Si reduce el dominio y configura el Modelo, puede lograr resultados mucho mejores. Lo hicimos.
Además del asistente personal, estas tecnologías ahora se están utilizando para implementaciones empresariales y statmuse | Search for Sports es un buen ejemplo de PNL con big data.
Espero que esto ayude.