Clinical AI ¿alguien piensa en el enfermo?

El mundo mira horrorizado la propuesta de OpenAI para una especialización médica de su IA generativa, y quizá sea porque mi visión de «lo de la IA» no es tan absolutista de «todo mal» (ni tampoco «todo bien»), pero no me parece una idea tan mala.

Creo que el callo de más de 20 años dedicados a la tecnología, y sobre todo el de llevar más de 5 años y medio (y contando) muy enfermo, me avalan para poder rantear a gusto sobre este tema pero intentaré no excederme en mis exabruptos y plantear los porqués con claridad, aunque no prometo ser capaz. Vamos al lío.

Primero los antecedentes. Llevo más de 5,5 años muy enfermo. Enfermo nivel llevo 5 años en la cama, desde que la médica me obligó a coger la baja porque las piernas no me aguantaban. La causa nadie la conoce de forma segura, aunque todo apunta a una mutación genética que es rara entre las mutaciones raras.

Las mutaciones en mi gen son tan raras que los estudios que hay se hacen con cifras tan locas como 12 pacientes en todo el mundo, pero mi variación concreta es tan especial que ni siquiera está catalogada. «Significado incierto» es el eufemismo para «no tenemos ni puta idea».

Con esta base he pasado por un montón de médicos que siempre se acaban rindiendo y le pasan la patata caliente al siguiente, que pasa por todas las mismas fases que los anteriores (duda sobre que no puede ser tan difícil, seguridad de que todos los anteriores se habían equivocado, incredulidad de que no responda a los tratamientos de lo que habían presupuesto, desesperación por no saber qué hacer… y patada a seguir).

Sentadas las bases, metámonos en harina. ¿Una IA generativa es útil para un enfermo crónico como yo? Sí y mucho.

En primer lugar, ¿en qué son buenas las IA generativas? Como su nombre indica, son especialistas en generar. Usan la estadística para buscar los valores más probables. Por eso son tan buenas en labores de documentación como resumir un libro, clasificar contenidos o buscar los temas más relacionados con un texto.

¿Y en qué aplica? Pues cuando tienes una historia médica como la mía con un centenar de documentos heterogéneos que no se ha leído exhaustivamente ningún médico, le puedes pedir que te haga un resumen para mantener una historia médica actualizada que necesitarás, por ejemplo, cuando te toque ir a un médico privado para intentar buscar las soluciones que los del hospital se niegan a seguir buscando.

Pero eso no es todo. Al menos para mí es imposible mantener una idea clara de cuándo ha sido tal prueba, o cuánto tiempo ha pasado desde la última biopsia. Para una IA generativa es trivial hacer una línea de tiempo que ordene la aparición de síntomas, las pruebas, los tratamientos fallidos… ¿Cuándo me dieron aquel biológico? ¿Y lo del corazón fue antes o después? Lo que para nosotros es un lío, para una IA generativa es trivial.

Resúmenes, cronogramas, no parece mucho ¿verdad? ¡Sólo es la puntita del iceberg!

Como la IA, a diferencia de los médicos, sí se ha leído toda tu historia y todos los estudios sobre temas relacionados con tus síntomas y hallazgos, te puede plantear un cuestionario para hacer una clínica correcta, porque es capaz de determinar qué preguntas estadísticamente son más importantes en casos que tengan puntos en común con el tuyo. Y esa clínica, puede sacar cosas a relucir como que todo esto puede tener relación con problemas que tuviste hace décadas, o que eso tan raro que le pasó a tu pariente se puede explicar con lo mismo que te pasa a ti. ¿Es una verdad absoluta? No, claro, pero son nuevos datos a corroborar que si resultan ciertos pueden dar lugar a nuevas hipótesis o tratamientos a probar. Son esperanzas, que valen oro cuando todo el mundo se rinde y no te queda en qué ni en quién apoyarte.

Obviamente, aunque los negacionistas lo odien, me toca nombrar a AlphaFold. El sistema de IA (generativa) que predice cómo se pliegan las proteínas. Gracias a él se sabe que un gen con mi mutación provoca una anomalía en una parte muy concreta de la proteína, que hace que comience el proceso de ensamblado del inflamasoma sin motivo (o con un motivo equivocado). Las simulaciones que se han podido hacer recientemente al respecto de las mutaciones en este gen, son gracias a esto, a la IA generativa.

¡Y hay más! En casos en los que hay tan poquitos datos en el mundo, las IA generativas se usan para generar datos sintéticos que expanden la lista de casos de un modo probable para que se puedan realizar estudios sobre una base sustancial.

¿Te parece poco? Pues además, una IA generativa puede adaptar todo el lenguaje técnico (en este caso médico) y llevarlo a otro terreno. Por ejemplo, a mí me puede hablar de plegamiento de proteínas, ensamblado de inflamasomas y otro montón de cosas que no había oído en mi vida haciendo símiles informáticos como los antivirus por firmas o la compilación de código fuente. Esto es algo que ningún médico podría hacer ni en el remoto caso de que se plantearan informarte.

Resúmenes, cronologías, simulaciones, datos sintéticos, explicaciones… Pues también te ayudan a buscar mejor. La época de buscar en Google y que todo sea cáncer y te vayas a morir ya pasó. Ahora tienes un buscador supervitaminado que se ha leído todo internet y lo tiene indizado para quien sepa qué y cómo preguntar. Además puedes hacer preguntas tan extensas como quieras y dando explicaciones que sólo podrías dar a otras personas y no a cualquiera. A ver cómo buscarías en google algo cómo:

Llevo unos días con algo muy molesto, son como cortocircuitos, no es estrictamente algo sonoro ni visual aunque en parte sí, es como si se pusieran a disparar blasters de la guerra de las galaxias dentro de mi cabeza, chiu chiu… chiu chiu chiu chiu. Son ráfagas cada minuto, con varios estallidos. La medicación de la migraña no me arregla pero…

Y le sueltas tu parrafada, que cuando no puedes ir a urgencias porque en el SUAP se asustan con tu historia y en Valdecilla los MIR no saben ni por donde cogerte, y el médico 1 está de vacaciones y el médico 2 no te responde… pues por lo menos te desahogas, que no es poco. Y tras unos segundos pensando, para colmo, el algoritmo estadístico te suelta:

Lo que describes se parece a los «brain zaps» que se describen normalmente como tal y cual y que pueden venir provocados por esto o aquello. ¿Puede encajar con tu caso?

¿Qué si encaja? ¡Al dedillo! Así que además del desahogo cuando no tienes nadie con quien hacerlo, te da tranquilidad de que por lo menos no es tan raro, es algo común dadas las circunstancias, esta noche puedes dormir, mañana ya veremos.

«Pero es que van a vender tus datos…» ¿Y? ¿Acaso cuando uno está enfermo se preocupa mucho de sus datos? No, se preocupa de curarse si es posible, y si no de estar todo lo bien que se pueda. ¡Me la sudan mis datos! Dame paz y dime tonto.

Fuera parte, que en España lo miramos todo desde el prisma privilegiado de quien tiene la mejor sanidad del mundo. Díselo a un yankee que aún con seguro médico tiene que decidir entre ir al médico o pagar la hipoteca de ese mes, si no le iría bien con un médico virtual medio lelo que le cobre lo que un McPollo con bebida y patatas grandes.

No nos engañemos, los médicos también basan sus diagnósticos en la estadística y no siempre la real, muchas veces se ciñen a los casos que hayan visto durante su carrera y lo que digan los datos se la trae al pairo. ¿O no hay médicos que recomiendan homeopatía? ¿O no me han dicho a mí que vaya a acupuntura «porque no tienes nada que perder»? De las decenas de médicos que me han visto en estos años, el porcentaje de los que me han dado recomendaciones sin base científica es alarmante ¡y estamos en el país con la mejor sanidad del mundo!

¿Los datos? Me cago en los datos. Se los regalo a quien me ofrezca media oportunidad o gratis a quien los vaya a usar para que nadie más pase por una agonía como la mía, incluso si gana dinero por el camino.

Yo, personalmente, antes de que plantearan especializaciones ya había usado varias para trabajar sobre mi problema ante la desesperación que supone que te cierren todas las puertas. Sé cómo funcionan y lo que suponen, y no me quedo con la primera respuesta, pregunto al derecho y al revés, pregunto de rebote mientras está «concentrada» en otra cosa, pregunto con unos datos y sin ellos. Le digo que me explique, no que me diga (sutil diferencia). También valido, no me quedo con lo que dice y voy a sus fuentes, repaso los estudios que ha usado o la documentación de mi historia a la que hace referencia. Y borro, por supuesto que borro, después de unos días de sesión alimentándole con mis datos, le pido que borre absolutamente todo, que limpie memoria y conversaciones, para que no haya fugas de información que expongan mi intimidad y, sobre todo, para no condicionar sus futuras respuestas si le vuelvo a preguntar por algo que pueda guardar relación. Ya será tarde y tendrán nuestras interacciones para su entrenamiento, pero realmente me parece el menor de los males.

Así que hacer un especialización para un caso de uso que los enfermos ya estamos empleando, no puede hacer más que mejorar la experiencia de usuario y los resultados. Si lo hacen bien incluirán alertas para que no confíes ciegamente (por cubrir sus espaldas, no por bondadosos). Si lo hacen muy bien, enlazarán todo con los datos en los que se basan. Si lo hacen excelentemente bien, usarán expertos (médicos) para revisar lo generado y comprobar que se está haciendo un buen trabajo. Yo al menos, no tengo absolutamente nada que perder.

Si eres de los del «todo mal» vas a seguir en tus trece, pero si eres de los que tienen una preocupación genuina por los datos y los enfermos, que quieres lo mejor para los pacientes y no presumir de tu superioridad moral en redes, en lugar de luchar contra algo que les puede ayudar, enséñales a usarlo, a que no pueden creer todo a pies juntillas, enséñales a validar, enséñales a borrar y haz que les resulte útil.

A mí, dime lo que quieras pero ¿cuándo me activan esa funcionalidad? Es lo único que me interesa.

Sources & References
  • news.ycombinator.com ChatGPT Health

    OpenAI is building ChatGPT Health as a healthcare marketplace where providers and insurers can reach users with detailed health profiles, powered by a partner whose primary clients are insurance companies.

  • openai.com Presentamos OpenAI para el sector sanitario

    Productos de IA seguros para ayudar a las organizaciones del sector sanitario a ofrecer atención de alta calidad a más personas, reducir el trabajo administrativo de los equipos y potenciar soluciones clínicas personalizadas, mientras protegen los datos.

  • mastodon.social El mundo mira horrorizado la propuesta de OpenAi para una especialización médica de ChatGPT y como enfermo crónico…

    Rant de Javi en Mastodon con un hilo en el que comenta algunas de las cosas que salen en este post.

  • hdsr.mitpress.mit.edu Statistics and AI: A Fireside Conversation

    Statistical theory plays a critical role as a collection of mathematical tools and foundations driving the AI wave.

  • ibm.com Document AI

    Document AI gestiona datos estructurados, como hojas de cálculo, datos no estructurados, como correos electrónicos y contratos, y documentos semiestructurados, como formularios, facturas e informes financieros.

  • alphafoldserver.com AlphaFold Server

    AlphaFold Server is a web-service that can generate highly accurate biomolecular structure predictions containing proteins, DNA, RNA, ligands, ions, and also model chemical modifications for proteins and nucleic acids in one platform. It’s powered by the newest AlphaFold 3 model.

  • welzo.com Brain Zaps: Causes and How They Feel

    Both LOCs and brain zaps are sharp sensations felt in the head…most often linked to the withdrawal either or the change of the administrative dose of specific types of medications, including SSRIs and benzodiazepines.

  • thehackernews.com OpenAI Launches ChatGPT Health with Isolated, Encrypted Health Data Controls

    Health operates in silo with enhanced privacy and its own memory to safeguard sensitive data using «purpose-built» encryption and isolation… All apps available in Health are required to meet OpenAI’s privacy and security requirements, such as collecting only the minimum data needed…

Lo de la IA

En esta época de hype, se ve que no puede haber nada sin Inteligencia Artificial. Está en todas partes y no hay innovación posible si no pasa porque tengas que hablar con un agente automático (el bot de toda la vida, que ahora parece más listo), o si no lleva la etiqueta IA (o AI) como coletilla.

Para no ser yo menos que nadie, a pesar de que en general lo de la IA no me gusta demasiado, voy a entrar en materia, a mi estilo, explicando las cosas de un modo claro y conciso. Creo que es un buen modo de volver a escribir sobre tecnología, entrar en un tema tan omnipresente y a la vez tan desconocido.

A pesar de que en agosto se cumplirán 5 años desde que la médica me dijo aquello de «te tengo que dar la baja, no puedes seguir trabajando así», creo que todos mis años de experiencia desarrollando soluciones de lo más variado me acreditan lo suficiente como para no decir demasiadas tonterías. Tened en cuenta que mucho de lo que viene es una opinión, un modo de ver las cosas, que irá en contra de lo que hayáis leído hasta ahora, puede que por mi simplificación absurda 🙂

Vamos al lío.

¿Qué es?

¿Qué es la Inteligencia Artificial? Menuda preguntita, tiene muy mala leche. Podríamos entrar en que es un tipo nuevo de inteligencia que acerca a las máquinas al conocimiento humano, con todas las implicaciones filosóficas que conlleva. Sin embargo, eso me parece meternos en un auténtico barrizal.

A mí me gusta verlo como que es un «nuevo» paradigma de programación.

Para los ajenos al mundo del desarrollo de software, un paradigma de programación no es más que un modo de hacer programas. Algunos de ellos son:

  • Imperativo: se especifica qué y cómo se tiene que ejecutar un programa paso a paso.
  • Declarativo: se especifica el qué ha de hacer el programa, pero no el cómo.
  • Funcional: el programa se forma por la composición de funciones de manipulación de datos.
  • Dinámico: algunas cosas como los tipos de datos se establecen en el momento de ejecución y no cuando se hace (compila) el programa.
  • Orientado a objetos: se definen tipos de datos complejos que encapsulan la información junto a las funciones que se les puede aplicar.

MovGP0, CC BY-SA 3.0, via Wikimedia Commons

Hay muchos paradigmas de programación y varios se pueden aplicar a la vez, o se puede aplicar distintos paradigmas con una única tecnología. Por ejemplo, en PHP se suele ver mucho script dinámico e imperativo, aunque se pueden crear programas estáticos y orientados a objetos.

Pues bien, la IA no es más que otro paradigma. Específicamente, es uno en el que se le da al sistema un conjunto (masivo) de datos y se le marca un modo de aprendizaje automático, y el sistema aprende por sí mismo a trabajar con los datos para crear un programa que los procese en adelante. A ese programa resultante se le llama modelo*.

* No el 100% de lo de la IA es esto, pero permitidme la reducción para facilitar la explicación.

Al usar términos distintos de los habituales se puede caer en el error de que es algo totalmente distinto, pero no, si lo piensas con detalle verás que definir un conjunto de datos y decidir que se use K-means para catalogarlos, no es muy distinto de declarar una lógica en Prolog, o definir un conjunto de clases y sus interacciones.

Las principales diferencias con los paradigmas más habituales son:

  • Los recursos (tiempo y potencia) que se requieren para la «compilación» (la creación del modelo).
  • En el momento de la declaración (cuando estableces los datos y los algoritmos estadísticos a usar) no se puede predecir el resultado. Ni siquiera usando lógica difusa se puede aventurar la exactitud del modelo, aunque con experiencia se pueda intuir una aproximación.

Ahora, como con todo paradigma, se puede conocer a varios niveles, desde ser un experto a no tener ni idea, pasando por infinitos puntos intermedios. Del mismo modo que puedes conocer lo básico de programación funcional sin saber lo que son las mónadas, o hacer programación dinámica sin siquiera entender lo que hace la reflexión, puedes usar sistemas y librerías de IA para crear modelos (programas) sin conocer, por ejemplo, cómo funcionan las redes neuronales.

¿Es nueva? ¿Por qué este boom?

La Inteligencia Artificial es un campo de estudio que existe desde hace décadas, casi desde el momento de alumbramiento de la informática. La mayoría de técnicas usadas ya existían el siglo pasado. Entonces ¿por qué ahora?

Creo que influyen dos circunstancias muy concretas que se han dado en las últimas décadas y han hecho que surja este auge actual:

  • El boom del Big Data, que también estuvo hasta en la sopa aunque ya nadie se acuerde de él, que hizo que se almacenasen cantidades ingentes de información que luego se intentaban explotar con las técnicas de la época.
  • Los avances en procesamiento paralelo que se dieron principalmente desde el surgimiento de la PlayStation 2, con los chips de tarjetas gráficas que han permitido usar técnicas de programación concurrente (otro paradigma) para procesar el Big Data en un tiempo computacional aceptable.

Parafraseando a aquella: «mezclando ácido clorhídrico con sulfato de sodio, ha hecho una reacción que flipas».

¿Es inteligente?

Deberíamos, primero, filosofar sobre qué es la inteligencia y qué tipos hay, pero muy a grosso modo podemos concretar en: NO.

Hablando de Inteligencia Artificial es seguro que todos tenemos en mente ChatGPT que es un LLM (modelo «largo» de lenguaje). Parece muy inteligente, pero en EGB un profesor (hablando con él de un niño que memorizaba la enciclopedia) me dijo que la memoria es muy diferente de la inteligencia entendida como la capacidad de razonar y resolver problemas.

ChatGPT recuerda muchas cosas, en concreto recuerda especialmente bien la cercanía estadística entre unas palabras y otras. También puede simular cierto razonamiento, haciendo deducciones básicas a partir de datos, pero le falta mucho para que podamos llamarlo inteligente en cuanto a un caso general.

Por ejemplo, las IAs generativas actuales que crean respuestas de texto, música o imágenes, no pueden actualizar sus modelos insertando en ellos nuevos casos aprendidos mientras se usan (aunque sí que se aprovechan esos datos para entrenamientos de futuras versiones del modelo). Esto es, no pueden aprender sobre la marcha (por ahora).

IA General

Lo que entendemos por inteligencia (inteligencia cognitiva al nivel de un humano), es lo que en el campo se conoce como Inteligencia Artificial General.

Es SkyNet en Terminator, la «voz del pinganillo» de Her, o el científico de Trascendence. Esa que Hollywood nos ha mostrado innumerables veces, que es capaz de realizar razonamientos lógicos y dado su acceso a todo el conocimiento humano puede convertirse en una super inteligencia que lo arregle todo.

Como el resto de la gente, no puedo ver el futuro, pero ahora mismo esa IAG no existe y estamos lejos de conseguirla.

De hecho, hace poco Apple sacó un controvertido paper (The illusion of thinking) en el que explicaba que lo que hay ahora no es más que una «burda» imitación de pensamiento. ¡No se podía saber!

Aunque es muy probable que en este caso la opinión de Apple tenga un gran sesgo por estar quedándose muy atrás en el campo de la IA y de los agentes (LLMs) con su otrora popular Siri y sus experimentos no demuestren nada, eso no hace falsa a la conclusión: los sistemas de inteligencia artificial actuales no piensan como lo haríamos los humanos.

¿Acabará con los trabajos?

¡Ojalá! Un sistema capitalista como es el mundo actual, requiere necesariamente que la gente tenga ingresos para poder ser consumidores. Si se acaba con los trabajos, el sistema debería reformularse para que la gente siga teniendo ingresos, o bien abandonar el capitalismo de manera inmediata. ¡Doble win!

Desde el momento en el que el luteranismo calvinista instauró ese «amor» por el trabajo, por el progreso (económico) y prosperar, el sistema se ha alimentado de la mano de obra que era a la vez productora y consumidora. No me pondré muy anarquista con esto, pero el «trabajo» remunerado es un pilar del capitalismo y no se puede acabar con uno sin hacerlo con el otro.

Sí que es cierto que introducirán modificaciones. Del mismo modo que la máquina de vapor cambió, por ejemplo, cómo se producían tejidos en las fábricas inglesas, la Inteligencia Artificial y los agentes conversacionales están cambiando algunos procesos que se irán depurando con el tiempo y afectará significativamente a algunas profesiones.

Sin embargo, toda introducción de una nueva tecnología ha traído cambios de este tipo y ha hecho que los profesionales se especialicen o se conviertan en artesanos, dando un nuevo valor a la producción. Volviendo al ejemplo inglés, tras la revolución industrial hubo (además de hambre y miseria) quienes se especializaron en controlar y arreglar las máquinas, y quienes siguieron haciendo las telas de un modo tradicional dándoles un extra de valor por la exclusividad.

Uno de los campos que más rápido está adoptando estas tecnologías es la programación de software, pero esto dudo que vaya a tener más implicaciones que el dejar de ver valor en el número de líneas de código, centrándose en lo importante: entender el problema y determinar la mejor solución. Esto dejaría la profesión de programador relegada a ser operadores y supervisores de estos nuevos sistemas de generación de código (especialización) o a seguir haciendo las cosas como «antiguamente» de un modo artesano que tendrá más valor simplemente por la componente «artística».

Ahora que lo dices ¿Y el arte?

Bien, hemos dado con una piedra bien gorda. Es una de las críticas más grandes que hay de las IAs generativas (además del gran consumo de recursos).

¿Se puede considerar arte algo hecho por una Inteligencia Artificial? ¿No deja de tener alma? ¿Para que queremos que las IAs hagan arte en lugar de recoger la basura?

A estas alturas de la batalla, todos hemos escuchado argumentos en una línea y su contraria. Desde que las técnicas que se usan para crear imágenes son las mismas que se usan para predecir la forma de plegar proteínas, hasta que es un robo y un plagio a los artistas.

Sin entrar en gustos, el arte generativo existe hace mucho tiempo. Es una modalidad artística en el que el artista crea máquinas o algoritmos que a partir de datos pseudoaleatorios producen piezas de arte. Por ejemplo, ahora mismo en el Centro Botín (un museo de Santander) se puede ver una exposición en la que el artista ha generado unas pistas de audio a partir del análisis de datos de la bahía de Santander como la altura de las mareas o la velocidad del viento, el artista ha hecho un algoritmo que es el que genera como resultado la obra final.

Si se considera el arte generativo como arte, hay que permitir llamar arte a las obras creadas por la IA. En este caso, los programadores de la IA serían los artistas y el operador no sería mucho más que un generador de datos pseudoaleatorios.

¿Y los datos? ¿Me van a robar? ¿Me han robado ya?

Como ya hemos dicho, para programar uno de estos sistemas de Inteligencia Artificial, uno de los elementos necesarios son datos. Muchos.

Aquí hay mucho debate por la fuente de esos datos. Por ejemplo, en el uso de descargas ilegales por parte de Meta (Facebook), o la venta de datos tan personales como puede ser el ADN.

Los temas legales suelen ser complejos y más en estos campos en los que hay que observar legislaciones de diversos países y continentes. Simplificando mucho, en España (Europa) hay dos puntos clave a tener en cuenta:

  • Datos de caracter personal. Son aquellos que permiten identificar a una persona como nombre, teléfono o dirección. Si se almacenan estos datos ha de ser por el menor tiempo necesario, haber informado claramente de que se van a recopilar y cómo se van a procesar. En principio, dado el funcionamiento de la IA, no deberían ser parte del entrenamiento porque luego no se podrían sacar del modelo generado si el usuario lo solicita.
  • Copyright. Aquí, la autoría no se puede transferir de ningún modo, sólo se pueden ceder derechos para el uso que sea hasta 70 años después de la muerte del autor, momento en el que pasa a dominio público. Por tanto, si yo compongo una canción tendría que ceder sus derechos para que una empresa de IA pueda usarla para entrenar sus modelos generativos.

Esto es lo que dice la teoría y la teoría está estupenda pero sabemos todos que la realidad es otra. Las multas que se imponen a las empresas que hacen mal uso de la información suelen ser irrisorias y los términos de uso que aceptamos para poder usar servicios en Internet acostumbran a ser tremendamente abusivos ya que no te dan opción y sólo puedes decidir entre tener el servicio o no tenerlo.

Además nos preocupamos mucho de datos tan comunes (y públicos) como el número de DNI mientras aireamos alegremente nuestras relaciones sentimentales o que estamos de vacaciones (y nuestra casa vacía), que son cosas mucho más íntimas.

Por tanto, no puedo hacer más que dar el mismo consejo que me dió Paula en su día: si no estás dispuesto a que lo sepa tu abuela, no lo pongas en Internet porque en cualquier momento puede quedar expuesto.

Si creas una obra del tipo que sea y no quieres que se use para entrenamientos, puedes poner unos términos de uso y no ceder el copyright, pero si realmente no quieres que se use lo único que está en tu mano hacer es no subirlo a Internet.

¿Cómo funciona todo esto?

No es porque lleve varias horas escribiendo, ni porque crea que no voy a saber explicarlo de un modo comprensible, pero me vais a permitir que de una explicación muy somera de cómo se hace lo de la IA. Si tenéis interés y os gusta como explico, siempre me lo podéis decir en un comentario y entramos en otros posts en materia de cómo se enseña a las IA.

Lo primero es obtener una fuente de datos y prepararla para su procesamiento. Estos datos se separan en dos paquetes, uno de entrenamiento (por ej. con el 80% de ellos) y el resto para comprobar el modelo resultante.

Con estos datos, se determina que tipo de algoritmo estadístico sirve mejor para el trabajo que queremos que haga el modelo y se entrena el modelo con ellos de tal manera que el sistema aprende por comparación.

Una vez que el modelo ha sido entrenado, se testea con el resto de datos. En caso de que el porcentaje de acierto sea suficientemente alto (un 90% por ej.), se da el modelo por bueno. Si no es así, hay que volver atrás y enfocarlo de otro modo.

En este proceso influyen muchas cosas, desde cómo se selecciona qué datos serán para entrenamiento y cuales para test, hasta cómo determinar si un resultado es satisfactorio, pero la base es esta.


Visto todo esto, la única conclusión que me gustaría dejar es que lo de la IA ni es tan nuevo, ni es tan bueno, ni es tan complejo.

Y como decía la entradilla de mi primer libro de Inteligencia Artificial:

Todo conocer depende de la estructura que conoce.

3 links about AI and music

Nowadays, there are a lot of different applications of AI models that can be applied to change any field. Look at music. It is a very «traditional» one where someone creates a song and someone plays a song using some devices to create sound. How AI can change that process?

¿Cómo conseguir que una Inteligencia Artificial coloree las fotos del abuelo?

Cuando hablamos  de Inteligencia Artificial, es fácil pensar en sistemas muy complejos y caros. Sin embargo, lo más complejo es crear un modelo para resolver una clase de problemas. Ese modelo, una vez creado, es fácil de aplicar para solucionar un problema concreto usando un poco de imaginación. Hoy veremos como usar un modelo creado por otra persona, para nuestro objetivo: colorear las fotos que tengamos en blanco y negro de nuestros abuelos.

Imagen en blanco y negro coloreada por una Inteligencia Artificial
De una postal antigua, republicada en eldiariomontanes.es

Para la creación de un modelo, hay que saber mucho del ámbito de aplicación, hay que tener una buena base de matemáticas estadísticas y hay que conocer los diferentes algoritmos e invertir un buen tiempo probando cosas distintas. Mucha gente está creando distintos modelos, ya sea para practicar, para investigar o con otros objetivos.

Algunos de estos modelos son liberados por sus creadores, como el que nos ocupa hoy:

DeOldify es un proyecto basado en Deep Learning para colorear y restaurar imágenes antiguas. Su creador (Jason Antic) lo liberó bajo licencia MIT, lo cual nos permitirá hacer casi cualquier cosa con él.

Por tanto, para conseguir nuestro objetivo de hoy, que no es ni más ni menos que colorear las fotos antiguas de nuestros abuelos que tengamos por casa, podremos hacer uso de este proyecto.

Pero ¡ojo! También podríamos usarlo para montar un servicio online de coloreado automático de imágenes antiguas a razón de euro cada una, o para colorear las imágenes captadas por una cámara de visión nocturna (de las baratas que se ven en verde y negro).

¿Qué podemos esperar de esta Inteligencia Artificial?

En mis pruebas, que podéis ver en la foto de cabecera o en el mini-hilo que parte del siguiente twit, podéis ver los resultados con algunas fotos muy distintas. Probablemente, trabajando un poco sobre el modelo para afinar algunos puntos o incluso reentrenándolo (siguiendo los pasos de Jason) con imágenes similares a sobre las cuales queremos aplicar el modelo, podríamos obtener resultados mejores aún.

¿Cómo podemos usar esta Inteligencia Artificial?

Cuando estuve haciendo mis pruebas (hace un mes aprox.), y dado que quería jugar mucho, opté por instalar todo lo necesario en mi máquina. En ese momento no es algo que habría aconsejado porque no era trivial, pero ahora parece que con unas pocas instrucciones lo puedes tener funcionando en cualquier lado. ¡Ojo! No las he probado, pero Jason dice que en su ordenador funciona ;).

git clone https://github.com/jantic/DeOldify.git DeOldify
cd DeOldify
conda env create -f environment.yml

#Then run it with this:

source activate deoldify
jupyter lab

Sin embargo hay un modo mucho más sencillo y es ejecutarlo online partiendo del notebook subido a la plataforma de Google Colab.  Ten en cuenta que es una plataforma que no está pulida del todo y que no siempre funciona bien, por lo que si no te funciona a la primera: no te desesperes.

Los pasos serían:
  1. Visita la url.
  2. Abajo, donde ves las fotos de Lincoln y demás, cambia los links de los wget por links a las fotos que quieras (tienen que estar en internet en una url accesible a cualquiera, por ejemplo puedes compartirlas mediante un enlace de Google Drive). Si lo necesitases podrías copiar más bloques para procesar más fotos: un wget y un vis.plot_transformed_image por imagen.
  3. Ejecuta la opción de menú Runtime>Run all.
  4. Cuando el script llegue a la mitad (al bloque de auth.authenticate_user…) te pedirá que sigas un link y copies un código para autenticarte con una cuenta de Google. Esto es porque necesita descargarse los pesos que se han obtenido en los entrenamientos del modelo para que la red neuronal pueda usarlos con las nuevas fotos, cuando te lo instalas en tu equipo es un paso que se puede saltar, pero con este script de Colab es necesario.
  5. Espera a que procese las imágenes.
  6. Comparte conmigo tus resultados ya sea con un comentario, un twit o lo que veas.

Con estos pasos tan sencillos, obtendrás unas imágenes antiguas que antes sólo tenías en blanco y negro, coloreadas por una Inteligencia Artificial. Cuando tu familia te pregunte como lo has hecho, puedes hablarles de Inteligencia Artificial, Deep Learning, etc. o bien puedes usar el comodín de «magia de informático».

Tech roundup 1: a journal published by a bot

Read a tech roundup with this week’s news that our powerful bot has chosen: blockchain, AI, development, corporates and more.

Gooooooood morning, Y’all!!! Hey, this is not a test, this is a tech roundup. Time to rock it from the Delta to the DMZ.

AI, bots and robots

Blockchain and decentralization

Woman computer scientist of the week
Carolina Cruz-Neira is a Spanish-Venezuelan-American computer engineer, researcher, designer, educator, and a pioneer of virtual reality (VR) research and technology. She is known for inventing the CAVE automatic virtual environment. She previously worked at Iowa State University (ISU), University of Louisiana at Lafayette and is currently the director of the Emerging Analytics Center at the University of Arkansas at Little Rock.

Cloud and architecture

Development and languages

Quote of the week

The best code is no code at all.

Enterprises

Other news

Suscríbete al blog por correo electrónico

Introduce tu correo electrónico para suscribirte a este blog y recibir avisos de nuevas entradas.