Speech

Interface Toolkit

Descripción

El paradigma de interacción speech hace referencia a la acción o habilidad del usuario a interactuar a través de la voz con un sistema digital. El aumento de las interfaces basadas en la voz es ya un hecho; ello nos permite ya poder buscar, enviar mensajes e incluso controlar nuestros dispositivos conectados.

Se aprecia una clara evolución, desde interfaces gráficas GUI a interfaces de voz. La mayoría de nosotros estamos familiarizados con el uso de estas interfaces (sobre todo, en nuestros dispositivos móviles); sin embargo, muchos de estos sistemas carecen de un diseño adecuado. Algunas de las razones que se identifican es que carecen de un contexto en el habla y no se implementan con una naturaleza verdaderamente conversacional. Por otro lado, muchas de ellas están diseñadas para actuar como recopiladores de información. Adicionalmente, los diálogos se presentan de manera análoga a la forma en que nosotros escribimos y no a la forma en la que hablamos. Por lo general, la limitación de la tecnología no se presenta como la responsable de una mejor o peor experiencia; los diseñadores deben conocer cómo aplicar los procesos necesarios para implementar una interfaz de voz adecuada.

Sin embargo, cabe destacar que, respecto a la tecnología, el principal problema es que este tipo de sistemas requiere una configuración en forma «entrenamiento» y posibles gaps en su rendimiento (debido a los fallos que ocurren cuando la calidad del audio es pobre, cuando solo se reconoce parte de una frase, pronunciaciones concretas o incluso cuando no se detecta ninguna entrada). Sin embargo, algunas ventajas de este paradigma se presentan en forma de que no requieren una atención visual permanente, pues permite a los usuarios interaccionar mientras hacen otras cosas, su ubicuidad de uso, una curva de aprendizaje muy inferior frente a otro tipo de interfaces de usuario tradicionales, o aspectos como la reducción en el tamaño de los dispositivos que la implementan frente a aquellos que implementan las interfaces visuales o touch. Además, se complementa perfectamente con la interacción de tipo gestual.

Así, en un futuro más que próximo, los seres humanos estaremos rodeados por cientos de máquinas; muchas de ellas serán robots con los que deberemos interactuar diariamente (algunas más simples y otras dotadas de inteligencia y/o capacidad de aprendizaje). El habla es la forma más sólida y agradable que permite a las personas interaccionar con las máquinas (las personas somos seres naturalmente conversadores, y hablar es de las primeras tareas que vamos aprendiendo desde que nacemos). De esta manera, la incorporación de la voz va a ir complementando, o incluso reemplazando, las interfaces de entrada de texto más tradicionales como son las textuales, las táctiles o las gestuales.

Cabe destacar que la interacción mediante la voz no solo se centra en una simple identificación verbal (tokens) y procesamiento, sino que requiere un diseño de cómo será la entrada. Así, diferentes ámbitos de aplicación requieren convertir esas palabras en texto de utilidad aplicados a diferentes contextos, como puede ser la cumplimentación de formularios, el dictado de un texto plano, la especificación de acciones o comandos concretos al sistema, e incluso el establecimiento de una conversación. La voz, como elemento de entrada, puede variar desde una forma corta (una única palabra, número o frase) a una forma avanzada (dictado continuo). Así, los sistemas reconocen el lenguaje del usuario, y lo traduce en comandos computacionales.

Aplicación

A continuación, distinguimos tres posibles aproximaciones para la creación de los sistemas mediante la interacción por voz:

  • Comandos: este tipo de interfaces presenta una gran limitación ya que el lenguaje permitido se basa en cuadros sintácticos fijos con sustitución de variables, aunque desde el punto de vista de diseño se reduce su complejidad al definir únicamente una sintaxis rígida que limita en gran medida las posibles entradas de voz. El éxito de este tipo de interfaces depende de la voluntad de usuarios para aprender el lenguaje específico para tal propósito, tal y como indicamos en el paradigma typing. Un caso concreto de aplicación son algunos de los sistemas handsfree que hacen uso del teléfono móvil dentro de un vehículo y que permiten al usuario, por ejemplo, establecer una llamada mediante una secuencia de números (numeración telefónica) o a través del nombre de un contacto de la agenda.
  • Árboles de diálogo: esta aproximación reduce la complejidad del reconocimiento mediante la descomposición de la actividad del dominio a una secuencia basada en puntos de elección. Esto permite al usuario seleccionar entre un conjunto de alternativas posibles o indicar una respuesta específica (por ejemplo, responder con un valor numérico o mediante un valor «Sí»/«No»). Un caso concreto de aplicación es el ámbito del soporte telefónico al usuario cuyo objetivo es resolver, automáticamente, un problema conocido sin necesidad de contactar con un operador humano. Los inconvenientes, desde la perspectiva del usuario, se centran en la incapacidad de acceder rápidamente a las partes de un dominio teniendo que atravesar muchas ramas, o entrar en un camino sin salida dada la imposibilidad de dar respuesta. Ello puede conllevar a una experiencia frustrante para los usuarios. Desde la perspectiva del diseñador, estos sistemas pueden ser difíciles de construir porque requiere poder descomponer una actividad en forma de un árbol de diálogo tratando de que mantengan un cierto equilibrio, si bien no requiere de entrenamiento o esfuerzo por parte del programador, como ocurre en el siguiente caso.
  • Lenguaje natural: los avances en inteligencia artificial y el aprendizaje automático están posibilitando un resurgimiento de las denominadas interfaces conversacionales y el procesamiento del lenguaje natural, creando un potencial aún por explotar sobre el paradigma de interacción speech. A través de este se puede abordar el problema de acceso mediante un idioma concreto al permitir que los usuarios empleen el lenguaje natural sin ningún tipo de restricción y sin la necesidad de memorizar comandos o diálogos predefinidos. El usuario tan solo debe conocer de antemano el idioma y el dominio en el que trabaja el sistema para que la interacción pueda ser efectiva. El procesamiento del lenguaje tiene el objetivo de hacer posible la comprensión y el procesamiento de la información expresada en lenguaje humano. Este enfoque no solo implica una gran carga en el desarrollador para entender cualquier declaración razonable por parte del usuario, sino también conlleva la carga adicional en el desarrollo de un diálogo de descubrimiento. Un caso concreto de aplicación son los asistentes virtuales de los dispositivos móviles. A través del entrenamiento, el sistema reconoce incluso al usuario. Esto permite que estos sistemas puedan ser utilizados incluso para reconocer la identidad de los usuarios en entornos seguros.

Ejemplos

Encontramos dos tipos principales de ejemplos en interfaces de usuario que permiten una interacción por voz. Por un lado, se presentan los asistentes de voz inteligentes integrados en los diferentes sistemas operativos de los smartphones.

Siri

Es el nombre del asistente vocal desarrollado por Apple para sus smartphones y tabletas táctiles. Este software fue introducido en 2011 en el iPhone 4s y desde entonces se incorpora a todos los dispositivos iOS.

Siri registra la solicitud a través de la frecuencia y ondas de sonido de la voz del usuario y las traduce a un código. Posteriormente, desglosa el código para identificar patrones, frases y palabras clave. La información se integra en unos algoritmos que se filtran a través de múltiples combinaciones de oraciones para determinar lo que significa la frase registrada. Tras este procedimiento, determina la solicitud realizada y evalúa qué respuestas pueden llevarse a cabo accediendo a la información almacenada.

Siri es capaz de crear oraciones completas y relevantes para el tipo de pregunta o comando solicitado.

Google Assistant/Now

Actualmente, Google Now y Google Assistant siguen siendo tecnologías independientes. Google Now es el asistente personal de voz que funciona a través de dispositivos que utilizan Android o iOS. Ofrece las posibilidades típicas de programación de eventos y alarmas, así como utilizar comandos de voz para ejecutar funcionalidades del dispositivo. Por otro lado, Google Assistant contiene los mismos elementos que Google Now, si bien contiene una IA más avanzada. A su vez, se caracteriza por tener una interfaz conversacional más amigable y estar integrado con el dispositivo Google Home, que presentaremos más adelante.

Windows Cortana

Es el asistente virtual desarrollado por Microsoft para Windows Phone (ahora descontinuado) y disponible en dispositivos que utilicen Windows 10, iOS, Android y Xbox One. El asistente utiliza los motores de búsqueda (como Bing) como base de datos. Adicionalmente, Cortana va registrando información de la interacción del usuario para aprender cuáles son tus intereses y rutinas para facilitarte sugerencias o servicios a medida totalmente personalizados a su perfil.

Asistentes de voz integrados en smartphones
Fuente: Wikipedia

Adicionalmente a los asistentes de la voz integrados en los smartphones, se listan los asistentes de voz inteligentes más relevantes y que se presentan integrados en los asistentes del hogar.

Google Home

Es un dispositivo con altavoz desarrollado por Google que se define como un centro de control y asistente en el hogar. Además, se utiliza como sistema de entretenimiento. Puede usarse para reproducir música en el hogar, administrar sin esfuerzo las tareas cotidianas y preguntar cuestiones que se desea conocer.

Apple Home Kit

Sistema desarrollado por Apple que permite controlar los dispositivos inteligentes instalados en casa. A través de comandos de voz (vía Siri), permite ajustar la temperatura e iluminación de forma remota, así como recibir notificaciones de los dispositivos conectados. Como desventaja, Apple Home Kit no es compatible con varios de dispositivos ya existentes en el mercado.

Amazon Echo

Es el dispositivo inteligente del hogar desarrollado por Amazon. Utiliza su sistema de control por voz denominado Alexa. Este asistente permite interactuar directamente con el dispositivo sin tener que pasar por un smartphone conectado. Si bien mantiene las mismas características que sus competidores (control de sistemas domóticos en la casa y reproducción de música), su punto fuerte es la plataforma de control por voz que la soporta, lo que la hace mucho más eficiente e intuitiva para su uso doméstico. El sistema es compatible con otros dispositivos (sensores) inteligentes del hogar como SmartThings, Wink e Insteon, que proporcionan a AmazonEcho una mayor versatilidad.

Asistentes de voz integrados en asistentes del hogar
Fuente: Wikipedia

Referencias

Elovic, A. «Chatbots – The Beginners Guide» [en línea].

<https://chatbotsmagazine.com/chatbots-the-beginners-guide-618e72599b55>

 Harris, R. A. (2004). Voice interaction design: crafting the new conversational speech systems. Elsevier.

 Jokinen, K. (2009). Constructive dialogue modelling: Speech interaction and rational agents (vol. 10). John Wiley & Sons.

Nassar, R. «Everyone’s Guide to Designing Great Conversational Interface Experiences» [en línea].

<https://uxdesign.cc/designing-great-conversational-interfaces-89ac70fcb611>

Shevat, A. (2017). Designing Bots, Creating Conversational Experiences. O’Reilly Media.