martes, 17 de mayo de 2022

Wallets blockchain, robots y el riesgo de las metáforas

A la hora de explicar la tecnología, e incluso, a la hora de nombrar tecnologías, es relativamente frecuente el uso de metáforas.

Eso es bueno y malo a un tiempo, como vamos a ver ejemplificado en el empleo de la palabra 'wallet' (cartera o billetera) en el ámbito de blockchain y especialmente, refiriéndonos a criptomonedas como el bitcoin.


El papel de las metáforas


Dejando aparte alguna connotación mas de tipo literario, y que tienen que ver con la sugerencia o la belleza, el uso de la metáfora en un ámbito como el de la tecnología, pudiera tener, lo tiene en algún caso, un carácter casi pedagógico. Es decir, usar una palabra que conocemos de nuestra vida cotidiana nos puede servir para entender, o al menos aproximarnos a entender, un concepto tecnológico quizá más desconocido, quizá más complejo. El uso del término 'wallet' en el ámbito del blockchain, del que nos ocuparemos luego, puede ser uno de estos casos.

A veces, quizá demasiadas veces, el uso de la metáfora también tiene un cierto efecto 'marketing', publicitario, el hacer no sólo más próximo, sino también más atractivo un cierto producto o tecnología. El uso del término 'robótico' en el término 'automatización robótica de procesos', aun pudiendo ser considerado correcto, creo que también tiene un cierto efecto 'marketing', dar un baño de modernidad, casi futurismo, a una tecnología cuyas bases ya llevaban más de veinte años entre nosotros.

El uso pedagógico parece no sólo aceptable, sino muy positivo. El uso publicitario, también aceptable siempre que se haga con cierto rigor, es más fácil que nos lleve a errores y concepciones equivocadas, a veces incluso intencionadas.


Wallets, tokens y blockchain


En el mundo de blockchain, un wallet (cartera o billetera) es un software que utiliza un usuario para interactuar con la plataforma blockchain, por ejemplo, para operar con criptomonedas como el bitcoin. Lo que ve el usuario es una aplicación que le permite realizar transacciones, ver su estado 'financiero' (podríamos decir, 'criptofinanciero') y, en fin, operar de manera normal con sus criptomonedas.

Lo que ve la plataforma blockchain realmente son las claves pública y privada del usuario identificado por una dirección blockchain. 

Pero no. En esa billetera, en esa cartera, no hay bitcoins. Los bitcoins no residen en los wallets. Los bitcoins residen realmente en la propia plataforma blockchain, no en la aplicación del usuario ni en su dispositivo.

Así nos lo advierte Shermin Voshmgir en su libro 'Token Economy: How the Web3 reinvents the Internet' cuando dice: 


Contrary to popular belief, a blockchain wallet does not store any tokens. It only stores the public-private key pairs associated with your blockchain address.


El uso del término cartera o billetera sugiere un contenedor de dinero, monedas y billetes. Y es normal, pues, que cualquier usuario no especializado, pueda pensar que sus bitcoins residen en su móvil o su PC donde tiene instalada su cartera (wallet). La metáfora es lo que nos sugiere, al fin y al cabo. Pero, en esta ocasión, la metáfora, como ocurre con cierta frecuencia, nos confunde. Bien es verdad que, en este caso, creo que es una confusión menor, que en general no lleva a un malentendido profundo, a un mal uso o a unas consecuencias negativas.


El riesgo de las metáforas


El caso que he ilustrado de las wallets blockchain creo que es relativamente inocuo. Pero no siempre las metáforas llevan a errores menores.

En el ámbito de la inteligencia artificial y la robótica, campos muy de mi interés, creo que a veces esas metáforas, o el mal entendimiento de las mismas, pueden llevar y llevan a errores, a una percepción generalizada equívoca e, incluso, a riesgo de decisiones erróneas.  

Ya he tratado repetidamente, por ejemplo, las implicaciones de la antropomorfización. Ya he comentado cómo, en mi opinión, el planteamiento de una eventual fiscalidad a los robots nace, entre otras cosas, de un mal entendimiento del problema de la automatización en parte derivada de una visión humanizada de los robots y también he comentado la falacia del androide que puede llevar a tomar decisiones equivocadas en materia legal en torno a estos mismos robots.


Conclusión: el único camino posible


Ante ese riesgo de las metáforas, me gustaría pedir a fabricantes de tecnología, a consultoras, a speakers y a medios de comunicación, que fuesen cuidadosos y rigurosos en su uso. Me gustaría pedirlo y lo pido, pero sabiendo que tal petición va a caer inexorablemente en saco roto.

El único camino, creo, el único verdadero camino es, como tantas veces he dicho, el conocimiento

Si de verdad quieres entender, aplicar, opinar o legislar sobre una tecnología, preocúpate de conocerla. No te dejes llevar por frases hechas, por discursos enlatados, por mitos y leyendas. Estúdiala, conócela y, si puedes, pruébala tu mismo.

Así serás consciente de lo que en realidad hay y, ante una metáfora, dónde acaba la pedagogía y el verdadero paralelismo y dónde empieza el marketing, la fantasía o el equívoco.


lunes, 2 de mayo de 2022

La computación cuántica y el auge de las matemáticas

Vivimos un buen momento para las matemáticas.

Una disciplina que, pese a su indudable importancia, quizá no gozase ni de la atención ni del aprecio que merece en el pasado.

En mi época universitaria (vale, ya ha llovido desde entonces) elegir la carrera entonces denominada 'ciencias exactas' era una especie de acto de lateralidad. Era apartarse del flujo principal de los estudios universitarios para seleccionar una carrera poco demandada y que, en apariencia, condenaba las salidas profesionales únicamente a la docencia.


Álgebra lineal, machine learning y robótica.


Las cosas parecen haber cambiado, sin embargo. O deberían haber cambiado.

Parecen haber cambiado porque las matemáticas forman parte fundamental de algunas de las tecnologías más disruptivas y más de moda.

Ya hace algo más de un año, rendí en este blog un homenaje al álgebra lineal, una parte de las matemáticas de la que, en aquel artículo, destacaba su gran presencia e importancia en disciplinas como el machine learning, la realidad virtual/aumentada o la robótica.

No pueden entenderse estas disciplinas en profundidad sin acudir a matrices y tensores, a transformaciones lineales y espacios euclídeos. Se trata de disciplinas donde un ingrediente fundamental es el software y un software que, en buena medida, ejecuta algoritmos matemáticos y algebraicos.


 Computación cuántica y matemáticas


Pero si ya era poco con la inteligencia artificial y la robótica, resulta que lo que puede ser una de las tecnologías más disruptivas de futuro, la computación cuántica ('quantum computing'), se encuentra también dominada, y de qué manera, por las matemáticas.

Haces unos meses finalicé la lectura del libro 'Quantum Computing: An Applied Approach' de Jack D. Hidary, obra que reseñaré en algún momento, y ya me sorprendió un poco en ese momento hasta qué punto el libro parecía ser, en muchos momentos, más un tratado de matemáticas que de física o incluso computación propiamente dicha.

Me encuentro ahora leyendo el libro 'Dancing with Qubits' de Robert S. Sutor y me encuentro con una situación similar, quizá aún más explícita, en cuanto a la importancia de las matemáticas. En efecto, de los doce capítulos que componen esta obra, cinco, cerca de la mitad, son, sin el menor disimulo, un amplio repaso de matemáticas.  

Un repaso por los tipos de números (naturales, enteros, racionales, irracionales, reales y complejos) y por estructuras algebraicas (grupo, anillo, campo o espacio vectorial). Un recorrido por funciones y trigonometría. Un paseo por matrices y determinantes, por espacios vectoriales y transformaciones lineales. Y un remate con elementos de probabilidad. Todo un recorrido, casi nostálgico, por partes fundamentales de las matemáticas estudiadas durante mi bachillerato o primeros cursos de carrera.

Unas partes de las matemáticas que, muy lejos de ser una mera nostalgia, una suerte de 'vintage' científico, son parte fundamental de algo tan moderno y transformador como la computación cuántica.


Matemáticas como entendimiento y acción


Una demostración de que las matemáticas no son esa ciencia tan abstracta y marginal que en ocasiones ha parecido ser.

Una demostración no solo de rigor sino también de elegancia, de belleza y, quizá más importante, de que las matemáticas no buscan las definiciones y los teoremas por sí mismos como una suerte de divertimento intelectual, sino que buscan captar y entender nuestro mundo, un mundo real, rabiosamente real, y unas aplicaciones prácticas, unas tecnologías, que pueden cambiar, que cambian de hecho, el mundo en que vivimos.


A modo de cierre: las matemáticas y los jóvenes


No se si los docentes que trabajan con niños y con jóvenes son capaces de transmitir a sus estudiantes la belleza que anida en las matemáticas No sé si son capaces de hacerles ver que cosas en apariencia tan abstractas como las estructuras algebraicas tienen utilidad real. No sé si son capaces de poner esas teorías en conexión con el mundo real y con su traducción tecnológica, de forma que los estudiantes comprendan la importancia y utilidad de esta disciplina.

Y sería bueno que lo consiguieran. 

Por el interés y desarrollo de los propios estudiantes. 

Pero también como apoyo al desarrollo económico y tecnológico de nuestra sociedad. Porque si disciplinas como la inteligencia artificial y la computación cuántica encuentran sus fundamentos y su motor en las matemáticas, necesitamos muchas, muchas vocaciones en matemáticas. Necesitamos que nuestros jóvenes aprecien su belleza, su importancia y su aplicabilidad, y lo contemplen como una opción profesional interesante.

Necesitamos hacer llegar a los jóvenes el interés por las matemáticas.

Pero no estoy seguro de que lo estemos consiguiendo.


viernes, 29 de abril de 2022

El diálogo y las máquinas: de la línea de comandos a la fantasía telepática

Desde que se han comenzado a utilizar máquinas, en concreto máquinas que manejan información, ha sido necesario establecer mecanismos de comunicación entre las personas y las máquinas, unos mecanismos que, inicialmente, servían como medio para que las personas pudiesen dar órdenes o solicitar cosas a las máquinas (típicamente los computadores) y obtener los resultados.

Lo interesante, y lo que motiva este artículo, es principalmente, el auge de las interfaces de naturaleza conversacional y el advenimiento del BCI y, fantaseando, una eventual telepatía mediada por las máquinas.

Pero vayamos por orden.


La interfaz más básica: el CLI y la línea de comandos


Los primeros mecanismos de verdadera interacción (elimino como diálogo la introducción de programas o datos vía tarjeta perforada) se realizaron mediante interfaces textuales de comando (CLI, 'Command Line Interface'). Se trataba, se trata en realidad, de una forma de comunicación en cierto modo primitiva, en que los comandos se encuentran limitados a un juego acotado de opciones y en que la expresión es puramente textual apta para su uso en pantallas monocromas y con escasas capacidades gráficas del tipo de los venerados terminales IBM 3270 o DEC VT100.

Es el tipo de interfaz usada con frecuencia en sistemas operativos UNIX o la famosísima línea de comandos del DOS.

Lo cierto es que, a pesar de su sencillez y aparente rigidez, una vez que se conocen los comandos y se adquiere cierta rapidez de digitación, es enormemente rápido, eficiente y eso explica que sea un mecanismo que todavía sobreviva en la actualidad.


Asomándonos a las ventanas


Sin embargo, esas interfaces CLI han sido sustituidas, en gran medida, por las interfaces que utilizan la metáfora de las ventanas y que se apoyan no sólo en teclado sino también en ratón u otros dispositivos apuntadores como, hoy en día, las pantallas táctiles. Una metáfora, y una interfaz visual, cuya concepción se adjudica a XEROX, pero lanzada por Apple y popularizada por Microsoft.

Se trata del tipo de interfaz dominante hoy en día y la Web no ha hecho otra cosa, creo, que adoptarla, apoyarla y reforzarla.

Es una forma de interfaz muy intuitiva y que, además, hasta cierto punto, uniformiza la interacción con todo tipo de aplicaciones, facilitando su aprendizaje, al menos de los primeros pasos.

Eso sí, aunque es rápida en cuanto a aprendizaje, hay que reconocer que de cara a interacciones masivas, y una vez se tiene experiencia, es en muchos casos más lenta e incluso 'pesada' que la interfaz CLI.


El auge de las interfaces conversacionales y de la voz


Y entramos ya en los mecanismos más modernos, los que más me interesan ahora mismo, empezando por las interfaces conversacionales. Lo característico de estas interfaces es que el diálogo no se ajusta a un conjunto predeterminado de comandos (como en CLI) o de acciones (botones, menús, etc) de las interfaces de ventanas, sino que adopta un estilo abierto y natural, próximo (muy próximo en sus mejores realizaciones) al diálogo humano.

En sus expresiones primeras, este tipo de interfaces pueden apoyarse, incluso, en una línea de comandos pero que reciba las entradas en lenguaje natural, en lugar de comandos cerrados. O también, en interfaces del tipo ventanas (con sus botones, sus iconos, sus desplegables) como se encuentran con muchísima frecuencia, en chatbots que se apoyan en la web o sistemas de mensajería instantánea.

Pero quizá, lo más llamativo, más diferencial y quizá con más futuro, sean las interfaces en lenguaje natural basadas en voz, cada vez más comunes, por cierto.

De hecho, ha sido el leer esta cita: 


there is now a new era starting, where the main focus is on the ability of humans having conversations not only with other people but also with the services they are using in the human way.


en el libro 'Microsoft Conversational AI Platform' de Stephan Bisser lo que me ha inspirado este artículo.

Porque, tal y como apunta el autor, y creo que está en lo cierto, vamos a asistir a un creciente uso de este tipo de interfaces de naturaleza conversacional, especialmente las de voz. 

En entornos profesionales o empresariales, veo esa proliferación principalmente en soluciones para gran público o en atención a cliente, o en tareas que no impliquen manejar mucha información o una interacción muy continua. Así, veo por ejemplo su uso para dar órdenes concretas a un robot o para consultas puntuales. En el caso de un trabajo continuado como el que hacemos hoy en día con el ordenador, creo que en muchos casos va a ser casi más rápido y cómodo seguir usando interfaces de tipo ventana o incluso CLI. Al menos yo, personalmente, no me veo durante horas hablándole al ordenador. 

Pero, sobre todo, veo un gran auge en los entornos domésticos y de ocio. Imagino un cada vez mayor uso de estas interfaces en todo tipo de dispositivos, dispositivos crecientemente más robóticos, como aspiradores, frigoríficos, televisores, coches, reproductores de música, accionadores domóticos, etc

Y, por supuesto, en los robots sociales que tanto me interesan y que con tanta frecuencia se asoman a este blog.


Las máquinas hablan entre sí: Internet de las Cosas


Y un breve apunte. No sólo las personas hablamos con las máquinas, cada vez más las máquinas hablan entre sí.

En realidad, casi desde el inicio de la informática, ha existido la comunicación entre máquinas, entre ordenadores.

Pero hoy día, con la omnipresencia de internet, con la eventual y esperada explosión del Internet de las Cosas, y con la existencia de más y más dispositivos y más y más inteligentes y autónomos, ese diálogo entre máquinas puede extenderse y puede ser, además, un diálogo crecientemente autónomo, sin necesidad de mucha intervención humana.


La última frontera: BCI y la fantasía telepática


Y finalizo este recorrido, con la forma quizá más moderna y desafiante de comunicación, aquella en que la interacción se produce de manera directa entre las máquinas y el cerebro o sistema nervioso humanos, sin la mediación del lenguaje hablado o escrito o de acciones físicas con las manos. Directo: del cerebro a la máquina o de la máquina al cerebro y/o sistema nervioso. Hablo del BCI ('Brain Computer Interface') una tecnología con mucha investigación detrás y con algunas realizaciones prácticas y muy inspiradoras como su empleo en rehabilitación o en alivio de síntomas de enfermedades como el Parkinson. Una tecnología popularizada, no sé si de la mejor manera, por Elon Musk y su Neuralink.

Una tecnología apasionante desde el punto de vista estrictamente científico y técnico, con aplicaciones interesantísimas, pero que hay que reconocer que intimida un poco, y que exige un uso controlado y ético.

Y un tipo de interfaz que, en cierto sentido, va del pensamiento a la máquina.

Y puestos a elucubrar, en el campo un poco de la ciencia-ficción, una tecnología que podría llegar a habilitar una especie de telepatía. 

Si la máquina fuese capaz de entender con detalle lo que está pensando una persona (hoy en día reconoce sólo algunas intenciones muy básicas, por ejemplo, de tipo motor) y fuese capaz de transmitir eso a otra persona, ya fuese directamente al cerebro o, indirectamente, mediante una expresión lingüística, estaríamos ante una suerte de telepatía, una telepatía, eso sí, no persona a persona directamente sino intermediada por máquinas.


Conclusiones


El diálogo está servido. Y las máquinas se han unido (las hemos unido, para ser más exactos) a ese diálogo.

Un diálogo entre humanos y máquinas y un diálogo entre las propias máquinas.

Un diálogo cada vez más sofisticado tecnológicamente, pero más natural desde el punto de vista humano.

Hemos recorrido un largo camino, partiendo de la muy eficiente pero algo primitiva línea de comandos, para llegar al auge de las interfaces conversacionales especialmente por voz y fantasear con la posibilidad de que el BCI conduzca algún día a una suerte de telepatía.

¿Qué nos traerá el futuro?


miércoles, 27 de abril de 2022

Ocho líneas de evolución de la Automatización Robótica de Procesos (RPA)

En el post anterior, identificábamos algunos retos y líneas de evolución de los robots conversacionales.

¿Qué tal si ahora echamos un vistazo a las líneas de evolución de la otra gran familia de robots software, tal y como los identifico en mi libro 'Robots en la sombra'? ¿Qué tal si ahora miramos a la Automatización Robótica de Procesos (RPA)?

La casualidad ha querido que justo ayer finalizase la lectura del libro 'Robotic Process Automation Projects: Build real-world RPA solutions using UiPath and Automation Anywhere' de Nandan MulakaraArun Kumar Asokan, una obra sin apenas teoría, muy volcada, simplemente, en mostrar en detalle casos concretos de uso de dos herramientas concretas, UiPath y Automation Anywhere.

Sin embargo, justo en el apéndice final sí se entra a identificar algunas de las tendencias y líneas de evolución de RPA y esto es lo que voy a recoger en este post: la visión de estos dos autores en cuanto a la evolución de este tipo de soluciones. 

Conviene advertir, no obstante, que aunque el libro es bastante moderno (fue publicado en 2020), el campo de la Automatización Robótica de Procesos se mueve de una manera tan vertiginosa que las tendencias de un momento se quedan obsoletas en seguida o, por lo menos, dejan de ser tan 'cool'.

Aún así, resumo las tendencias que estos dos autores identifican, que creo que todavía resultan relevantes.


1. RPA como plataforma


Los autores no le dan categoría de tendencia pero sí afirman que las soluciones de RPA actuales, cada vez se convierten más en unas plataformas de automatización donde se van encajando nuevos componentes que añaden nuevas tecnologías y capacidades.

Esto, en efecto, es así, y las plataformas, aparte de las capacidades típicas de RPA (como el 'screen scraping') ofrecen soluciones de desarrollo 'low-code' de robots, soluciones de despliegue y operación de robots y, en ese marco general, permiten incorporar componentes (por ejemplo, actividades y paquetes en UiPath), que se integran de manera natural en la plataforma pero extienden sus capacidades (por ejemplo, con motores OCR de otros fabricantes, con algoritmos de Machine Learning o con conectores a todo tipo de soluciones corporativas).


2. Hiperautomatización


Aunque, de nuevo, los autores no lo identifican exactamente como una tendencia, sí mencionan este concepto holístico definido por Gartner donde los autores opinan que RPA puede actuar como capa de orquestación. 


3. Inteligencia Artificial


Los autores, apoyándose, por ejemplo, en informes de Deloitte, identifican la creciente inclusión de capacidades de inteligencia artificial, específicamente, algoritmos de machine learning y capacidades de procesamiento de lenguaje natural.


4. Procesamiento de documentos


En realidad como un subconjunto de la anterior, se apunta al uso creciente de técnicas de inteligencia artificial en el tratamiento y obtención de información de documentos, ya sea de manera directa o incorporando soluciones de OCR e ICR de fabricantes como Abby, Hyland, Kofax o Hyperscience.


5. Inteligencia Artificial Conversacional


Y como otro subconjunto del uso de la Inteligencia Artificial, se apunta a las capacidades conversacionales, especialmente orientadas a la interacción con clientes, incorporando elementos de NLU ('Natural Language Understanding').

En lo que yo puedo observar, y lo entiendo más como una dinámica de mercado que tecnológica, esta incorporación de capacidades conversacionales se lleva a cabo más como una integración con soluciones de chatbots o IA conversacional existentes que como desarrollo de esas capacidades de manera nativa en las plataformas RPA.


6. Process mining y process discovery


Esta tecnología, que analiza mediante ciencia de datos y machine learning la información de los logs de sistemas que automatizan procesos es, en efecto, una tendencia fortísima, y cada vez más fructífera del campo del BPM ('Business Process Management') como conté en el artículo 'Process mining: la ciencia de datos aplicada a la mejora de procesos de negocio y su robotización' publicado en el blog de Telefónica Grandes Empresas.

Aparte de la tendencia en sí misma al desarrollo del Process Mining, también es cierto que algunas las plataformas de RPA incorporan ya su propia solución de Process Mining e incluso de Task Mining. Ahí tenemos por ejemplo las soluciones de UiPath en ese campo que son muy destacadas.


7. RPA como servicio (RPAaaS, RPA as a Service)


Y, casi como no podía ser de otra manera en el mundo tecnológico actual dominado por el cloud y las plataformas de servicio, otra tendencia es el ofrecimiento de los robots como servicio, algo que se hace también en el caso de robots industriales, pero que, en este caso, se refiere a servicios de automatización basados en robots en la nube, una tendencia a la que también apuntaba yo en mi libro 'Robots en la sombra' como un modelo de negocio robótico.


8. Mercados RPA (RPA marketplaces)


Finalmente, los autores destacan la existencia de los marketplaces ligados a las plataformas de automatización RPA como las propias UiPath o Automation Anywhere, unos entornos en que, de manera muy similar a las App Store de Apple o Google, se pueden encontrar robots, actividades y conectores reutilizables para incorporar en nuestras automatizaciones.

Unos componentes en ocasiones ofrecidos por los propios fabricantes de las plataformas RPA, pero en otros casos creados por los fabricantes de soluciones corporativas (CRM, ERP, Ofimática, etc) que desean ofrecer una fácil incorporación de sus productos a un entorno de automatización y, finalmente, unos componentes que también son ofrecidos por terceros: integradores, desarrolladores independientes, etc.

Todo un ecosistema que refuerza esa visión de las soluciones comerciales de RPA como plataformas de automatización, como veíamos en el primer punto.


Conclusiones


Como decía en el encabezado, el mundo de las soluciones de RPA está en un movimiento vertiginoso a nivel tanto tecnológico, como funcional, de competencia y de mercado y, a medida que gana peso, cada vez abandona más su posición de nicho para incorporarse a las grandes corrientes tecnológicas e integrarse con otro tipo de soluciones.

Un mercado éste de RPA, divertido de seguir. 



lunes, 25 de abril de 2022

Diez retos y líneas de evolución de los agentes conversacionales

Todo la disciplina de la Inteligencia Artificial se encuentra en rápida evolución. Eso incluye  todo el campo relativo al procesamiento del lenguaje natural y de la voz y alcanza de lleno, por tanto, al mundo de los agentes conversacionales, ya sean estos chatbots, voice bots, robots sociales o, en general, las diferentes formas de agentes que identificamos en el artículo 'Cinco tipos de agentes conversacionales'.

Nos preguntamos ahora cuáles son las principales áreas de trabajo, los principales retos a que se enfrentan hoy en día los científicos, técnicos y lingüistas que trabajan en este campo de los agentes conversacionales.

Al final de su libro 'Conversational AI. Dialogue systems, conversational agents and chatbots', el profesor Michael McTear identifica diez retos o direcciones de futuro para los sistemas dialógicos (sistemas de diálogo o agentes conversacionales).

Veámoslos muy brevemente.


1. Multimodalidad


La mayoría de los agentes conversacionales utilizan fundamentalmente dos modalidades: el texto y la voz. Sin embargo, la interacción persona-máquina puede involucrar otras modalidades como son el tacto, las imágenes o el vídeo.

En este empeño, se distingue entre lo que se denomina la fusión multimodal, es decir, el procesamiento de una entrada multimodal, y la fisión multimodal, que se ocupa de la salida multimodal

Algunas de las ventajas de esta multimodalidad son la flexibilidad, permitiendo al usuario elegir la forma de entrada que más le convenga y la reducción de errores y problemas asociados a la referencia anafórica, al disponer el agente de nuevas entradas, como el feedback visual, para la desambiguación. 


2. Diálogo visual


Se trata de la combinación de la visión artificial con la inteligencia artificial conversacional de forma que los agentes conversacionales puedan mantener un diálogo con los humanos sobre un contenido visual. Esto puede aportar mucho en áreas como la robótica o la ayuda a personas con limitaciones visuales.


3. Entrenamiento con datos escasos


Se trata de conseguir entrenar a sistemas o algoritmos conversacionales, muy demandantes habitualmente en datos, con unos datos escasos. Se experimenta con diferentes algoritmos y mecanismos, que incluyen el transfer learning pero buscan también otras alternativas.


4. Gráficos de conocimiento


Se trata de que los agentes conversacionales dispongan de conocimiento del mundo exterior, un conocimiento que no se limite, como sucede en muchas implementaciones actuales, a la información que han obtenido en conversaciones o interacciones previas.

Una forma de representar ese conocimiento es mediante árboles como el Google Knowledge Graph lanzado en 2012 y para el que el autor nos aporta el dato (seguramente ya superado) de que contiene 500.000 millones de hechos ('facts') sobre más de cinco mil millones de entidades.


5. Razonamiento y resolución de problemas colaborativos


Se trata de conseguir la colaboración entre el agente conversacional y otros agentes externos (incluyendo los humanos, claro) lo que implica que el agente sea capaz de razonar no sólo sobre sus propias acciones sino también sobra la de el o los agentes con que colabora.


6. Fenómenos en el discurso y el diálogo


McTear agrupa bajo este epígrafe una serie de elementos dispersos que afectan al diálogo y la conversación. 

Así nos habla, por ejemplo, de las problemáticas de referencia a objetos y entidades de diversas formas (co-referencia, referencia anafórica, etc)

También se refiere a problemáticas y retos como son la detección de cambios en la materia de la conversación, las conversaciones con múltiples intervinientes (no solo dos), procesado incremental (anticiparse a lo que el humano u otro agente va a decir) y al cambio de turnos en el diálogo.


7. Sistemas conversacionales híbridos


Se trataría enfoques que combinarían en la conversación las tres grandes formas actuales de implementar la estrategia de la conversación: basada en reglas, estadística y neuronal, tres formas a cuya explicación el autor ha dedicado gran parte de su libro en capítulos precedentes al abordaje de los retos y tendencias.


8. Diálogo con robots sociales


El diálogo en el caso de los robots sociales ofrece  algunas particularidades. Una de ellas, que ya mencionábamos en un artículo anterior, es que éstos son capaces de detectar y utilizar elementos de lenguaje no verbal como los gestos, la distancia o el movimiento.

Además, en el caso de los robots sociales, además de la interacción cara a cara (lo que denomina el micro entorno) se suele disponer de información procedente tanto de sus sensores como la accesible a través de internet, lo que constituye el macroentorno. 


9. Diálogo e Internet de las Cosas


Se trataría ahora de la incorporación de elementos conversacionales en más y más dispositivos interconectados mediante Internet de las Cosas. Estos elementos conversacionales proporcionan interfaces más naturales a esos dispositivos y, por cierto, formarían parte decisiva de lo que he llamado 'la explosión robótica'. 


10. Problemáticas sociales y éticas


Finalmente, se recogen las problemáticas de naturaleza social y ética como la adquisición de comportamientos inadecuados, los sesgos, la prevención de salidas ofensivas, el uso para extender noticias falsas, etc y también las posibilidades de su uso para el bien.


Conclusión


El campo de los agentes conversacionales, con mucho foco en el tratamiento del lenguaje, es un área apasionante dentro de la inteligencia artificial, tanto por sus grandes posibilidades de aplicación como porque, quizá, el lenguaje es una de las manifestaciones más tangibles de inteligencia.

Hay mucha investigación, experimentación e implantación en marcha y, seguro que, en los aspectos que menciona McTear, y en algunos otros, vamos a ver cosas sorprendentes y emocionantes en los próximos meses y años. 


miércoles, 20 de abril de 2022

Cinco tipos de agentes conversacionales

Cuando hablamos de agentes conversacionales, estamos utilizando un término más o menos genérico en el cual, normalmente, estamos pensando en chatbots y su variante con voz, los 'voicebots'.

Y no es mala aproximación práctica, pero en realidad, hay algo más.


Sobre agentes conversacionales


Sin pretender proporcionar una definición rigurosa ni académica, cuando hablamos de agentes conversacionales, estamos pensando en un tipo de entes artificiales que son capaces de mantener una conversación razonablemente natural con seres humanos.

Esta conversación puede ser llevada a cabo, y en los chatbots más tradicionales es así, mediante texto y algunos otros elementos propios de las interfaces de usuario más o menos tradicionales (menús, imágenes, 'emojis', etc), pero crecientemente se usa el puro lenguaje natural y, muy especialmente, la comunicación de 'viva voz'.

Con frecuencia, este tipo de agentes son robots software, tal y como detallo en mi libro 'Robots en la sombra' pero en algunos casos, como el de los altavoces inteligentes, tienen un soporte hardware más especializado.

Y como sustrato tecnológico de este tipo de soluciones, encontramos fuertes dosis de inteligencia artificial, muy especialmente del campo del procesamiento de lenguaje natural (NPL, 'Natural Language Processing') y del reconocimiento de voz (ASR, 'Automatic Speech Recognition').

Y, en ocasiones, las más avanzadas, también utilizan inteligencia artificial para la gestión de la conversación propiamente dicha o para detalles como el análisis de sentimiento.


Los tipos de sistemas dialógicos de Michael McTear


En realidad, esas habilidades conversacionales o dialógicas (capacidad de dialogar) se pueden, con la misma base tecnológica, embeber en una gran variedad de productos y soluciones finales lo que nos puede llevar a buscar algún tipo de identificación o clasificación de estos agentes conversacionales.

Leyendo el libro 'Conversational AI. Dialogue systems, conversational agents and chatbots' de Michael McTear me encuentro, precisamente, con una suerte de clasificación de ese tipo. Bien es cierto que, el propio autor declara que no pretende una verdadera clasificación sino, más bien, y con una perspectiva de evolución histórica, identificar líneas y comunidades de trabajo que han evolucionado de manera bastante paralela e independiente. Además, estrictamente hablando, él no usa en este caso el término agente conversacional ('conversational agent'), sino lo que he traducido como sistema dialógico ('dialogue system'), pero creo que no es erróneo usar ambos términos como sinónimos.

Pues bien, en esa especie de clasificación, McTear identifica cinco categorías o, más bien, etapas o comunidades:

  • Sistemas dialógicos hablados y basados en texto: que recoge los primeros trabajos, realizados principalmente en laboratorios de universidades y empresas, y que son sistemas dialógicos frecuentemente textuales (a veces puro texto sin más 'adorno') pero también incluyendo diálogos mediante voz. En este apartado habría realizaciones incluso desde los años sesenta y setenta.

  • Interfaces de usuario de voz: Sistemas basados en voz y con una vocación mucho más comercial que los anteriores (que estaban más centrados en la investigación), con unas capacidades de conversación bastante limitadas y orientadas a soporte telefónico o tareas muy rutinarias.

  • Chatbots: Desde el mítico ELIZA hasta la actualidad, unos agentes con capacidades conversacionales más avanzadas y, sobre todo, naturales.

  • Agentes conversacionales personificados (ECA, 'embodied conversational agents'): Estaríamos en este caso hablando de unos agentes que yo suelo denominar avatares y que lo que añaden, más que capacidades lingüísticas, es una representación visual humana realista, mediante animación por ordenador,  y que incluye elementos que apoyan la conversación como la expresión facial, gestos con las manos, etc que enriquecen la conversación con elementos no verbales.

  • Robots sociales y agentes ubicados ('situated agents'): Se trata de robots físicos, normalmente de aspecto humanoide o zoomórfico, orientados a la interacción social con humanos y que, además de las capacidades de gestionar el lenguaje natural y la voz, añaden ahora posibilidades de reconocimiento del interlocutor y sus emociones y también del uso del lenguaje no verbal (gestos, movimiento, distancia) de una forma cada vez más similar a lo que haría un humano.


En conclusión


Ya se aprecia que, en realidad, lo que ofrece McTear no es exactamente una taxonomía de agentes conversacionales. Aún así, me ha resultado interesante en dos aspectos.

En primer lugar, me ha llamado la atención, y estoy plenamente de acuerdo, el que incluya ya a los robots sociales como un caso de agente conversacional.

En segundo, me resulta interesante constatar cómo, a las capacidades lingüísticas basadas en el lenguaje verbal con el soporte tecnológico del procesamiento del lenguaje natural y la voz, se une en el caso de los dos últimos grupos, avatares y robots sociales, el uso del lenguaje no verbal para lo cual se usa un cuerpo físico real, en el caso de los robots sociales y otro simulado o animado en el caso de los avatares. En cualquier caso, se intenta el enriquecimiento de la conversación mediante el lenguaje no verbal.

Por lo demás, creo que las capacidades conversacionales en todo tipo de agentes y dispositivos, se van a generalizar cada vez más, como parte de esa explosión robótica de la que ya he hablado con anterioridad y que quizá, quizá, en el futuro pueda ir perdiendo relevancia la idea del agente conversacional...porque casi todos los agentes lo serán.


lunes, 18 de abril de 2022

Klara o la relación robots-personas desde el punto de vista del robot

En esta Semana Santa, he aprovechado para leer la novela 'Klara y el sol' del Nóbel de origen japonés, aunque afincado en Reino Unido, Kazuo Ishiguro.

Una novela que se puede encuadrar, creo, dentro de la ciencia-ficción, que me ha gustado y que en su momento reseñaré en otros de mis blogs, en concreto el dedicado a literatura y humanidades: 'El cielo del Gavilán'.

Sin embargo, hay algunos elementos argumentales de la novela que guardan estrecha relación con temas no específicamente literarios y que he venido tocando con frecuencia en este blog durante los últimos dos años aproximadamente. Temas que tienen que ver con los robots, los robots sociales, los robots humanoides, la relación robots-personas y las implicaciones filosóficas y éticas que trae consigo esta relación.

No puedo profundizar mucho en alguna reflexión que me ha suscitado la novela sin desvelar demasiado acerca de la historia que nos cuenta, así que me contendré, pero sí quería, aunque fuese superficialmente, apuntar un tema que me ha parecido interesante.


Acerca de la novela 'Klara y el sol'


Novela 'Klara y el sol'
No quiero ser, como digo, muy explícito en la explicación del argumento de 'Klara y el sol', para no desvelar nada a aquella persona que no haya leído la novela pero que desee hacerlo en algún momento.

Sí puedo decir, sin caer, creo, en el 'spoiler', algún detalle que es poco más que lo que ya anuncia la contraportada del libro en su edición de Anagrama.

Klara es lo que en la novela denominan una AA ('Amiga Artificial'), es decir, un robot humanoide pensado para acompañar a niños (aunque el hecho de que se trate de un robot humanoide es lo que se deduce sin lugar a dudas pero lo cierto es que la palabra 'robot' sólo aparece en la novela muy al final y el término humanoide no lo hace en ningún momento) .

Un robot humanoide que, conviene decirlo, es muchísimo más avanzado que ningún robot de que dispongamos realmente en la actualidad ni que parece viable dispongamos en un plazo breve... puede que nunca. Se trata de un robot inteligente, consciente y puede que incluso sensible.

Un robot en el que, además, como se deduce de su función, juega un papel crucial todo lo que tiene que ver con sus habilidades sociales y su relación con las personas. 


Relación robots-personas (Human-Robot Interaction, HRI)


La relación robots-personas ('Human Robot-Interaction', HRI) por sus siglas en inglés, es una disciplina compleja e interesantísima, que estudia esa interacción entre humanos y robots y la mejor forma de diseñar a éstos últimos para una relación natural y satisfactoria con las personas.

Kazuo Ishiguro
Se trata de una rama de estudio que en el fondo es multidisciplinar, donde se aúnan elementos técnicos con otros psicológicos e incluso sociológicos y antropológicos.

Una rama donde de tienen en cuenta la detección y expresión de emociones, el uso del espacio, del movimiento, de la mirada, de la distancia social y tantos y tantos elementos que configuran la interacción social entre humanos... y que por tanto intentan imitar los robots.

En general, en HRI se parte de entender cómo se desarrollan las relaciones entre humanos para intentar trasladar las conclusiones al comportamiento que deberían exhibir los robots y que éstos utilicen el lenguaje, los gestos, la distancia, la iniciativa etc de una forma similar a los humanos, de manera que el comportamiento social de estos robots sea natural, aceptable por los humanos y efectivo en la relación.

Por decirlo de alguna forma, la perspectiva en el fondo es la humana. Entendemos los gustos y necesidades de los humanos e intentamos trasladar las conclusiones al diseño y comportamiento del robot.

Pero, realmente, no nos importa mucho el robot en sí mismo, siempre que exhiba el comportamiento adecuado. Y eso es así, y probablemente sea lo correcto, porque en el fondo el robot es una máquina a la que no le atribuimos ni consciencia, ni sentimientos, ni verdadera autonomía ni, pese a los interesantes debates al respecto, agencia moral ni mucho menos paciencia moral. 


La perspectiva de Klara


Y de los varios aspectos que me han llamado la atención de 'Klara y el sol', algunos de los cuales llaman a una reflexión profunda, sólo traeré a colación en este post un  aspecto muy concreto y quizá, seguramente, no el más importante.

Toda la novela está narrada en primera persona. Es Klara quien nos cuenta su historia. Es el robot quien explica sus vivencias y su interacción con los humanos.

Y, en ese sentido, es un más que interesante cambio de perspectiva para esa relación robots-personas. Ya no se enfoca desde el humano hacia al robot, sino que en este caso se hace desde el robot hacia el humano.

Y observar el comportamiento humano desde la perspectiva del robot nos puede llevar a preguntarnos si ese comportamiento humano es correcto, si es ético o moral el comportamiento que los humanos tienen con Klara. De la misma forma que ya hoy en día hay planteamientos filosóficos serios acerca de si es admisible desde un punto de vista ético maltratar a un robot (con una respuesta en general negativa) y qué dice ese maltrato de la moralidad del humano, la novela 'Klara y el sol' podría llevar a afinar aún más el cuestionamiento acerca de qué es ético y qué no en la relación con los robots. 

Se trata de un debate especulativo e hipotético porque, como digo, no existe ni de lejos en la actualidad ningún robot comparable con Klara, pero que, en el fondo, y como muchos debates que tienen que ver con la ética de los robots, al final lo que nos conducen es a preguntarnos realmente sobre la naturaleza humana y sobre lo que es ético o no para los humanos.


Conclusión


Me quedo con las ganas de ser más explícito en lo que he contado en el post y también de trasladar otras ideas, reflexiones e incluso sentimientos que me ha provocado la lectura del 'Klara y el sol'. Pero lo dejaré como está, apenas una insinuación, para no privar a nadie del placer de leer esta novela y de reflexionar, con seriedad, sobre ella.