¿Qué debo aprender para crear un asistente de voz como Siri?

Solo necesita convertirse en un buen desarrollador de software. Ya hay varios componentes disponibles, por lo que todo lo que tendrá que hacer es fusionarlos, hacer un producto y lanzarlo.

Hay implementaciones de código abierto de Siri, una notable es Sirius / Lucida.

Sirius es un servicio de asistente personal inteligente (IPA) independiente de extremo a extremo de código abierto. Sirius recibe consultas en forma de discurso o imágenes y devuelve resultados en forma de lenguaje natural. Sirius implementa las funcionalidades centrales de un IPA, incluido el reconocimiento de voz, la coincidencia de imágenes, el procesamiento del lenguaje natural y un sistema de preguntas y respuestas.

Puede instalar Sirius por su cuenta, configurarlo y extenderlo de acuerdo a sus necesidades y no funcionará peor que el propio Siri.

Para ampliar la lista de tecnologías que probablemente necesite, aquí hay algunas habilidades importantes:

1. Desarrollo de Unix / Linux. Muchos componentes de aprendizaje automático utilizan mucho la infraestructura de Unix: scripts de shell, Perl, Python, C ++.

2. Experiencia de aprendizaje automático. Una comprensión básica de la tecnología es suficiente. Debe comprender qué es un conjunto de capacitación, qué es un conjunto de prueba, cómo probar la precisión del sistema, cómo recopilar los datos y mejorar. Los componentes del sistema de reconocimiento de voz Siri como Kaldi tienen sus propios equipos de desarrollo, lo ayudarán a modificar el sistema según sus necesidades.

3. Software de procesamiento de lenguaje natural. Esta es una parte importante del sistema, debe comprender cómo se procesa el texto, cómo se analiza la intención y cómo se construye la respuesta a partir de la información.

4. Desarrollo de aplicaciones móviles si quieres ejecutar Siri en dispositivos móviles. Debe comprender cómo crear una aplicación móvil, cómo conectarla a los servidores, cómo transmitir los datos y mostrar las respuestas.

5. Desarrollo de sistemas a gran escala. Dado que su sistema manejará miles de solicitudes por minuto, debe hacerlo robusto y escalable. Una infraestructura dedicada de alta disponibilidad de la nube puede ayudarlo, necesita saber cómo usar AWS y servicios relacionados, cómo escalar y monitorear el sistema.

More Interesting

Cómo hacer aplicaciones simples usando lenguaje C

¿Existe un programa que pueda instalarse en un USB, como un sistema operativo, en el que pueda instalar mis propios programas?

¿Existe un software para copiar archivos de diferentes carpetas y pegarlos todos a la vez?

Períodos de prueba

¿Cuál es un período de soporte típico ofrecido por los servicios de consultoría de software desde el momento en que se entrega una solución al cliente dentro del cual los defectos descubiertos pueden repararse sin cargo?

¿Existe un sitio web o una plataforma donde podamos comparar sitios web, aplicaciones y herramientas o software?

¿Cuál es el mejor software ERP disponible en el mercado?

¿Cuáles son algunos ejemplos de startups y aplicaciones que usan la API de Instagram?

¿Por qué no hay muchos programadores antiguos en las compañías de software? ¿Son menos comercializables después de que alcanzan cierta edad?

¿Cómo es útil el marketing móvil para la agencia de viajes?

¿Existe alguna aplicación de Android de seguimiento en tiempo real que pueda rastrear mi contacto móvil o el mismo usuario de esa aplicación?

¿Cuánto costaría el desarrollo de funciones para una aplicación de seguimiento de tiempo (similar a Smarter Time)?

¿Qué proveedor es mejor para el módulo de finanzas de ERP? Estamos buscando una aplicación de Finanzas separada que pueda integrarse con el ERP existente.

¿Cómo se combina MeisterTask con otro software de gestión de proyectos y tareas?

¿Cuánto vale la aplicación que puede desarrollar un solo hombre?