INTERACCIÓN NATURAL
PROCESAMIENTO DE LENGUAJE, SEÑALES E IMÁGENES

Juan Enrique Garrido Navarro (Universidad de Lleida)

Valéria Farinazzo Martins (Universidade Presbiteriana Mackenzie)

Andre Kawamoto (Universidade Tecnológica Federal do Paraná)

Marc Viladegut Abert (Universidad de Lleida)

Cristina Manresa-Yee (Universitat  de les Illes Balears)

Juan Manuel Gonzalez-Calleros (Benemérita Universidad Autónoma de Puebla)

John Edison Muñoz Cardona (University of Waterloo)

Resumen

La evolución tecnológica de los últimos años ha llevado al desarrollo de nuevos dispositivos para la interacción entre humanos y sistemas informáticos. Del mismo modo, introdujo las denominadas interfaces naturales, comprometidas con la reducción del tiempo de aprendizaje y mejora de la usabilidad de dichos sistemas. En este sentido, el presente capítulo describe, en primer lugar, el lenguaje natural como base de partida para, posteriormente, describir dos tipos clave de interacción natural: interacción por voz e interacción gestual. Finalmente, se presenta un estudio de caso que muestra todo el proceso de desarrollo de una aplicación que hace uso de una interfaz de voz con el usuario.

1. Introducción

Históricamente, la interfaz entre usuarios y sistemas informáticos puede entenderse como un proceso evolutivo, en el que se destacan tres paradigmas: Command Line Interfaces (CLI), Graphical User Interfaces (GUI) y más recientemente, Natural User Interfaces (NUI) (Fernandez et al., 2016).

La evolución tecnológica de los últimos años permitió la creación de una gama de dispositivos que permitió el surgimiento de nuevas modalidades de interfaz e interacción: pantallas táctiles, reconocimiento de comandos de voz, reconocimiento de gestos, entre otros (Kawamoto, Marques & Martins, 2020).

Las interfaces naturales reciben diferentes nombres, como interfaces hápticas, orgánicas, portátiles, gestuales, de voz, etc., y pueden organizarse de manera aproximada bajo el paradigma de interfaces de usuario naturales (NUI), que se puede definir como interfaces diseñadas para reutilizar las habilidades existentes para la interacción directa con contenido (Blake, 2011).

Con respecto a la interacción, la rápida evolución ofrece una visión cada vez más volátil de lo que se considera convencional. En este sentido, al tradicional mecanismo de interacción basado en el uso de teclado y ratón, se ha añadido desde la aparición de dispositivos táctiles en nuestro día a día (móviles y tabletas), la interacción táctil como interacción habitual y bien conocida. Sin embargo, la constante mejora tecnológica está ayudando a que mecanismos naturales del ser humano como el lenguaje  natural, la voz o los gestos, comiencen a estar muy cerca de ser considerados como convencionales y por lo tanto, que su uso sea muy próximo a los denominados tradicionales.

Este paso supone una reducción en el aprendizaje de uso de los sistemas debido a la base natural que el usuario conoce del mecanismo de interacción. De este modo, la usabilidad y experiencia de usuario se ven facilitadas con respecto a sus antecesores gracias a la naturalidad inherente en el usuario.

2. Fundamentos Teóricos

2.1. Procesamiento de lenguaje natural

La interacción por medio del lenguaje natural, así como la tecnología, han experimentado cambios importantes a lo largo de los años. Ambos términos comparten un proceso evolutivo cada vez más acentuado debido a cómo la tecnología cada vez permite una mejor experiencia de usuario, alcanzando el uso del lenguaje natural. Esta evolución se ha visto reflejada en los últimos años tanto en potencia de cómputo (tecnología), como de enriquecimiento de la comunicación del usuario con el computador.

La aparición de nuevos paradigmas de interacción como parte de la evolución tecnológica, ha ofrecido nuevas capacidades y contextos donde la interacción con el sistema interactivo ha sido enriquecida. En concreto, considerando como ejemplo el paradigma de ordenador de sobremesa (Granollers, 2017), los estilos de interacción han evolucionado dentro de él, partiendo de líneas de comandos, continuando por menús de navegación y, posteriormente, manipulación directa y asistida. Finalmente, se ha alcanzado el uso del lenguaje natural como estilo de interacción, algo que alcanza un nivel destacable en la mejora de experiencia de usuario.  Complementariamente, la aparición de nuevos paradigmas de interacción (realidad virtual, realidad aumentada y computación ubicua) ha permitido la ampliación de contextos de uso del lenguaje natural.

2.2. Descripción de lenguaje natural

El lenguaje natural se puede definir como el medio que utilizan las personas para comunicarse entre sí, ya sea mediante signos en la escritura, como usando el lenguaje del habla o incluso gestos. A lo largo del tiempo ha evolucionado dando como resultado, una mayor perfección del mismo gracias a la experiencia y práctica.Existe una inmensa cantidad de lenguajes naturales, pero de manera común, se puede indicar que todos y cada uno de ellos se pueden caracterizar por las siguientes propiedades:

  • Se definen a partir de una gramática.
  • Progresivamente, cada lenguaje natural se enriquece generando modificaciones en la gramática que lo define. Como resultado, existe una dificultad en la formalización de la gramática (véase Figura 1-a).

Un lenguaje natural tiene un gran poder expresivo debido a la riqueza del componente semántico que permite poder expresarse de múltiples formas distintas manteniendo el significado en todo momento, esto es comúnmente conocido como polisemántica. Esto dificulta aún más la formalización completa de su gramática (Cortez, 2009).

(a)

(b)

Figura 1. Proceso evolutivo del lenguaje natural

Resulta importante diferenciar el lenguaje natural del lenguaje formal. En este último caso, su definición se encuentra realizada por unas reglas preestablecidas sin seguir el mismo proceso evolutivo que el descrito en el natural. De este modo, la principal diferencia entre ellos es que el natural evoluciona sin tener demasiado en cuenta la gramática, considerando en todo momento que pasarán modificaciones de la lengua en hechos futuros que provocarán alteraciones en las reglas ya existentes. En cambio, el lenguaje formal evoluciona a partir de unas reglas que ya han estado definidas previamente y el desarrollo se produce en torno a ellas (véase Figura 1-b) (Révész,  2012).

2.3. Interacción por voz

Voice User Interfaces (VUIs, Interfaz de voz) permiten la interacción de los usuarios con un sistema informático a través de la voz, utilizando el lenguaje hablado (Dasgupta, 2018). Las VUIs se originan a partir de la investigación en Inteligencia Artificial, especialmente el desarrollo de «interfaces conversacionales» en la década de 1950. Sin embargo, no fue hasta finales de la década de 1990 que esta tecnología tuvo una mejora significativa y se hizo más popular (Cohen et. al.,  2004). Actualmente, el concepto VUI se está integrando cada vez más en nuestra vida. Con Alexa de Amazon y Google Home creciendo en popularidad, las VUIs ahora se encuentran más comúnmente en un hogar. Estas VUIs proporcionan un método de interacción de manos y ojos libres para que los usuarios soliciten información o incluso la utilicen para el entretenimiento (Myers, Furqan & Zhu, 2019).

Las interfaces de usuario basadas en voz son sistemas capaces de reconocer la voz del usuario, comprender lo que dice y responder a estas entradas, generalmente en tiempo real (Lai, 2000; Dasgupta, 2018). Dependiendo del propósito del sistema, es posible crear aplicaciones para reconocer y ejecutar cualquier comando hablado, independientemente del usuario, aplicaciones para reconocer a un usuario en particular (autenticación mediante voz), o incluso la unión de ambos requisitos simultáneamente, es decir, sistemas que sólo reconocen comandos de usuarios autenticados. Este tipo de interfaz incluye elementos como prompts (avisos) o mensajes del sistema, gramáticas y lógica de diálogo o flujo de llamada. Los prompts son mensajes de voz pregrabados o sintetizados que deben reproducirse durante el diálogo con el usuario. Las gramáticas definen todas las palabras, oraciones o frases que el usuario puede decir (y que el sistema reconoce) en respuesta a un prompt. La lógica de diálogo define todas las acciones tomadas por el sistema durante la interacción, por ejemplo, el acceso a la base de datos (Cohen et. al.,  2004).

Un sistema típico de interfaz de usuario basado en voz se compone de módulos como se muestra en la Figura 2 (Lamel, Minker & Paroubex, 2000; Lai, 2000; Cohen et. al.,  2004).

Figura 2. Arquitectura de un sistema de comprensión del lenguaje hablado Fuente: Adaptado de (Cohen et. al., 2004)

El punto final (endpointing) detecta el principio y el final del discurso, capturando el silencio, y determina la forma de onda. La onda se empaqueta y se envía al módulo de extracción de características, que transforma la demarcación de lo que fue dictado en fonemas y a cada uno se le asigna un número, llamado vectores de características. El módulo de reconocimiento posteriormente usa la secuencia de vectores de características para determinar las palabras que pronunció el usuario. El módulo de comprensión del lenguaje natural asigna significado a las palabras que se han dicho, a través de un conjunto de bloques de valores. Se define un bloque para cada elemento de información relevante para la aplicación, es decir, palabras clave. Por tanto, se inicia el módulo de gestión de diálogos. Es el administrador de diálogos el que determina las acciones que debe realizar el sistema entre las distintas posibilidades, como acceder a la base de datos o ejecutar una transacción.

Las interfaces basadas en voz son un medio complejo, con principios sutiles y convincentes. Cuando interactuamos con otros humanos, tenemos en cuenta la complejidad de la conversación, ya que este tipo de interacción es bastante natural. Sin embargo, al diseñar diálogos con máquinas, pueden ocurrir experiencias negativas como resultado de una falta de comprensión sobre el verdadero mecanismo interno de la interacción hablada (Dasgupta, 2018). A continuación, se proporcionan directrices y se discuten algunas cuestiones clave que deben abordarse durante el proceso de diseño de una VUI:

  • Reconocer intención. La intención se puede definir como el objetivo del comando de voz de un usuario. Debemos evitar asumir que las personas dirán precisamente las palabras que anticipamos para una intención (Dasgupta, 2018).
  • Manténlo simple. Al diseñar una VUI, sea realista acerca de sus capacidades. No asuma que la VUI debería poder hacer todo (Abbott, 2002).
  • Falta de fluidez (disfluency). Hay que tener en cuenta que la gente no habla continuamente. El discurso de la gente está salpicado de «um», «ah», «er» y pausas. A veces, las personas corrigen su propio discurso sobre la marcha o pueden abandonar formas de hablar a mitad de camino. La falta de fluidez causa problemas en las interfaces de voz porque se resuelven en múltiples niveles (Dasgupta, 2018).
  • Marcadores conversacionales. Son una forma importante de informar al usuario dónde se encuentran en la conversación y que se les entiende. Los marcadores de conversación incluyen líneas de tiempo (por ejemplo, «Primero», «A mitad de camino» y «Finalmente»); agradecimientos («Gracias», «Entendido», «Muy bien» y «Lo siento») y comentarios positivos («Buen trabajo» y «Es bueno escuchar eso») (Pearl, 2016).
  • Manejar errores. No siempre es necesario volver a avisar al usuario cuando hay un fallo. Aunque el reconocimiento de voz ha mejorado drásticamente, esto de ninguna manera garantizará que sus usuarios tengan una buena experiencia cuando agregue voz al diseño. Cómo manejar estas condiciones de error en las VUIs es extremadamente importante. Una buena pista para los diseñadores de VUIs es aprovechar las reglas de conversación con las que los humanos ya se sienten cómodos. En lugar de decirle continuamente al usuario que no lo entendieron (y por lo tanto hacer que pierda la fe en el sistema), las señales sutiles pueden ser igualmente efectivas (Pearl, 2016).
  • No culpes al usuario. Los mensajes de error pueden parecer menos importantes, pero pueden afectar a la percepción que tiene el usuario del sistema e incluso su rendimiento. Cuando sea posible, los mensajes de error no deben culpar al usuario (Pear, 2016).
  • Adaptación a diferentes niveles de experiencia y entornos. Un buen diseño de interfaz intenta hacer que la VUI se adapte al usuario y a las variaciones ambientales mediante el intercambio de eficiencia por robustez. Con un orador experimentado y un buen ambiente, los diálogos deben permitir (pero no requerir) expresiones más largas. Con un usuario novel y un entorno ruidoso, los diálogos deberían colapsar en intercambios breves y estructurados que son tediosos pero confiables (Abbott, 2002).
  • Realizar un seguimiento del contexto. La comunicación humana está básicamente ligada al contexto. Para una tecnología de reconocimiento de voz, captar todos los factores contextuales y suposiciones en un breve intercambio es casi imposible (Dasgupta, 2018). Puede ser difícil anticipar todas las cosas que el sistema podría necesitar para realizar un seguimiento, pero un buen consejo es comenzar con lo básico (el lugar, el nombre o la última cosa mencionada, por ejemplo) y construir según lo que los usuarios en realidad están diciendo (Pearl, 2016).
  • Actualmente, en las VUIs, la “ayuda” es especialmente importante porque no existe una VUI todopoderosa. A pesar de que muchas VUIs dicen algo muy abierto, como «¿Cómo puedo ayudarte?», todavía están muy limitados en lo que pueden comprender y actuar. Los usuarios necesitan una forma de descubrir qué es lo que realmente pueden hacer. En una interfaz multimodal, tener un botón de «ayuda» o «información» siempre disponible en los comandos de la GUI es una forma obvia de que el usuario sepa que hay asistencia disponible (Pearl, 2016).
  • Desambiguación. Si es posible, confíe en cualquier información conocida para determinar la respuesta sin tener que preguntarle al usuario, por ejemplo, mediante el uso de pistas contextuales pueden emplear nombres, fechas, lugares. Si el usuario acaba de buscar un restaurante en una ciudad determinada y luego pregunta «¿Qué tiempo hace allí?», se puede asumir que el usuario se refiere al que está en la ubicación que se acaba de hacer referencia (Pearl, 2016).
  • En este caso, la latencia se refiere al tiempo que tarda el reconocedor en activar la detección de fin de voz y devolver un resultado de reconocimiento. Si su latencia es demasiado alta, los usuarios no pensarán que han sido escuchados y se repetirán, lo que puede causar problemas (Pearl, 2016).

2.4. Interacción gestual

Un complemento a la comunicación verbal para los humanos es la comunicación no-verbal. Un dato relevante es que el 65 por ciento de la comunicación humana se lleva a cabo a través de medios no verbales (Anders, 20105). Sin embargo, la mayoría de los trabajos se concentran en analizar el habla y poco énfasis se da al reconocimiento de gestos.

Un gesto es una comunicación no verbal donde las personas realizan acciones con su cuerpo para comunicar mensajes específicos: un movimiento de la mano puede indicar un saludo, una expresión facial puede informar del estado emocional de una persona y el uso de lengua de signos puede ofrecer una comunicación muy rica entre dos personas. Los gestos son estáticos o dinámicos, expresivos, en suma, movimientos corporales significativos que requieren movimientos físicos de los dedos, manos, brazos, piernas, cabeza o cara (Mitra 2007).  La comunicación gestual se encuentra presente en todas las culturas, edades y tareas, acompañada con habla o sustituyendola (Goldin-Meadow, 1999).

En la interacción persona-ordenador, la interacción gestual permite que un sistema digital perciba un gesto y actúe en consecuencia, sin que exista un dispositivo intermediario como puede ser un ratón. Además, cuando se define el conjunto de gestos para interactuar, tienen que considerarse factores como la duración, la posición, la orientación, el rango de movimiento permitido, la presión ejercida o el número de puntos de contacto si es sobre una superficie (Saffer, 2008).

Más allá del uso popular de gestos en dispositivos multitáctiles (teléfonos inteligentes, tablets o relojes inteligentes), el rango de aplicaciones donde pueden actuar las interfaces gestuales es muy amplio: entretenimiento (Kang et al. 2004), ayudas técnicas (Manresa-Yee, 2010) o salud y bienestar (Céspedes-Hernández, 2020, Wachs et al. 2008) .

En la actualidad, la mayoría de los trabajos se centran en los gestos de las manos, usando sensores de movimiento, cámaras de profundidad, dispositivos portátiles o cámaras RGB; otros en describir interacción por medio de las piernas, usando wearables y cámaras de profundidad; y muy pocos trabajos se concentran en la interacción de cuerpo completo, la mayoría de ellos utilizando cámaras de profundidad como dispositivos de adquisición de datos. Por otro lado, las interfaces gestuales también pueden ser mediadas por un dispositivo como, por ejemplo, las interfaces multitáctiles o mandos de videoconsolas como PlayStation Move.

Los elementos fundamentales de un sistema interactivo basado en gestos son (Saffer, 2008):

  • Sensor: uno o varios dispositivos de adquisición encargados de percibir el entorno y al usuario.
  • Comparador: la información adquirida se analiza para reconocer los gestos de interacción
  • Actuador: las decisiones del comparador se pasan al actuador que devuelve retroalimentación al usuario si procede.

A través de este proceso, el objetivo de las interfaces gestuales es alcanzar una interacción fluida, natural e intuitiva, y por tanto, para su diseño, se tienen que considerar las limitaciones, restricciones y mecánicas del dominio. Independientemente del dominio, las características que deben estar presentes en los sistemas interactivos donde la comunicación se realiza a través de una interfaz gestual son (Wigdor y Wixon. 2011, Saffer, 2008, Norman y Nielsen, 2010 ):

  • Descubrible: ¿Cómo sabe el usuario qué gestos tiene que realizar para interactuar? El sistema interactivo tiene que ser intuitivo para que el usuario pueda descubrir qué gestos son los adecuados o se debe guiar al usuario para que aprenda qué gestos utilizar.
  • Retroalimentación: el sistema interactivo tiene que responder de forma precisa y rápida al gesto del usuario. Especialmente, si no se manipula ningún dispositivo físico, es importante que el sistema informe con una respuesta rápida el reconocimiento del gesto.
  • Aceptación social: los gestos tienen una componente cultural que debe considerarse en el diseño de la interfaz.
  • Cómodo: los gestos de interacción tienen que ser fáciles de realizar, por lo que se tiene que tener en cuenta la ergonomía humana. Además, también hay que considerar la fatiga que pueda generar al usuario el uso continuado del sistema y evitar el ‘síndrome del brazo de gorila’ (Hansberger et al. 2017).
  • Robusto: el análisis del contexto de uso tiene que hacer énfasis en factores como la iluminación o la diversidad presente en los humanos, especialmente en aquellos sistemas que utilizan la visión por computador para el reconocimiento. Además, las personas gesticulan frecuentemente, por lo que se debería evitar interacciones accidentales con el sistema.

Además, se debe tener en cuenta que se deben favorecer aquellas partes del cuerpo más expresivas para interactuar con los sistemas, es decir, manos y expresiones faciales. No obstante, el dominio podría requerir del uso de partes del cuerpo menos expresivas, considere, por ejemplo, un sistema de rehabilitación que se centra en la recuperación del movimiento de la rodilla (Céspedes-Hernández, 2020).

Dentro del proceso de desarrollo de sistemas basados en gestos, se parte de la definición de una gramática de gestos. Para ello se debe realizar un estudio de elicitación en el que podemos identificar los acuerdos de gestos, así como, recopilar ideas significativas para simplificar la complejidad de los sistemas de reconocimiento automático de gestos. Es común en estos procesos de elicitación, que identifiquemos posibles problemas a los que se podrían enfrentar en el uso práctico del sistema nuestros usuarios (Céspedes-Hernández, 2020). Esto, al final, siempre es una limitación ya que se crean soluciones a la medida difícilmente de reusar o extender.

Una gramática puede ser utilizada para lograr la interacción  gestual, y se convierte en el puente que permite asociar las tareas de usuario, comandos específicos dentro del dominio dado, así como la identificación de gestos que los usuarios relacionan con estas tareas. Sin embargo, es importante señalar que la naturaleza de la interacción gestual hace que sea necesario considerar otros factores como aspectos cognitivos, culturales y lingüísticos para la personalización (Chandler, 2009).

Finalmente, es importante mencionar, que de un estudio de elicitación gestual se recolectan datos cuantitativos y cualitativos, en términos de usabilidad, número de gestos recopilados, puntuaciones de acuerdo, calificaciones proporcionadas para cada gesto, y las consideraciones de los sujetos y limitaciones del contexto. Poco acuerdo se logra encontrar y pocos contextos flexibles de uso; casi siempre con muchas restricciones o soluciones de laboratorio. Por ello, es normal no ver en nuestro día a día sistemas de interacción gestual no-verbal.

2.5. Fisiología Computacional

El cuerpo humano es un sistema bioeléctrico, dinámico y en constante transformación. Las señales que emitimos del cuerpo a partir de nuestras reacciones, emociones y estados psicológicos, pueden ser capturadas y procesadas en sistemas computacionales para luego ser usadas en procesos de interacción humano-computador (Fairclough, 2009). A este novedoso campo se le conoce como fisiología computacional y su objetivo es facilitar la recolección, el procesamiento y posterior interpretación de las señales del cuerpo para mejorar la forma en la que interactuamos con los sistemas computacionales, de forma que se puedan extender los canales de comunicación y la interacción sea más natural y diversa. Las señales fisiológicas tienen orígenes diversos pero en general pueden ser clasificadas según sus orígenes: eléctrico, magnético, mecánico, acústico, óptico, químico y térmico (Kaniusas, 2012). Las señales electrofisiológicas están entre las más populares debido a los múltiples avances logrados en las últimas décadas en las tecnologías de registro de señales del cuerpo, microcontroladores, electrodos y sistemas vestibles (o wearables) (Mukhopadhyay, 2015). Las señales electrofisiológicas más ampliamente usadas en el área de la fisiología computacional e interacción humano computador son resumidas en la Tabla 1 (Cowley et al., 2016):

Tabla 1. Señales electrofisiológicas más usadas en la interacción humano-computador y sus interpretaciones.

FALTA TABLA

Ahora bien, las señales fisiológicas han sido usadas en diferentes campos de la interacción humano computador bajo cuatro modalidades específicas: i) como herramienta de post-análisis implicando que después de recoger las señales fisiológicas de participantes durante su interacción con sistemas computacionales, las señales del cuerpo puedan dar cuenta de muchos factores humanos importantes para el mejoramiento de la misma (Cowley et al., 2016);  ii) biofeedback definido como el  campo de la psicología clínica que busca entrenar técnicas de auto-regulación sensorial mediante la visualización de las señales del cuerpo en tiempo real (Pope et al., 2014); iii) señal de entrada y control mediante respuestas fisiológicas controladas, con las que los usuarios pueden aprender a comunicarse con los sistemas computacionales usando su actividad muscular, movimientos oculares o incluso sus pensamientos (por ejemplo las interfaces cerebro computador) (Allanson, 2002);  y iv) adaptación biocibernética que hace referencia al hecho de que las señales corporales son usadas como entrada a un sistema de control que permite adaptar inteligentemente las respuestas, teniendo en cuenta los estados fisiológicos interpretados en tiempo real (Muñoz et al., 2021).

El desarrollo de sistemas fisiológicamente adaptativos ha sido propuesto como una solución que puede revolucionar el área de las interfaces naturales, permitiendo al sistema ser consciente de estados psico-fisiológicos determinantes como la atención o el estrés, y reaccionar de acuerdo a ellos, generando un sistema de control de lazo cerrado. Las señales fisiológicas pueden ser usadas como información complementaria para generar adaptaciones en tiempo real. Entre otras, la percepción subjetiva, el comportamiento de las personas, la información contextual y las señales fisiológicas, pueden ser usadas para describir sus estados psicológicos o emociones y crear adaptaciones en tiempo real. En un escenario de prueba, el usuario es modelado a través de cualquiera de las modalidades descritas y ésta información es enviada al sistema de adaptación, el cual modula la información que es visualizada a través de un dispositivo digital (computador, tablet, sistema de realidad virtual) y cierra el lazo de información. Es posible visualizar un ejemplo en la Figura 3.

Figura 3. Ejemplo de un sistema fisiológicamente adaptativo que se acopla con otras modalidades de captura de datos

Aunque existen múltiples desafíos desde el punto de vista ingenieril y tecnológico, como la necesidad de hacer los sensores más discretos y robustos, diversificar las técnicas de procesamiento de señal y mejorar su funcionamiento en tiempo real, crear algoritmos y modelos de aprendizaje de máquina que puedan procesar más datos en tiempos más cortos (Novak, 2014). La creación de nuevas técnicas de registro fisiológico y de extracción de información usable para la concepción de sistemas interactivos más naturales e inteligentes, se encuentra en la vanguardia del desarrollo de las ciencias computacionales y la interacción-humano computador.

3. Caso de Estudio

Voice User Application (VAL) (Martins, Brasiliano, & Fernandes, 2012) es una aplicación para ayudar a personas no nativas a aprender un idioma extranjero. Esta aplicación permite a cualquier persona interesada en entrenar la escucha, la comprensión de textos y la correcta pronunciación de palabras en otros idiomas, hacerlo mediante su uso. El proceso de desarrollo de la aplicación, basado en Cohen et. al. (2004) y en Lamel, Minker, & Paroubek (2000), comprende las siguientes fases:

 

  • Definición de requisitos. En la fase de Análisis de Requisitos, se realizaron numerosas reuniones con el equipo para comprender el problema a abordar. Los requisitos funcionales se dividieron según el actor involucrado: profesor o alumno. Así, las tareas asignadas al alumno son: solo escuchar el archivo de audio, correspondiente a una historia; escuchar el archivo de audio y seguir el texto; escuchar cada pregunta del cuestionario disponible después del audio y responder por voz; escuchar cada pregunta y seguir el texto simultáneamente y posteriormente, responder por voz.

En cuanto al docente, debe realizar las mismas funciones permitidas para los estudiantes además de: registrar usuarios (estudiantes) y registrar textos, audios y cuestionarios: registrar el texto, audio, el grado de dificultad del texto y también las preguntas que se relacionan al texto. En cuanto a los requisitos no funcionales, se establecieron los siguientes: usabilidad, disponibilidad y confiabilidad y desempeño.

  • Proyecto de alto nivel. Esta fase tiene como objetivo encapsular los requisitos de una manera más concreta para orientar el proyecto y tomar decisiones sobre estrategias y elementos de diálogo que pertenecen al proyecto, logrando consistencia. Sus pasos son:
    • Definición de criterios clave: a) una interfaz muy intuitiva, sin necesidad de formación en su uso; b) retroalimentación adecuada; c) alta tasa de reconocimiento de voz.
    • Estrategias de diálogo: el diálogo de la aplicación consistirá en presentar al usuario preguntas sintetizadas por text-to-speech; la respuesta a esta pregunta la dará el usuario por voz; la retroalimentación de la aplicación, con respecto a la respuesta correcta o no, será dada por el usuario en la comprensión del texto presentado previamente al usuario.
    • Elementos omnipresentes del cuadro de diálogo: si la aplicación tiene una tasa de reconocimiento baja en la entrada del usuario, debe haber un mecanismo para solicitar el reingreso del usuario.

Para visualizar mejor la arquitectura del sistema, a continuación se presenta la Figura 4.

 Figura 4. Arquitectura de la aplicación

La aplicación carga el texto referente a una pregunta y lo sintetiza en voz y lanza el audio al usuario. El usuario proporciona la respuesta correspondiente a esta pregunta a través de un micrófono (audio – IN). La aplicación, que ya ha cargado la gramática, consulta la base de datos y devuelve la respuesta, confirmando si el usuario respondió correctamente o no, por voz.

  • Proyecto detallado. En este paso, para cada diálogo, se deben describir algunos componentes, entre ellos: los avisos iniciales, la gramática de reconocimiento, el manejo de errores y la especificación de la acción. Un ejemplo de este proyecto detallado en relación con la aplicación, el uso de un cuestionario, se presenta a continuación en la Tabla 2.

Tabla 2.: Ejemplo de diálogo entre sistema y usuario

FALTA TABLA

Si el sistema no comprende lo que dice el usuario, es decir, si la confiabilidad de lo que dice el usuario no alcanza un nivel satisfactorio, por ejemplo, el 70%, entonces el sistema debe solicitar el reingreso de la respuesta del usuario (Tabla 3).

Tabla 3: Ejemplo de error de reconocimiento de voz del usuario

FALTA TABLA

  • Desarrollo. El archivo de gramática, que utiliza tecnología XML, es llenado dinámicamente por el sistema y describe todas las palabras reconocibles. La base de datos del sistema tiene como objetivo almacenar la gramática entendida por el sistema y también almacenar los datos registrados por los profesores: nuevos usuarios, textos, audios y preguntas. El registro de textos realizado por el docente referente a lo que el alumno debe leer, su respectivo audio (archivo .wav) y, además, el grado de dificultad (principiante, intermedio o avanzado). Después de registrar el texto, el docente deberá aportar las preguntas que conformarán la parte de escucha e interpretación del texto.
  • Pruebas y Tuning. Una vez realizado el desarrollo, cada uno de los componentes de la aplicación (es decir, el código de diálogo y el código de interacción) se prueban de forma aislada. Sin embargo, en esta etapa, las pruebas se refieren a verificar todo el sistema. Como mínimo, fue necesario realizar pruebas de aplicación, prueba de reconocimiento de voz y prueba de evaluación de usabilidad.

Después de completar la fase de prueba, ahora es posible instalar el sistema en el entorno del usuario. Este procedimiento se suele realizar en dos pasos: en la primera fase se instala el piloto, en la que se libera el sistema a un número limitado de usuarios (normalmente cientos). Se recopilan datos y el sistema se mejora a partir de esos datos. Después de la fase de ajuste, el sistema finalmente se lanza a todos los usuarios finales.

4. Conclusión

Este capítulo introduce los principios de diseño para la tecnología NUI, centrándose en todas las fases del ciclo de desarrollo para las aplicaciones asociadas. Posteriormente, se presentan los conceptos relacionados con la interacción gestual y, adicionalmente, el área de fisiología computacional, utilizando y analizando las señales corporales de los usuarios. Finalmente, el capítulo se complementa con un estudio de caso que cubre y ejemplifica todas estas etapas de desarrollo.

Cada dispositivo con interacción natural tiene sus propias peculiaridades, lo que hace que desarrollar sus aplicaciones sea un desafío. Sin embargo, es necesario tener en cuenta que el objetivo principal de desarrollar estas interfaces así como usar las interacciones asociadas, es hacer que la experiencia del usuario sea fácil y amistosa.

Los avances en las áreas de Procesamiento del Lenguaje Natural, Inteligencia Artificial, Procesamiento de Señales, Visión por Computador y otras áreas que apoyan las interfaces naturales, han permitido que la presencia de estas interfaces aumente en la vida cotidiana. Se prevé que en un futuro próximo, las interfaces naturales se integrarán fuertemente en el Internet de las cosas, Inteligencia Artificial y otras modalidades de interacción para mejorar la experiencia del usuario.

Hay muchas oportunidades y espacios para la innovación. Sin embargo, las personas sólo usarán las interfaces naturales de manera más efectiva si brindan una ganancia en agilidad en el desempeño de sus tareas.

Referencias

Abbott, K. (2002). Vui design principles and techniques. In Voice enabling web applications: VoiceXML and beyond (pp. 87–103). Berkeley, CA: Apress.

Allanson, J. (2002). Electrophysiologically interactive computer systems. Computer, 35(3), 60–65.

Anders, S. (2015). What are you really saying? Physician leadership journal, 2(2), 82.

Blake, J. (2011). Natural user interfaces. Net. Capítulo, 1, 6.

Céspedes-Hernández, D., González-Calleros, J. M., Guerrero-García, J., y Vanderdonckt, J. (2020). A grammar for specifying full-body gestures elicited for abstract tasks. Journal of Intelligent & Fuzzy Systems, 39(2), 2433-2444.

Chandler, J., y Schwarz, N. (2009). How extending your middle finger affects your perception of others: Learned movements influence concept accessibility. Journal of Experimental Social Psychology, 45(1), 123-128.

Cohen, M. H., Cohen, M. H., Giangola, J. P., y Balogh, J.  (2004). Voice user interface design.  Addison-Wesley Professional.

Cortez Vásquez, A., Vega Huerta, H., y Pariona Quispe, J. (2009). Procesamiento de lenguaje natural. Revista de investigación de Sistemas e Informática, 6(2), 45+. https://link.gale.com/apps/doc/A309314630/IFME?u=anon~90e1fd21&sid=googleScholar&xid=94195832.

Dasgupta, R. (2018).Voice user interface design (1st ed.). Apress.

Fernandez, R. A. S., Sanchez-Lopez, J. L., Sampedro, C., Bavle, H., Molina, M., y Campoy, P. (2016). Natural user interfaces for human-drone multi-modal interaction. In 2016 International Conference on Unmanned Aircraft Systems (ICUAS) (pp. 1013-1022). IEEE.

Goldin-Meadow, S. (1999). The role of gesture in communication and thinking. Trends Cogn Sci. Nov;3(11) 419-429. doi:10.1016/s1364-6613(99)01397-2. PMID: 10529797.

Granollers Saltiveri, T. (2017). Estilos y Paradigmas de Interacción. Curso de Interacción Persona-Ordenador: Basado en el Modelo de Proceso de la Ingeniería de la usabilidad y de la accesibilidad (MPIu+a). Lleida, ES. Recuperado de https://mpiua.invid.udl.cat/curso-ipo/modulo-8-temas-adicionales/curso-estilos-y-paradigmas-de-interaccion/.

Hansberger, J.T., Peng, C., Mathis, S. L., Areyur Shanthakumar, V., Meacham, S.C., Cao, L., y Blakely, V. R. (2017). Dispelling the Gorilla Arm Syndrome: The Viability of Prolonged Gesture Interactions. Virtual, Augmented and Mixed Reality (Ed. Lackey, S., Chen, J.), pp. 505-520, Springer International.

Kang, H., Lee, C.W., y Jung, K. (2004). Recognition-based gesture spotting in video games. Pattern Recognition Letters, 25(15), pp. 1701-1714.

Kawamoto, A. L. S., Marques, D., y Martins, V. F. (2020). Revisão Sobre Usabilidade em Sistemas de Interação Não-Convencional. Revista Ibérica de Sistemas e Tecnologias de Informação, (E26), 624-636.

Lai, J. (2000). Conversational interfaces. Communications of the ACM, 43(9), 24-27.

Lamel, L., Minker, W., y Paroubek, P. (2000). Towards best practice in the development and evaluation of speech recognition components of a spoken language dialog system. Natural Language Engineering, 6(3-4), 305-322.

Luger, E., y Sellen, A. (2016). «Like Having a Really Bad PA» The Gulf between User Expectation and Experience of Conversational Agents. In Proceedings of the 2016 CHI conference on human factors in computing systems (pp. 5286-5297).

Manresa-Yee, C., Ponsa, P., Varona, J. y Perales López F.J. (2010). User experience to improve the usability of a vision-based interface. Interact. Comput. 22(6): 594-605.

Martins, V. F., Brasiliano, A., & Fernandes, L. F. (2012). Interface do usuário baseada em voz como ferramenta para promover o ensino/aprendizagem de língua estrangeira. Revista Eletrônica do Alto Vale do Itajaí, 1(1), 34-42.

Mitra, S., y Acharya, T. (2007). Gesture recognition: A survey. IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews), 37(3), 311-324.

Myers, C. M., Furqan, A., y Zhu, J. (2019). The impact of user characteristics and preferences on performance with an unfamiliar voice user interface. In Proceedings of the 2019 CHI Conference on Human Factors in Computing Systems 1-9.

Norman, D.A. y Nielsen, J.. (2010). Gestural interfaces: a step backward in usability. Interactions 17, 5 (September + October 2010), 46–49.

Pearl, C. (2016). Designing voice user interfaces: Principles of conversational experiences(1st ed.). O’Reilly Media, Inc.

Saffer , D. (2008). Designing Gestural Interfaces: Touchscreens and Interactive Devices. O’Reilly.

Wachs, J.P., Stern, H.I, Edan, Y., Gillam, M., Handler, J., Feied, C., y Smith, M. (2008). A Gesture-based Tool for Sterile Browsing of Radiology Images, Journal of the American Medical Informatics Association, 15(3), 321–323.

Wigdor, D. y Wixon, D. (2011). Brave NUI World: Designing Natural User Interfaces for Touch and Gesture (1st. ed.). Morgan Kaufmann Publishers Inc., San Francisco, CA, USA.

Cowley, B., Filetti, M., Lukander, K., Torniainen, J., Henelius, A., Ahonen, L., Barral, O., Kosunen, I., Valtonen, T., Huotilainen, M., y otros. (2016). The Psychophysiology Primer: A Guide to Methods and a Broad Review with a Focus on Human–Computer Interaction. Foundations and Trends® Human–Computer Interaction, 9(3–4), 151–308.

Fairclough, S. H. (2009). Fundamentals of physiological computing. Interacting with Computers, 21(1–2), 133–145. https://doi.org/10.1016/j.intcom.2008.10.011

Kaniusas, E. (2012). Biomedical signals and sensors I: Linking physiological phenomena and biosignals. Springer Science & Business Media. https://books.google.es/books?hl=es&lr=&id=mht54dNjV5wC&oi=fnd&pg=PR5&dq=Biomedical+Signals+and+Sensors+I+Linking+Physiological+Phenomena+and+Biosignals&ots=IiNyVbQ7SB&sig=9on5OqD9AhWcP4UgT8FFUbXceG8

Mukhopadhyay, S. C. (2015). Wearable sensors for human activity monitoring: A review. Sensors Journal, IEEE, 15(3), 1321–1330.

Muñoz, J. E., Quintero, L., Stephens, C. L., y Pope, A. (2021). Taxonomy of Physiologically Adaptive Systems and Design Framework. International Conference on Human-Computer Interaction, 559–576.

Novak, D. (2014). Engineering Issues in Physiological Computing. In S. H. Fairclough & K. Gilleade (Eds.), Advances in Physiological Computing (pp. 17–38). Springer London. http://link.springer.com/chapter/10.1007/978-1-4471-6392-3_2

Pope, A. T., Stephens, C. L., y Gilleade, K. (2014). Biocybernetic Adaptation as Biofeedback Training Method. In Advances in Physiological Computing (pp. 91–115). Springer. http://link.springer.com/chapter/10.1007/978-1-4471-6392-3_5

Révész, G. E. (2012). Introduction to formal languages. Mineola, New York, Estados Unidos: Dover Publications, Inc.