lunes, 22 de julio de 2024

Big stream: procesamiento de datos en tiempo real para un mundo de dispositivos y sensores

Cuando hablamos de procesamiento de datos, especialmente de analítica, y de tratamiento de grandes datos, tendemos a pensar, y la verdad es que es bastante razonable, en un almacén de datos, más o menos ordenado, sobre el que lanzamos consultas o algoritmos de machine learning para obtener indicadores, resúmenes, tendencias o predicciones.

Pero no siempre es así. Existen cada vez más casos de uso, y más posibilidades, de explotar y analizar flujos de datos en tiempo real.

Vayamos poco a poco.


Almacenes de datos 


Desde casi los primeros tiempos de la informática han existido los almacenes de datos. Inicialmente eran meros ficheros pero muy pronto la necesidad de tratar datos en abundancia, garantizando su coherencia y escalabilidad llevó a la invención de las bases de datos, y con ellas, los Sistemas de Gestión de Bases de Datos (SGBD), de entre las cuales, las 'reinas' fueron, y en el fondo casi que siguen siendo, las bases de datos relacionales con sus sistemas de gestión de bases de datos relacionales. Sobre esas bases de datos relacionales, se podían ya hacer consultas, informes y análisis.

Sin embargo, a medida que el volumen de datos crecía y la complejidad de los análisis también, hacer analítica sobre la misma base de datos relacional operativa generaba problemas de prestaciones. Por ello, y como explico en mi primer libro 'La carrera digital', surgieron, en primer lugar los ODS ('Operational Data Store'), meras réplicas de una base de datos pero físicamente soportada en ficheros diferenciados.

Y luego, con la misma motivación de prestaciones, pero impulsado también por el interés en mejorar las capacidades analíticas, y de la mano de los conceptos de Business Intelligence y OLAP ('Online Analytical Processing') surgieron los denominados datamarts o datawarehouses, creo que a finales de los años 90.


Big Data y datalakes


Y en eso llegó el Big Data que, en el fondo, y en cuanto a utilidad y resultados, casi aspira a lo mismo que el Business Intelligence pero que surge en un entorno nuevo, donde el volumen de datos, que ya era grande, explota hacia niveles muy superiores y donde, sobre todo, cobran enorme importancia los datos semiestructurados (ficheros XML y JSON, por ejemplo) y no estructurados (texto libre, imágenes, vídeos, etc) y todo esto unido a una exigencia cada vez mayor de disponer de análisis en tiempo real, superando los típicos informes basados en datos del día anterior tan comunes usando datawarehoueses.

Esto da lugar al concepto de Big Data, donde las tres ideas expresadas se recogen en las famosas tres Vs de Doug Laney, Volumen, Variedad y Velocidad, a las que, de una forma algo espuria en mi opinión, luego se le han ido añadiendo otras Vs.

Asociado a Big data tenemos otra forma de repositorio de datos: los famosos datalakes que, en concepto, no son muy diferentes de los datamarts o datawarehouses pero que experiementan ese incremento en volumen y variedad de datos.


Big Stream


Sin embargo, y un poco 'a la chita callando' se va desarrollando un concepto, muy unido al Big data, pero en el fondo bastante diferente: el del 'Big stream', que se centra en el procesamiento de datos pero no unos datos contenidos en un repositorio sino unos datos que van llegando en tiempo real en una suerte de flujos de datos.

Leo acerca de este concepto en 'Internet of things: architectures, protocols and standards' de Simone Cirani, Gianluigi Ferrari, Marco Picone y Luca Veltri donde los autores comparan el concepto de big data con el de big stream y nos dicen:


The main differences between the Big Data  and Big Stream paradigms are the nature of data sources and the real-time/latency requirements of the consumers.


En efecto, hay que diferenciar el origen de datos que, en el caso del Big Data tienden a ser sistemas de información más o menos convencionales, mientras que en el caso del Big Stream con frecuencia, aunque no exclusivamente, hablamos de información procedente de sensores y dispositivos, con frecuencia en estrecha conexión, por tanto, con el mundo físico.

La segunda diferenciación, igualmente relevante, son los requisitos de latencia (es decir, la necesidad de una rápida respuesta) y de funcionamiento en tiempo real, algo que es habitual en la interacción con el mundo físico, especialmente en aplicaciones críticas.

En la misma obra, y poco después, los autores nos amplían esa comparativa diciendo:


In brief, while both Big data and Big Stream systems deal with massive amounts of data, the former focuses on the analysis of data while the latter focuses on the management of flows of data


En efecto, ambas tecnologías, Big Data y Big Stream, tratan con grandes cantidades de datos, pero mientras que en el Big Data más tradicional éstos tienden a estar ya recogidos en algún tipo de almacén de datos (típicamente un datalake), en el caso del Big Stream nos llegan como flujos en tiempo real y el volumen no deriva tanto del tamaño de cada bloque de información sino de la hiper-abundancia y continuidad de esos bloques de información.

No es extraño encontrar una explicación sobre Big Stream en un libro de Internet de las Cosas porque, seguramente, éste sea el campo donde más sentido adquiere para procesar toda la abundantísimo información que generan 'las cosas' que incluyen, por ejemplo, dispositivos y sensores para telemedida. 

Sin embargo, no es éste el único, y así, en el post 'Stream Processing – Tecnologías y Comparativa' Óscar Fernández nos identifica otra serie de usos


  • Monitorización de sistemas, de redes y de aplicaciones
  • Dispositivos Internet of Things (IoT)
  • Sistemas de recomendación y optimización de resultados
  • Transacciones financieras, detección de fraude y trading
  • Seguimiento de usuarios en páginas web y comercio electrónico
  • Notificaciones en dispositivos y aplicaciones móviles en tiempo real


No voy a profundizar aquí, aunque es muy interesante, en los retos técnicos que esto supone y me quedo, de momento, con resaltar este interesante y prometedor concepto de Big Stream


Conclusiones


Aunque menos popular que el Big Data, el Big Stream es una forma de procesamiento de datos que, probablemente, vaya adquiriendo más y más importancia (aunque no sé si relevancia mediática) a medida que se expandan Internet de las Cosas y los sistemas ciber-físicos, y que incorporemos, por tanto, más y más dispositivos y sensores a la 'conversación y, por tanto, a la creación de datos.


jueves, 18 de julio de 2024

Machine Learning en producción: diferencias con la investigación

Leyendo literatura especializada sobre inteligencia artificial y machine learning, incluyendo libros bastante técnicos e incluso orientados a proyectos, a veces llama la atención el poco énfasis que se pone en el paso a producción.

El ignorado paso a producción


En efecto, los libros técnicos tienden a centrarse en las posibilidades, en el desarrollo, en cómo se hace o entrena un modelo, y cómo se traslada eso al lenguaje o herramienta de que se trate, pero no en cómo, una vez desarrollado, entrenado y probado, ese algoritmo, ese componente o ese programa, se despliega, se pone en producción y se utiliza realmente.

Y si en lugar de literatura técnica, hablamos de divulgación generalista, a veces incluso propagandística, para qué hablar. Es posible que muchos autores de esa divulgación ni siquiera sean demasiado conscientes de la necesidad del paso a producción, de sus métodos y sus implicaciones.

No sólo afecta esta carencia a la inteligencia artificial, eso es cierto, sino a todo el mundo del software. Creo que con la única excepción de la literatura referida a cloud y DevOps, la producción del software es un tema bastante ignorado.

Probablemente es que se trate de un tema más especializado, de público más restringido y, seguramente, menos entretenido, variado y brillante que el desarrollo o la investigación. 


Machine learning en producción


Pero si, el software para que sea funcional, disponible y escalable en entornos profesionales y corporativos, hay que llevarlo a producción, y los modelos de machine learning no son una excepción.

En el caso de los modelos de machine learning, además, hay alguna diferencia entre cómo se trabaja en producción a cómo se hace en desarrollo que me parece especialmente interesante tener clara, sobre todo por lo que tiene que ver con el uso d elos datos y la diferenciación entre entrenamiento en inferencia, entre lo que es la construcción del modelo propiamente dicha, y su uso para hacer predicciones.

Hace unos días, finalicé la lectura del libro 'Artificial Intelligence with Microsoft Power BI' de Jen StirrupThomas J. Weinandy y en él me he encontrado una comparativa entre los modelos de machine learning en investigación (no es exactamente desarrollo, pero me resulta bastante válido) y en producción.

Y los autores destacaban cinco diferencias.


Las cinco diferencias del machine learning en producción frente a investigación


En concreto, las cinco diferencias que señalan es la obra, son las siguientes:


  • Requisitos: En investigación normalmente se busca llegar o superar el máximo estado el 'estado del arte', las máximas prestaciones o resultados utilizando para comparación diferentes 'benchmarks'. En aplicaciones reales y en producción, sin embargo, diferentes clientes pueden tener diferentes requisitos, apuntaría que yo que, con frecuencia, requisitos que pueden ser más prácticos y menos exigentes.

  • Prioridad computacional: En la investigación, el foco se pone sobre todo en la fase de entrenamiento y que ésta sea lo más rápida posible para lo que interesa un muy alto rendimiento ('throughput'). En aplicaciones finales y en producción, lo que importa es la inferencia, no el entrenamiento. Y, en ese caso, es mucho más importante una baja latencia que un alto rendimiento.

  • Datos: En el caso de la investigación, los datos usados suelen ser datasets más o menos estáticos. Sin embargo, en producción la situación es completamente dinámica.

  • Equidad ('fairness'): No suele existir foco en este punto en el caso de la investigación, mientras que en producción sí que se debiera considerar.

  • Interpretabilidad ('interpretability'): Igual que en el caso anterior, no suele ser el foco en la investigación, pero en producción debería tenerse en cuenta.


Hay dos cosas sobre las que me gustaría llamar la atención sobre estas diferencias. En primer lugar, respecto al punto de los datos, cómo es en investigación o desarrollo donde realmente se utilizan grandes cantidades de datos y capacidad computacional, pero como luego en producción (inferencia) normalmente no es así, normalmente hay un comparativamente bajo uso de datos y de capacidad computacional (y, por tanto, de energía). Una diferenciación que creo que no es del todo conocida ni entendida y que, entre otros varios puntos, intenté clarificar, hace ya bastante tiempo, en el post 'La equívoca relación de la inteligencia artificial con los datos'.

Igualmente es relevante comentar los dos últimos puntos, la equidad y la interoperabilidad. que tienen un claro componente ético. En estos dos puntos, y sin contradecir en absoluto a los autores, decir que, en mi percepción, no se tienen todavía tanto en cuenta en producción como se debería (aunque hay un creciente interés, espero que sincero en el tema) y que, aunque puedo comprender que en investigación se les preste algo menos de atención, ya deberían formar parte de los estudios, extendiendo, quizá, lo que denominamos 'etica por diseño, a casi algo que podríamos bautizar como 'etica desde la investigación'.

Por último, solo remarcar que, como el lector avezado se habrá dado cuenta, en realidad no he comentado, desde un punto de vista técnico u operativo, cómo es el paso a producción que comentaba al principio y que quizá ese paso a producción habría que confrontarlo más con el desarrollo que con la investigación. Es cierto, y quizá en algún momento deba tratarlo, pero por ahora, por lo menos creo que resulta interesante esta comparativa y pude ser un punto de partida.


Conclusiones


El trabajo con modelos de machine learning en investigación y desarrollo, presenta algunas diferencias importantes con lo que se hace cuando se lleva a casos prácticos y se despliega en producción.

En este post, hemos visto someramente, cinco diferencias entre una situación y otra.



viernes, 12 de julio de 2024

Apalancamiento cognitivo

En algunas ocasiones, y creo que en algunos de mis medios sociales, incluyendo este blog, he comentado cómo el uso de la tecnología supone una de externalización. En este post desarrollaré brevemente otro aspecto, que me suena también haber comentado en alguna ocasión, pero al que quiero volver: el apalancamiento.

La tecnología como externalización  


En efecto, lo que con esto quiero decir es que mediante la tecnología, y mediante la automatización que con ella conseguimos, en cierto sentido externalizamos trabajos o tareas que, de otra forma, realizaríamos nosotros. Y las 'externalizamos' en la tecnología, normalmente porque la tecnología hace esa tarea mejor que nosotros (cuando, por ejemplo, usamos una calculadora o una hoja excel para hacer cálculos, o utilizamos una retro-excavadora para cavar porque tiene mucha más fuerza que nosotros) o, simplemente, porque son tareas que no nos gusta hacer.

Aunque considero que esta idea de externalización es bastante clara, y hasta poco discutible, hasta ahora, me parece, era una expresión que sólo me había oído utilizar a mí mismo. Sin embargo, y eso es lo que me ha animado a escribir este post, me la he encontrado recientemente, exactamente con la misma palabra, externalización, leyendo el libro  'Introduction to digital humanism' y, en concreto, en el capítulo 'The re-enchanted universe of AI: the place for human agency' firmado por Helga Nowotny

En un punto de este capítulo se afirma que:


The historical growth of new human knowledge  can be interpreted as a sequence of major transitions in externalizing knowledge operations, processing an application, storage, dissemination, communication and repurposing of knowledge which in various configurations generate new knowledge.


En un webinar ofrecido recientemente por CitizenD Social & Tech Lab y en el que tuve el placer de participar, comenté durante mi ponencia, y en un una tipología algo improvisada, tres formas básicas que históricamente había adoptado esa externalización:


  • Externalización de tareas que requieren fuerza y destreza, que se ha hecho desde la prehistoria pero que, seguramente, explota con la revolución industrial y que, seguramente, adquiere su máxima expresión precisamente en los entornos industriales aunque realmente permea por toda nuestra actividad incluyendo cosas tan simples como el uso de unos meros alicates

  • Externalización de tareas mentales de cálculo y memoria, que se produce fundamentalmente por la llegada de lo digital y potenciada por la explosión de internet y la nube, con su capacidad para procesar y almacenar información, con mayor capacidad, volumen y exactitud de lo que podemos hacer los humanos

  • Externalización de tareas cognitivas incluyendo la creatividad, debida al auge de la inteligencia artificial en general y de la generativa en particular.


Esta externalización la hacemos, evidentemente, porque en conjunto nos beneficia, aunque, especialmente esta última externalización, la cognitiva y creativa, nos hace dudar y preguntarnos hasta dónde debemos llegar con esa externalización y, sobre todo, cuál es el lugar de las personas en este escenario y cómo podemos mantener y fomentar nuestras capacidades mas valiosas.


Apalancamiento


Sin embargo, en este post voy a aparcar esa cuestión ética y filosófica, que por lo demás me interesa muchísimo, para centrarme en algo más positivo: el apalancamiento.

El apalancamiento ('leverage') hace mención, en el entorno empresarial y de los negocios, al uso de recursos externos para potenciar tu negocio. Dos son los apalancamientos 'clásicos', a saber:


  • Apalancamiento operativo: Una empresa se apoya en recursos operativos de terceros. Por decirlo de una manera mucho más familiar y comprensible: una empresa subcontrata trabajos a otra. Con esto, la empresa principal consigue, por un lado, eventualmente mayores capacidades y menores costes de los que ella puede conseguir por sí misma pero, sobre todo, cuando hablamos de apalancamiento, ser capaz de acometer más trabajos, que de otra forma no podría por no tener recursos suficientes o los recursos adecuados. Es decir, esa subcontratación, potencia el propio negocio de la empresa que subcontrata.

  • Apalancamiento financiero: Uso de recursos financieros externos. Existen muchísimos tipos de mecanismos de financiación pero, simplificando muchísimo y para entendernos, hablaríamos, por ejemplo, de un préstamo. Con ello, la empresa consigue recursos financieros adicionales que le permiten acometer grandes inversiones que, de otra manera, le estarían vedadas. En el ámbito privado suelo poner el ejemplo de los préstamos hipotecarios: muy pocas personas serían capaces de comprarse una casa si no se pudiera disponer de préstamos hipotecarios. Es decir, los ciudadanos nos apalancamos en los bancos para poder acometer proyectos como la compra de una vivienda. De igual manera las empresas se apalancan en todo tipo de recursos financieros para poder acometer proyectos e inversiones de otra manera inviables. Vemos que, de nuevo, el apalancamiento, y de ahí su nombre, apoya y potencia las capacidades y posibilidades de la empresa o individuo.

En ambos casos, por cierto, vemos que el apalancamiento se consigue mediante una externalización de capacidades, operativas o financieras, en otra entidad.

Y lo he comentado sobre todo en ámbito de la empresa porque esos términos de apalancamiento se utilizan en esos contextos profesionales pero, evidentemente, y como se puede ver con el ejemplo de la hipoteca, también los humanos individuales o las familias nos apalancamos operativa y, sobre todo, financieramente.


Tecnología y apalancamiento


Y la tecnología, en el fondo, es una forma de apalancamiento.

Mediante la externalización de tareas en máquinas, conseguimos más fuerza, más velocidad, más exactitud, más capacidad de cálculo, más capacidad de gestionar grandes volúmenes de información, más capacidad, en fin, para hacer todo tipo de cosas, más resultados.

La tecnología nos hace ir a más y progresar. Y eso es buenísimo, y es su objetivo principal.

Eso es el apalancamiento, que nace de la externalización, en este caso en la tecnología.

Eso si, en la medida que nos acostumbramos a externalizar en máquinas las tareas, los humanos nos vamos desentendiendo un poco de ellas o, más bien, dejamos de cultivar nuestra capacidad para acometer esas tareas nosotros mismos, nos vamos, en cierto sentido, en algunos casos literal, atrofiando.


Apalancamiento cognitivo


Y ocurre es que, con las tecnologías que utilizábamos hasta mediado el siglo XX, sobre todo externalizábamos tareas de naturaleza física: externalizábamos, sobre todo, fuerza y habilidad. Y, a lo mejor, no nos importaba demasiado, ser un poco menos fuertes, ser un poco menos hábiles, porque ya no nos ocupábamos de tareas que no requerían de esa fuerza o esa habilidad.

También hay mecanismos compensatorios. Muy particularmente, en lo que tiene que ver con la fuerza, el auge de la práctica deportiva puede actuar como mecanismo equilibrante de eso que hemos externalizado.

Pero, lo que ahora nos ocupa, es que con el auge de lo digital y de la inteligencia artificial, particularmente la generativa, lo que estamos externalizando son capacidades cognitivas, algunas relacionadas con la percepción (visión artificial, reconocimiento de voz), pero otras relacionadas con el razonamiento, la decisión e, incluso, la creatividad. Estamos haciendo un apalancamiento cognitivo.

Como con todos los apalancamientos, obtenemos un retorno en forma de capacidades aumentadas, y eso es fantástico, pero con un riesgo de 'atrofia' de nuestras capacidades cognitivas propias.

Y tenemos que ver si estamos dispuestos a pagar ese precio y, si no, cómo lo compensamos.

A bote pronto, recomiendo lectura, estudio, reflexión, conversaciones, debate y pensamiento crítico.


Conclusiones


El uso de la tecnología supone una forma de externalización de tareas en máquinas. Eso supone un apalancamiento, es decir, una potenciación de nuestras capacidades. Y eso es bueno, muy bueno.

Pero también supone el riesgo de atrofia de las capacidades propias.

Y con el auge de la inteligencia artificial lo que estamos delegando, a cambio de esa potenciación, son capacidades cognitivas.

¿Qué vamos a hacer para que eso no suponga una merma de nuestras propias capacidades?



lunes, 8 de julio de 2024

Elementos del juicio humano e implementación en máquinas inteligentes

Cada vez estamos más acostumbrados a algoritmos y sistemas que automatizan decisiones, que toman decisiones por nosotros.
¿Hasta qué punto pueden las máquinas llegar a emular las capacidades humanas de juicio?

En este post voy a hacer un breve análisis técnico-filosófico de esa cuestión. 


Decisiones y sabiduría práctica


Avanzando con el libro  'Introduction to digital humanism', que ya he citado varias veces en este blog, llego al capítulo 'AI @ Work: Human Empowerment or Disempowerment' escrito por Sabine T. Koeszegi

En él, y citando a su vez el artículo 'Seven Elements of Phronesis: A framework for Understanding Judgment  in Relation to Automated Decision-making' la autora nos refiere al concepto aristotélico de frónesis 

¿En qué consiste esa frónesis y qué tiene que ver con la toma de decisiones?

Bueno, aunque de traducción algo difícil, frónesis, se suele trasladar este concepto a otros como sabiduría práctica o prudencia y viene a ser algo así como entender, ante una decisión concreta, lo que es posible y no posible, unido a la capacidad para juzgar cuál es el mejor curso de acción en un contexto específico.

Es cierto que Aristóteles utiliza este concepto en relación con el juicio de naturaleza moral, pero quizá nos pueda valer como marco más amplio ante cualquier decisión, sea esta realmente moral o, más práctica y ligada también a actividades profesionales.


Los elementos del juicio humano


En relación con este concepto de frónesis y siguiendo las fuentes citadas, se identifican y enumeran siete elementos del juicio humano, a saber:


  • No saber: que intenta, ante situaciones con elementos desconocidos, delimitar de alguna forma el problema intentado contestar a preguntas como dónde empieza y termina el problema, qué está en juego o qué aspectos parecen relevantes.

  • Emociones: aunque se suelen considerar como fenómenos internos y, por tanto, en cierto sentido alejadas de una decisión racional, lo cierto es que las emociones están en contacto con un flujo de percepción sensorial con el exterior (y también de nuestro interior) y nos pueden alertar, al menos en algunos casos, acerca de lo que es o no importante e influir por tanto en la decisión. 

  • Percepción sensorial: una percepción que, por un lado, permite recoger información del mundo y el contexto pero que, como hemos mencionado en el punto anterior, también nos pone en relación con las emociones.

  • Experiencias vividas: es decir, la conexión con lo que ya hemos vivido, nuestras experiencias pasadas

  • Intuición: una especie de conocimiento inconsciente que parece derivar también de las experiencias pasadas y del aprendizaje consiguiente.

  • Ciencia ('episteme'): Concepto este de 'episteme' de procedencia, creo, platónica, y que hace referencia a un conocimiento justificado, sólidamente apoyado en algo, y que podríamos por tanto asimilar a ciencia.

  • Técnica ('techne'): concepto que se contrapone de alguna forma al de 'episteme', en su origen entendido como arte y que se centra más en la aplicación práctica. Una aplicación práctica que se conecta también, por ejemplo, con la experiencia vivida,


Implementación del juicio en máquinas inteligentes


¿Exhiben o pueden exhibir en el futuro las máquinas estos elementos del juicio humano?

En este punto, y aunque las conclusiones no vayan a ser muy diferentes, me permito darme libertad separarme de las fuentes que he citado para dar mi propia opinión.

Antes un aviso de prudencia: lo que puede suceder en un futuro lejano (y por lejano estoy pensando en cualquier cosa a partir de los cinco años, más o menos) en materia de tecnología, y muy especialmente de inteligencia artificial, es casi imposible de predecir y no es nada improbable que asistamos, incluso en plazos inferiores a logros impensables poco antes, ahora mismo.

Dicho esto, ¿Cómo veo la implementación en máquinas de esas capacidades del juicio humano?

Hay algunos elementos que, aunque quizá de manera todavía imperfecta, son claramente implementables en máquinas. Los conocimientos científicos existentes ('episteme') se pueden embeber en las reglas que rigen el comportamiento de una máquina, ya sea de forma selectiva, para un problema concreto, o de manera más generalista, un poco en la línea de como está ocurriendo con los modelos generativos especialmente en el ámbito del lenguaje o incluso como una suerte de bases de datos o bases de conocimiento basadas en técnicas de big data. Aunque hay elementos de evolución y mejora, la viabilidad, incluso la realidad, de esa 'capacidad científica' de las máquinas creo que es incuestionable.

No es muy diferente lo que ocurre con la técnica ('techné'),  aunque es cierto que todavía la aplicación práctica tiende a estar muy guiada por humanos (programación tradicional) o a orientarse ámbitos acotados en lugar de hacerlo de manera generalista.

Igualmente, y aunque seguro que habrá mejoras, tenemos capacidades sensoriales avanzadas por parte de las máquinas, algo que se aprecia especialmente en robótica avanzada pero que se incorpora hoy en día incluso a nuestros tan familiares smartphones. Esas capacidades sensoriales incluso pueden superar en muchos aspectos a las humanas.

La cosa se complica un poco con la experiencia vivida porque en este punto, probablemente las máquinas se encuentren lejos de estar a la altura de las capacidades humanas. No obstante, existe una clara y muy potente semilla: el machine learning. El machine learning, precisamente, se centra en aprender a partir, bien de datos (que no dejarían de ser experiencia vivida por terceros, algo así como 'escarmentar en cabeza ajena') o de experiencia adquirida normalmente mediante sensores y puesta en relación con estados y acciones. A pesar de, como digo, las muy impresionantes capacidades actuales del machine learning, creo éstas se hallan, a pesar de todo, lejos de la capacidad humana para aprender de la experiencia. Es decir, esa capacidad de aprendizaje de la experiencia es viable, se han conseguido ya grandes avances, pero queda mucho campo de mejora.

Se complica aún más la consideración de la intuición, en buena medida porque ni siquiera entendemos del todo cómo funciona la intuición humana. Parece razonable pensar que esa intuición humana, se basa en buena medida, en una aprendizaje de la experiencia, pero un aprendizaje que se produce de manera inconsciente, y un aprendizaje incrementado, seguramente, por una suerte de sentido común o conocimiento de especie que, quién sabe, a lo mejor recibimos de manera hereditaria y que vendría a ser una especie de experiencia vivida como especie. Desconociendo en qué consiste exactamente la intuición, es difícil deducir si es implementable o no. En la medida que se trate de  una suerte de aprendizaje de la experiencia parece, que sería implementable, por lo visto en el punto anterior. Igualmente, parece que, si fuésemos capaces de compilar ese conocimiento humano, ese conocimiento de especie, sería incorporable al conocimiento de una máquina. En este punto de la intuición cabe decir como conclusión que, no es fácil afirmar si será implementable o no, en buena medida porque ni siquiera sabemos del todo en qué consiste. En cualquier caso, hoy en día carecemos de máquinas realmente intuitivas, al menos en el sentido en que familiarmente asignamos a ese término intuición. 

En cuanto al primer elemento del juicio, el 'no saber', resulta un poco extraño ese 'no saber' en el contexto de una decisión de una máquina porque, en el fondo, cuando le pedimos de la forma que sea a una máquina que tome una decisión, ya le estamos delineando claramente el problema. Es como si esto fuese algo que no necesitásemos en las máquinas. A menos, claro, que estemos pensando en máquinas muy avanzadas, digamos en robots humanoides tipo ciencia ficción que, actuando de forma muy similar a los humanos, se encontrasen ante situaciones en que 'ellos mismos' necesitasen delinear la naturaleza del problema. No digo que sea imposible a largo plazo pero, ahora mismo, no creo que exista ninguna implementación que se acerque a eso ni de lejos y, no creo que exista, siguiera, o al menos yo no lo detecto, especial interés ahora mismo en la comunidad científica y técnica por este aspecto.

Muy complejo es el tema de las emociones entre otras cosas porque, de nuevo, y a pesar de existir abundantes teorías psicológicas y neurocientíficas al respecto, es algo que todavía no entendemos realmente. Está claro que ya hoy en día existen soluciones técnicas para detectar emociones en humanos y también para expresar emociones por parte de robots o agentes conversacionales. Cosa muy diferente es que esas máquinas experimenten realmente emociones como un estado interno que esas mismas máquinas sean capaces de reconocer. No es fácil afirmar si esto es posible o imposible, dado que es un fenómeno que ni siquiera entendemos bien en los humanos y dado que, y esto es un problema filosófico de siglos, ni siquiera tenemos acceso a los estados internos de otros humanos, sólo a los nuestros, los de cada individuo. Aunque no me atrevo a decir que no sea implementable a largo plazo, en este momento, creo que estamos lejos de disponer de máquinas que experimenten emociones y ni siquiera está claro ni el interés práctico ni la bondad moral de conseguirlo.


Conclusiones


El juicio humano, ese que nos permite tomar decisiones de todo tipo, parece una capacidad compleja y polifacética. En algunos aspectos las máquinas se pueden acercar (o se acercan de hecho) a asumir algunos de sus componentes, pero existen otros en que no esta claro, a menos a corto plazo, que sea conseguible y, en algún caso, ni siquiera si sería deseable.


miércoles, 3 de julio de 2024

Inteligencia artificial neurosimbólica: la tercera ola de la inteligencia artificial

Estamos muy habituados a oír hablar de la inteligencia artificial simbólica, que se suele encuadrar dentro de la GOOFAI (Good -old-fashioned AI), enfrentada y superada por el machine learning o la inteligencia artificial basada en datos, y muy especialmente el deep learning, que es la claramente dominante hoy día.

Bueno, pues resulta que hay una tercera vía, una tercera vía que alguna vez he mencionado en este blog, pero muy ligeramente y que hoy voy a comentar un poco más, aunque sin entrar en muchas profundidades.


Las tres olas de la inteligencia artificial  


Leyendo el libro coral 'Introduction to digital humanism', llego hasta el capítulo titulado 'Trustworthy artificial intelligence: comprehensible, transparent and correctable' firmado por Ute Schmid. En ese capítulo, y siendo en realidad el tema principal la explicabilidad de la inteligencia artificial, la investigadora alemana menciona esas tres olas de la inteligencia artificial, la tercera de las cuales incluiría a la inteligencia artificial neurosimbólica.

Ute Schmid

Esas tres olas serían

  • Enfoques basados en conocimiento ('knowledge-based'): aunque la autora no lo expresa exactamente así, estaríamos hablando de ese tipo de soluciones en que existía la entonces denominada representación del conocimiento y que resolverían problemas o deducirían cursos de acción (inferencia) con base en ese conocimiento. No resulta difícil, en efecto, reconocer la inteligencia artificial simbólica y muy específicamente los sistemas expertos. La autora, que se centra sobre todo en la compresibilidad y posibilidad de corrección de los diferentes métodos, nos habla de que este tipo de soluciones con el término describir ('describe') y creo que es claramente admisible que son soluciones dotadas de explicabilidad.

  • Machine learning intensivo en datos ('data-intensive'): El enfoque alternativo, el de los algoritmos que aprenden con base en datos o experiencia, es decir, estaríamos en el campo del 'machine learning' y, muy especialmente, del deep learning. Aunque no en todos los casos, en buena parte de ellos, especialmente en lo que tiene que ver con el deep learning, hablaríamos de algoritmos no explicables. La autora califica a esta ola con la palabra categorizar ('categorize').

  • Enfoques que se adaptan al usuario: en esta tercera ola se buscaría que las soluciones de inteligencia artificial se adaptasen a los intereses de los usuarios dependiendo del contexto. La autora caracteriza esta ola con la palabra explicar ('explain') y serían el tipo de soluciones objetivo, unas soluciones, no sólo capaces de generar explicaciones sino también de una interacción que, eventualmente, pudiese conducir a correcciones al modelo.

Es con referencia a la tercera ola donde se indica que la combinación de enfoques basados en el conocimiento con el machine learning, pudiera conducir soluciones explicables, robustas y más eficientes en datos. Y esa tercera ola sería la inteligencia artificial híbrida ('hybrid AI') o neurosimbólica.


La inteligencia artificial neurosimbólica


De cara a ilustrar lo que significa la inteligencia artificial neurosimbólica, la autora cita el artículo  'From statistical relational to Neuro-symbolic artificial intelligence'. 

Se trata de un artículo no muy largo, pero sí técnico, en que, en esencia, se hace una revisión de hasta catorce modelos neuro-simbólicos que se clasifican en torno a siete dimensiones diferentes que son previamente explicadas. El artículo finaliza planteando cinco retos para el futuro de esta inteligencia artificial neurosimbólica.

La idea que parece quedar es que se trata de una línea de investigación prometedora, pero probablemente todavía reducida a eso, investigación, aunque con la velocidad a que avanza la inteligencia artificial actualmente, cualquier hallazgo, cualquier idea afortunada, podría cambiar el panorama y llevar a este tipo de soluciones al 'prime time' con resultados, probablemente, espectaculares.


Conclusiones

Aunque no parece que todavía estén preparados para un despliegue masivo y comercial, los sistemas de inteligencia artificial que combinan la visión basada en lógica y conocimiento (simbólicos) con la orientación conexionista y basada en datos, pueden ser una extraordinaria propuesta para futuras soluciones de inteligencia artificial.

Unas soluciones que, además de combinar la demostrada potencia de los sistemas neuronales con la explicabilidad de los simbólicos, nos hacen intuir una mayor cercanía con el funcionamiento del cerebro humano y, por tanto, la posibilidad de una mejor emulación de sus capacidades.


lunes, 24 de junio de 2024

Los requisitos 3H para una inteligencia artificial segura

En el desarrollo de la inteligencia artificial, aparte de los objetivos técnicos y de negocio, que creo perfectamente lógicos, admisibles e incluso loables, se busca también su, digamos, conformidad ética, y la seguridad para las personas ('AI safety').

Aunque muchas son las derivadas y complejidades que conseguir esa seguridad pueda tener, me he encontrado recientemente un esquema muy sencillo, que es el que quisiera comentar en este breve post.


El aprendizaje de ChatGPT y el alineamiento con las necesidades del usuario


En concreto, leyendo el libro coral, 'Introduction to digital humanism' me topo con un capítulo, el titulado 'A short introduction to Artificial Intellligence : methods, success stories and current limitations' firmado por Clemens Heitzinger y Stefan Woltran, algo más técnico que lo que he visto hasta el momento en el resto del libro.

En ese capítulo, repasando los diferentes mecanismos de aprendizaje (supervisado, no supervisado, por refuerzo) llegan al final a hablar, como casi es inevitable, de ChatGPT y de su mecanismo RLHF ('Reinforcement Learning with Human Feedback') o aprendizaje por refuerzo con realimentación humana descrito en 'Training language models to follow instructions with human feedback' un mecanismo en que, como feedback humano, se aporta una ordenación de cuatro respuestas a un promt. Según nos dicen los autores, con esto lo que se busca es alinear el modelo del lenguaje a las necesidades del usuario.


El modelo 3H de necesidades del usuario


A la hora de hablar de esas necesidades del usuario, los autores, y citando ahora el artículo GPT-4 Technical report nos hablan del modelo 3H, un modelo muy sencillito en que se entiende que lo que espera el usuario de una herramienta, en este caso ChatGPT es que sea:


  • Honest (honesta): respuestas correctas y honestas

  • Helpful (útil): respuestas útiles y que sirvan de ayuda

  • Harmless (no dañina): es decir, el sistema no debiera dar respuestas que puedan hacer daño de alguna manera.

De estas tres características, entiendo que la segunda, la utilidad, es un objetivo mucho más de tipo práctico, casi evidente, y es la honestidad y el no hacer daño lo que conecta esta propuesta con la ética, aunque dentro de la honestidad también se incluye la corrección de la respuesta, lo cual lo podríamos entender como un objetivo práctico e incluso técnico, más que ético o de seguridad.

Se trata, como vemos, de un esquema muy sencillo de enunciar (por supuesto, no tanto de conseguir) pero, según los autores, casi todo el trabajo actual en seguridad de la inteligencia artificial ('AI safety') se basa en satisfacer esas tres H.

Conclusiones


Vemos en este modelo de las tres H, quizá un planteamiento muy simple, pero a pesar de todo, apuntando en la buena dirección. 

Por lo demás, y aunque sea a modo de 'subproducto' de esta discusión, creo que vale la pena la lectura, aunque sea bastante técnica, de los informes de OpenAI que ponen mucho foco, precisamente, en los aspectos éticos y de seguridad. 


lunes, 17 de junio de 2024

La sorprendentemente sencilla adopción de la inteligencia artificial

Recientemente he finalizado la lectura del libro 'Microsoft Copilot: Mastering the AI Revolution in Office 365, Strategies for Innovation, Knowledge and Lifelong Learning' de Bryan J. Silva, un libro bastante limitado, la verdad (quizá por el demasiado cercano lanzamiento de Copilot), y de donde he sacado poco en limpio pero donde, sin embargo, y bastante al final, he visto algo que me ha hecho pensar y que motiva este post.

Bastante avanzado el libro, como digo, se expone brevemente la viabilidad de integrar scripts o modelos desarrollados en Python con Copilot 365. En el fondo, no es nada demasiado sorprendente. Sin embargo, me hizo pensar en lo potente que es esta integración y, yendo algo más allá, lo fácil que resulta hoy en día la adopción de la inteligencia artificial, tanto para incluirla en otro tipo de sistemas como para su uso directamente por personas.


Reflexión previa: nuestra incapacidad para sorprendernos con la tecnología


Antes, me gustaría hacer una breve reflexión previa. Y es una reflexión sobre nuestra relativa incapacidad para asombrarnos con los avances de la tecnología, en este caso con la inteligencia artificial.

Parece como que, de alguna forma, nos hubiésemos acostumbrado a que la tecnología nos aporte cosas que, no tanto antes, hubiésemos considerado 'alucinantes' o, como diría Arthur Clarke, 'indistinguibles de la magia'. En cierto modo ocurrió con Internet, ocurrió también con las redes sociales (asombrosas no tanto por su funcionalidad como por su escalabilidad), ocurrió con el smartphone y el internet móvil y creo que ahora ocurre con la inteligencia artificial en sus múltiples facetas.

No sé si esta incapacidad para el asombro es buena o mala. Entiendo que es un buen síntoma porque, si nos acostumbramos, es porque empieza a ser 'normal' que la tecnología avance a toda velocidad. Y eso es bueno. 

Pero, síntoma aparte, no estoy seguro de si es bueno de que no seamos conscientes de esos cambios y de lo transformadores, y muchas veces maravillosos que resultan.

No estoy seguro, pero no sé si esa incapacidad para el asombro nos puede restar capacidad para su adecuada gestión de todo tipo: técnica, económica, social y ética. O si, incluso, puede ser síntoma de algo que sería negativo: una cierta pasividad e incluso hastío casi existencial, que pudiera conducir, incluso, a problemas psicológicos.

Pero dejo aquí, bastante abierto la verdad, este excurso para entrar en lo que realmente era el tema de este post: la facilidad de adopción de la inteligencia artificial.


Una doble facilidad de adopción


Planteo esa facilidad de adopción con una doble cara.

Por un lado, y desde un punto de vista más técnico, lo sencillo que resulta incorporar capacidades, algoritmos y modelos de inteligencia artificial en todo tipo de sistemas y soluciones, sean estos en modo de sistema empresariales (ERP, CRM, SCM, HCM, etc), soluciones de RPA, soluciones BPMS o incluso soluciones a medida.

Por otro, la facilidad de uso por los usuarios, por las personas.


Una valiosísima y crucial herencia


Lo cierto es que, comenzando por el lado técnico, la actual facilidad de adopción de la inteligencia artificial se apoya en otro tipo de soluciones y planteamientos, ajenos y previos en general al auge actual de la inteligencia artificial y que, en el fondo, también se podrían utilizar para ayudar en la adopción de muchas otras tecnologías.

Comenzaría por algo que lleva ya muchísimos años entre nosotros, como es el planteamiento SOA ('Service Oriented Architecture') que ya hace muchos años nos mostró el camino para organizar la lógica de nuestros sistemas y soluciones en modo de componentes y, sobre todo, de servicios de negocio, unos componentes autocontenidos y de bajo acoplamiento que, además, se exponen hacia el exterior mediante una serie de servicios bien delimitados.

Acompañando y concretando la propuesta SOA, el desarrollo, generalización e implantación del concepto de API ('Application Programing Interface'), con especial relevancia hoy en día en las interfaces tipo Web Service y, sobre todo, hoy en día, REST.

Aunque no es una tecnología en sí misma, pero sí un planteamiento, destacaría también el muy extendido uso del concepto de conector que, en forma nativa, disponibiliza esas APIs para soluciones fundamentalmente basadas en filosofía 'low-code', y que simplifican enormemente el desarrollo de las integraciones.

Y como 'guinda del pastel', la expansión de la filosofía cloud computing, no sólo para alojamiento o virtualizacion de servidores, sino, sobre todo, para el ofrecimiento de servicios precisamente basados en APIs. Todo ello potenciado por la existencia de los denominados hiperescaladores (Amazon, Microsoft, Google,...) que disponibilizan, de forma tremendamente escalable y ubicua, ese tipo de servicios.

Algunas de estas tecnologías y planteamientos, para el lector que no las conozca, merecerían una explicación, pero no voy a entrar en ella para no alargarme en exceso.

Y algunas de estas tecnologías y planteamiento pueden resultar alejadas del foco mediático actual (aunque lo estuvieron en su momento), quizá incluso parecer, erróneamente, algo 'viejunas' y pasadas de moda, pero, sin embargo, son absolutamente clave y de plena actualidad, si no mediática, sí tecnológica y práctica.


La sencillez de la integración de componentes de inteligencia artificial


La multiplicación de APIs y conectores, en este caso recubriendo servicios de inteligencia artificial y con frecuencia en la nube (especialmente la nube de los hiperescaladores o grandes actores de la inteligencia artificial), y la enorme facilidad para integrar, mediante conectores o uso directo de APIS, esos componentes y servicios en otras soluciones, unida a la proliferación de herramientas 'low-code' que apenas exigen conocimientos de programación para desarrollar soluciones incluyendo integraciones, hace tremendamente simple la inclusión de capacidades de inteligencia artificial en todo tipo de soluciones y es un factor que favorece enormemente su adopción en empresas y administraciones.


La facilidad de uso de la inteligencia artificial


Pensando ya no tanto en la inclusión de capacidades en nuevas soluciones y sistemas, sino en su adopción por las personas, en el trabajo y el ámbito privado, cabe destacar el enorme avance que supone el haber conseguido interfaces conversacionales basadas en voz y lenguaje natural muy eficaces en el tratamiento de esa voz y los 'significados' del lenguaje.

Esto hace que muchas aplicaciones, tanto de inteligencia artificial como de otro tipo, resulten absolutamente naturales en su utilización. eliminando curvas de aprendizaje que traen consigo otro tipo de interfaces (comandos, ventanas, etc) y facilitando la llegada masiva, como así está siendo, de la inteligencia artificial a las personas, a los profesionales y los ciudadanos en general.


Conclusiones


De alguna manera, la inteligencia artificial actual es heredera de los buenos planteamientos que se han venido haciendo desde hace años e incluso décadas en el ámbito de las tecnologías de la información e interfaces de usuario. Y la confluencia de los avances específicos en inteligencia artificial con esos planteamientos, no brinda una sorprendente facilidad de uso e integración de la inteligencia artificial, al menos desde el punto de vista técnico y operativo, y esto debería garantizar una masiva y exitosa adopción de la inteligencia artificial.

En parte lo estamos viendo, pero, en realidad, todavía nos queda, creo, mucho por ver.


jueves, 6 de junio de 2024

Una definición de humanismo digital y algunas derivadas

En esa encomiable, pero a veces confusa, búsqueda de armonización de los fenómenos tecnológicos actuales con los valores y aspiraciones humanas, aparece de vez en cuando, el término algo etéreo de humanismo digital.
 

En busca del concepto de humanismo digital


Ya he recordado recientemente en este blog como, desde hace, tiempo, estoy en una búsqueda, bien que no muy activa, de una definición, o quizá, mejor que una definición, una delineación de en qué consiste eso que se llama 'humanismo digital', una búsqueda que reflejé ya hace un tiempo en el post 'Humanismo digital: el inicio de una búsqueda'.

Y, la verdad, casi había renunciado a encontrar una definición, digamos, externa, y me lo imaginaba, más bien, como un empeño personal, una especie de misión, como algo que iba a tener que hacer yo mismo en algún momento: ponerme delante del ordenador, la forma moderna de situarse ante un papel en blanco, y ensayar una definición, o un concepto.


Una definición


Casualmente, bueno no tan casualmente en realidad, me encuentro ahora una definición en el libro 'Introduction to digital humanism' editado por Hannes Werthner, Carlo Ghezzi, Jeff Kramer, Julian Nida-Rümelin, Basahr Nuseibech, Erich Prem y Allison Stanger y constituido por una larga serie de aportaciones de diversos autores y en que, junto con el libro 'Digital humanism: for a humane transformation of democracy, economy and culture in the digital age' y el 'manifiesto de Viena sobre humanismo digital' me hacen pensar en una suerte de movimiento fundacional del Humanismo Digital como disciplina o, más bien, como corriente de pensamiento algo más estructurada y liderada.

En cualquier caso, y a lo que vamos, en el capítulo de esa obra titulado 'Philosophical foundations of digital humanism' y firmado por Julian Nida-Rümelin, y Klaus Staudacher, se nos dice que


Digital humanism is an ethics for the digital age that interprets and shapes the process of digital transformation  in accordance with the core concepts of humanist philosophy  and practice.


Vemos en esta definición que, de alguna forma, el humanismo digital es una forma de ética, cosa que no resulta sorprendente en absoluto. Bien al contrario, cabía esperarlo, y tiendo a estar de acuerdo, aunque me pregunto si no puede ser ligeramente reduccionista. 

Vemos por otro lado que se pone en relación con la transformación digital para moldearla y darle e forma. Sin considerarlo incorrecto, en este punto me gustaría hacer una precisión. Cuando hablamos de transformación digital, en general nos estamos refiriendo a un proceso de cambio que acometen las organizaciones, fundamentalmente las empresas. Así lo definí en mi primer libro, 'La carrera digital' y así lo suelo explicar en numerosos cursos. Y, a efectos prácticos creo que es la mejor manera de enfocarla. 

Sin embargo, en esos mismos cursos, y cuando viene al caso, suelo advertir de que podríamos hablar también de transformación digital no solo como un proceso de cambio de una empresa o administración sino también como un cambio económico, social e incluso personal. En el caso de la definición que hemos visto, está claro que el término transformación digital se entiende más en ese marco amplio económico y, sobre todo, social y no tanto como un proceso de cambio de las empresas o administraciones.

Finalmente, la definición señala el acuerdo con los principios de la filosofía humanista y, esto puede resultar confuso y, según su interpretación, a lo mejor también reduccionista. Si por filosofía humanista entendemos, de forma algo vaga, una forma de pensar que pone a la persona, al ser humano en el centro, y que da importancia al individuo, entonces estoy de acuerdo. Si por filosofía humanista nos referimos, estrictamente, al movimiento humanista propio del Renacimiento, entonces, seguramente, nos estemos limitando innecesariamente y puede que anacrónicamente. No aparece en esta definición, pero en algunas partes de este mismo libro y del otro citado, me ha llamado la atención la frecuente referencia a la Ilustración. Sin despreciar para nada las aportaciones que en el pasado se puedan haber hecho, en el Renacimiento o en la Ilustración, ceñirnos por definición, a un pensamiento histórico, me parece limitante y no justificado.


Algunas derivadas: autonomía, libertad y responsabilidad


En el mismo capítulo en que se hace esta definición, se hace alguna observación que me interesa traer a colación.

Por un lado, y quizá en línea con esa visión humanista de la individualidad, se destaca de alguna forma la autonomía humana, lo que los autores denominan autoría, cuando dicen


At the heart of humanist philosophy and practice is the idea of human authorship. Human beings are authors of their lives...


Comparto, seguramente como la mayor parte de los occidentales, esa defensa de la individualidad humana y de su autonomía para definir su vida y su destino, pero anoto que, quizá, ésta sea una concepción, precisamente, muy occidental, y que tal vez no se entienda tan claramente en el mundo oriental o en otras culturas. Un aviso que tenemos que hacer siempre que hablemos de valores y de ética y que tiene su importancia si queremos una suerte de consenso ético mundial, de valores compartidos que permitan una mejor convivencia y más pacífica.

En cualquier caso, esa autonomía, esa autoría, conduce de forma muy directa, y también aparece en el discurso de los autores, con la idea y el valor de la libertad.

Y un tercer aspecto del discurso de los autores, y que es continuación directa de lo anterior, es la idea de responsabilidad, que nace como consecuencia de esa autonomía y de esa libertad


The core idea of humanist philosophy, human authorship , thus, can be characterized  by the way we attribute responsibility  to each other and thereby treat each other as rational and free beings.


Esa idea de responsabilidad, que deriva de la autonomía y la libertad es fundamental para cualquier sistema ético y legal, al menos los occidentales y es, de hecho, objeto de análisis en muchas obras filosóficas y jurídicas.

Al final, se nos identifican tres elementos clave: autonomía, libertad y responsabilidad


The triad of reason, freedom, and responsibility spans a cluster of normative concepts  that determines the humanistic understanding of the human condition...


En la frase anterior se sustituye autonomía por razón, pero prefiero quedarme con el término 'autonomía' y conservar como valiosa la triada autonomía, libertad y responsabilidad.


Conclusiones


Sin dar por cerrada la búsqueda de un concepto de humanismo digital, seguramente, al final, busque mi propio concepto, tenemos aquí, al menos, un intento de definición de este, digamos, pensamiento, que denominamos humanismo digital.

Y, de paso, y con un carácter para mi muy relevante, la identificación de esa tríada: autonomía, libertad y responsabilidad.


viernes, 31 de mayo de 2024

Sobre la responsabilidad social de científicos y tecnólogos

Mucho se debate, y además personalmente me interesa mucho, sobre la ética de la tecnología en general y de la inteligencia artificial en particular.

A veces, y de forma solapada, y en mi opinión, bastante ignorante, profundamente equivocada y notablemente poco respetuosa, se tiende a culpar o descalificar los ingenieros o científicos que crean estas tecnologías.

Más allá de descalificaciones simplistas, sí cabe la reflexión serena sobre la responsabilidad que pueden tener científicos o ingenieros, tecnólogos en general, acerca de las tecnologías que crean.

En este post voy a comentar una propuesta al respecto que viene del ámbito del así llamado 'humanismo digital'. Pero antes de comentar la propuesta, permítame el lector, hacer una breve digresión sobre humanismo digital.


Humanismo digital


El humanismo digital es una, no sé muy bien cómo llamarla, si línea de pensamiento o área de debate,  que podríamos decir que se centra en estudiar y promover un uso de la tecnología responsable y armonioso con los valores humanos, un área de debate que tiene mucho que ver con la ética y que, por lógica del panorama tecnológico actual y por las implicaciones que tiene, pone mucho foco en la inteligencia artificial.

Sin embargo, la mirada del humanismo digital es mucho más amplia que la ética de la inteligencia artificial, diría que incluso que la ética de la tecnología, no sólo porque presta atención a todo tipo de tecnologías sino, también, por una cierta tendencia a adoptar una visión, si se quiere, más social e incluso geoestratégica, con bastante atención a los aspectos de democracia y buen gobierno de los estados, a los elementos medioambientales, a los objetivos de desarrollo sostenible, etc

Se trata de un área de debate todavía poco formada, heterogénea y de aportaciones dispersas, pero en la que tengo mucho interés desde hace años, como mostré en el post 'Humanismo digital: el inicio de una búsqueda' y sobre la que me atreví a proponer una serie de primeros principios en 'Meta-principios de humanismo digital'.

Hecha esta pequeña digresión sobre humanismo digital, volvamos a la temática del post, es decir, la responsabilidad social de científicos y tecnólogos


Dos motivos para la responsabilidad


Hans Akkermans

Dentro del libro coral, 'Introduction to digital humanism' que, intuyo que, de alguna forma, pretende ser el libro fundacional de la disciplina del humanismo digital, tal y como lo entienden sus firmantes, existe un capítulo titulado, precisamente, 'The social responsibilities of scientists and technologists in the digital age' firmado por Hans Akkermans, uno de los creadores y firmantes del manifiesto de Viena sobre humanismo digital.

Y es a su propuesta a la que me referiré en lo que sigue.

Pues bien, este pensador aporta dos motivos o dos razonamiento, realmente muy sencillos, por los que entiende que científicos y tecnólogos tienen una responsabilidad social acerca de las tecnologías que crean, Y los dos motivos que aporta son:


  • Porque científicos y tecnólogos son, simplemente, y ante todo, ciudadanos, y esa ciudadanía, sea comunitaria, local, nacional, regional o global implica una responsabilidad moral de buscar el beneficio de la humanidad 

  • Porque tiene un conocimiento y 'expertise' especial en en el ámbito tecnológico, lo que les confiere capacidad de influencia, de la que se deriva también responsabilidad, una responsabilidad que para Akkermans incluye, de forma muy notable, compartir su conocimiento con la sociedad, y de una forma apropiada. 


Formas de ejercer la responsabilidad


Y a la hora de mostrar cómo ejercer esa responsabilidad, Akkermans se fija, principalmente, quizá por su condición de profesor emérito, en esa diseminación del conocimiento, e identifica cuatro formas de hacerlo


  • Educación: una educación sobre impactos sociales de las tecnologías digitales, incluyendo como destinatarios  al público general, pero también también al legislador y responsables de crear políticas.

  • Investigación: investigar y diseminar las posibles consecuencias no deseadas de las tecnologías en el corto plazo.

  • Aplicación: solicitar, y en la medida de lo posible trabajar, en las tecnologías que crean un beneficio para la humanidad y contraatacar a las nocivas.

  • Políticas ('policy'): contribuir a la formulación de políticas efectivas relativas al uso y gobierno de las tecnologías avanzadas.


Conclusiones


A pesar de que, como he dicho más arriba, creo que las críticas a científicos y tecnólogos sobre aspectos éticos de la tecnología, son con frecuencia, desacertadas y poco respetuosas, sí me parece que científicos, tecnólogos e ingenieros, tiene su porción de responsabilidad, puede que incluso una porción especial y superior a la del resto de ciudadanos.

La propuesta de Akkermans, de hecho, aunque creo que acertada, se me antoja, incluso, algo corta, muy limitada a diseminación e influencia, Quizá esto se deba a estar Akkermans muy centrado o influido por el entorno académico en que ha desarrollado su actividad profesional. 

Creo que, especialmente en el ámbito corporativo, se puede exigir algo más, bien es cierto que en una empresa, a lo mejor una responsabilidad superior, mucho más que la de los científicos y técnicos, la tienen los directivos.

En cualquier caso, no está mal que científicos, tecnólogos e ingenieros, acepten, aceptemos, esa responsabilidad y la asumamos  con naturalidad e, incluso, proactividad.


miércoles, 29 de mayo de 2024

Blockchain como nuevo ERP

Siempre me ha parecido que blockchain es una tecnología compleja, no sólo en sus bases algorítmicas y criptográficas, sino también a veces en sus propios conceptos y planteamientos, y no siempre es evidente la forma de trasladar esta tecnología a la práctica mediante los traídos y llevados casos de uso.

Un poco buscando esa explicación, por un lado sencilla (aunque rigurosa) y por otro orientada a negocio y a la práctica, me encuentro leyendo el libro 'Ethereum for business' de Paul Brody.

Y me en esa lectura me tropiezo con una comparativa que me ha llamado la atención: blockchain como una suerte de nuevo ERP.


El papel de los ERP


Los ERP ('Enterprise Resource Planning') son los sistemas empresariales por excelencia, los que se suelen constituir en la columna vertebral de la informática y la automatización de empresas de todos los tamaños y sectores.

Entre sus funcionalidades, aparte de todo lo que tiene que ver con, por ejemplo, gestión de recursos humanos y los procesos relacionados con talento, toda la producción, o toda la gestión económica y financiera, se incluyen elementos operativos y transaccionales que tiene que ver con compras, pedidos, entregas y albaranes, procesamiento de facturas y pagos, etc

Como se puede entender, una parte de esa actividad tiene mucho que ver con interacciones con el exterior (típicamente proveedores) y ejecución de transacciones financieras (pagos), así como seguimiento de activos. Para ello, históricamente, los ERP se han dotado de capacidades de interconexión e, históricamente, han utilizado soluciones estandarizadas como EDI para el intercambio de mensajes relativos a pedidos, facturas, envíos, recepción, etc


Integración y escalado


En esa labor, no obstante, siguen persistiendo muchas interfaces personalizadas entre sistemas, lo que dificulta el escalado en un mundo cada vez más interconectado y no solo en lo tecnológico sino en el ecosistema de negocios.

Razona Brody que una opción teórica podría ser adoptar alguna suerte de plataforma de transacción (algo así como un marketplace), pero dado el papel tan relevante que la compañía operadora de la plataforma, de ese supuesto marketplace, adopta y el control que puede ejercer sobre el mismo, esta solución, que técnicamente puede ser razonable, no resulta tan interesantes para los actores involucrados, aquellos que llevan a cabo las transacciones e intercambios.


Lo que podría hacer blockchain


Y es en este contexto donde Brody identifica un gran papel para blockchain y, en concreto, para plataformas públicas de blockchain y, muy específicamente, Ethereum.

Dado que Ethereum está especialmente bien preparado para gestionar transacciones que incluyan el intercambio de activos (físicos o monetarios) y dada la facilidad para automatizar interacciones y compromisos entre partes (smart contracts) parece que tecnológicamente ofrece unas funcionalidades más que adecuadas para esos intercambios.

Pero, además, y dado que las blockchain públicas como Ethereum, adoptan un modelo P2P ('Peer-to-Peer') no 'asustan' a los diversos actores del ecosistema con la amenaza de depender de un ente central (el operador de la plataforma). 


Ethereum como ERP


Y es por eso que Brody ve un paralelismo entre los ERP y Ethereum, siendo éste ultimo la opción para el escalado y la interconexión.

Así, de los ERP nos dice


ERP [] took processes and operations that were difficult to standardize and verify and made them uniform. It united inside a single system the business processes that should be integrated automatically, like converting new customer orders into expanded supply requirements. 


Es decir, resalta el papel que en su momento tuvieron los ERP (y siguen teniendo) para, dentro de la empresa, uniformizar, estandarizar y automatizar procesos y operativas relacionados con pedidos, suministros, etc.

Y, respecto de las blockchain públicas, nos dice:


Public blockchains, meaning really public Ethereum, will offer very similar capabilities, but with the ability to transcend enterprise boundaries. It will truly do for networks of companies what ERP did inside the enterprise.


es decir, más o menos la misma función pero no a nivel de empresa, sino inter-empresas, en un nivel de ecosistema.

Interesante ¿verdad?


Conclusiones


Creo que, en realidad, Brody simplifica algo las cosas, y que un ERP aporta mucha más funcionalidad y complejidades para las que no estoy seguro (más bien creo que no) que un blockchain esté realmente preparado, ni siquiera concebido, como es la gestión de toda la información empresarial, sin olvidar problemáticas como, simplemente, lo que tiene que ver con la propia eficiencia computacional, o más bien ineficiencia en el caso de blockchain, que lo pone en desventaja frente a soluciones más clásicas.

Sin embargo, la comparativa me parece muy interesante, y aunque quizá no tanto como para ser un nuevo ERP, pero sí como para apoyar funciones de integración y transacción, blockchain pudiera jugar un papel interesante.

 

miércoles, 22 de mayo de 2024

La renta básica universal como rendición

Mucho se ha escrito, y supongo que se seguirá escribiendo, a propósito del eventual impacto de la automatización en el empleo, sobre si la creciente introducción de tecnologías, incluyendo la inteligencia artificial capaz de realizar tareas propias de los así llamados 'white collars', acabará haciendo inviable la disponibilidad de empleo para todas las personas y si eso conducirá a un desempleo crónico y masivo. 


Automatización y empleo


A este respecto suelo decir que, para ser sinceros, nadie sabe realmente si ese escenario es posible. Existen informes de entidades de prestigio en un sentido y en otro, que afirman ese desempleo y que lo niegan.

La argumentación más optimista, y que intuitivamente considero más próxima a la realidad, es la que, basándose en pasadas revoluciones tecnológicas, afirma que, aunque se destruyen y destruirán muchos empleos, se crean y crearán otros nuevos y que el balance neto, o al menos así nos lo enseña la historia, será positivo.

Vuelvo a decir que creo que nadie lo sabe realmente, y yo tampoco, pero mi opinión es cautamente optimista. 

Optimista porque, con base en el pasado y un cierto razonamiento cualitativo, considero más viable ese incremento neto de empleo que lo contrario y más teniendo en cuenta la cantidad de puestos de trabajo que, sorprendentemente, se quedan sin cubrir y las crecientes necesidades en campos como la atención social o la tecnología misma.

Pero cauto porque, aparte de que no estoy cien por cien seguro de que la visión optimista sea cierta, sólo intuyo que lo es, también suelo recordar que, el que el empleo neto crezca no quiere decir que no haya ganadores y perdedores, no quiere decir que no vaya a haber empresas y sectores que sufrirán y desaparecerán, y que muchas personas quedarán, en efecto, sin empleo y para el resto existe y existirá una creciente necesidad de contaste aprendizaje, 'reskilling' y evolución.


La Renta Básica Universal


Ante la eventualidad de este posible desempleo crónico y masivo, una de las soluciones que se plantea es la de la renta básica universal, un tema del que, cierto es que brevemente, me ocupé en el capítulo final de mi libro 'Robots en la sombra'. 

Ahí razonaba cómo, desde un punto de vista meramente teórico, esa renta básica universal es o debería ser viable, aunque también expresaba alguna reserva sobre nuestra capacidad efectiva de implantarla adecuadamente, de gestionar la transición desde la situación actual a una en que existiese esa renta básica universal.


Impactos personales


Pero, aparte de su eventual viabilidad y conveniencia económica, la renta básica universal plantea también preguntas más profundas, preguntas que tiene que ver con la motivación, con el propio desarrollo, con la autoestima.

A pesar de cierta visión negativa del trabajo como una carga a soportar que muchas personas sostienen, a pesar de que tantas y tantas personas afirman que trabajan sólo para ganar dinero, creo que el trabajo tiene otro valor mucho mayor que eso.

El trabajo, o al menos eso creo yo, forma parte de tu identidad. El trabajo es una forma de estar en el mundo, una forma de aportar tu parte a que éste sea mejor, una forma de relacionarte con personas, de lograr cosas y una forma de desarrollar tus propias capacidades intelectuales y relacionales.

En ese sentido, la ausencia de empleo, plantea problemas personales, psicológicos y casi diría que éticos y morales.

Y éstos no creo que los resuelva por sí sola la renta básica universal.


La rendición


Acabo de terminar la lectura del libro 'Digital humanism: for a humane transformation of democracy, economy and culture in the digital age' de Julian Nida-Rümelin y Nathalie Weidenfeld, una panorámica de problemáticas relativas a la relación del ser humano con la tecnología, de manera muy sobresaliente, aunque no únicamente, con la inteligencia artificial.

En uno de sus últimos capítulos, los autores se ocupan de esta temática del posible desempleo y de la renta básica universal. Y he encontrado un párrafo que me ha llamado la atención, y que ha resonado en mi. Dice:


The introduction of an unconditional basic income would be tantamount to capitulation. Instead of a strategy of integration and inclusion in the working society, the final and then soon irreversible withdrawal from the working society would be rewarded.


Es decir, si aceptamos, como personas y como trabajadores, la renta básica universal, el vivir de esa renta básica universal, estaríamos renunciando a volver a integrarnos alguna vez en el mercado laboral, a desarrollarnos personalmente con base en un trabajo y, a priori, a aportar nuestro esfuerzo y contribución a la generación de bienes y servicios o a mejorar esta sociedad.

Y eso será una rendición. Una grave rendición. Una rendición de la sociedad pero, aún más, una lamentable rendición personal.


Conclusiones


Aunque nadie lo sabe, es posible que alguna vez lleguemos a sufrir un desempleo masivo, estructural y crónico. Y, si eso fuese así, cabe suponer que sería necesaria la renta básica universal o algún mecanismo similar. 

Sin embargo, y más allá de la viabilidad y sostenibilidad económica de esa eventual renta básica universal, desde un punto de vista de desarrollo personal, desde una perspectiva psicológica, humanista y casi ética, confiarnos a ella, renunciar a desarrollarnos a través del trabajo y la contribución activa a la sociedad, no puedo dejar de percibirlo como un grave paso atrás y como, en efecto, una rendición.