🎙 Episodio 76. Inteligencia Artificial No-code

En el episodio de hoy de Un podcast ninja sobre Big Data vamos a hablar de si es necesario saber programar para poder crear modelos de Inteligencia Artificial y de herramientas no-code específicas para IA.

Una de las primeras cosas que enseñan a cualquiera interesado en convertirse en ninja de los datos son las bases matemáticas de los modelos de Inteligencia Artificial.

La otra es un lenguaje de programación. 

Normalmente Python.

Si por un lado tenemos que controlar sobre álgebra lineal, cálculo y probabilidad y por otro tenemos que controlar Python, podemos pensar que para cuando consigamos dominar las dos cosas y estemos ready para entrenar nuestro primer modelo de Machine Learning, ya haya llegado la hora de jubilarnos.

Lo que está claro es que tanto los conocimientos de programación como los de matemáticas que hay detrás de la Inteligencia Artificial son dos barreras de entrada al campo bastante tochas.

Más de uno y de una habrá por ahí interesado en explorar el camino de ninja de los datos pero al que se le hace bola todo lo que se supone que hay que saber antes.

Y no me extraña porque da para llenar un grado universitario.

En el episodio 61 del podcast hablamos sobre las matemáticas y hoy vamos a por el código.

Evolución de la tecnología

Yo veo un gran paralelismo con la historia del desarrollo web.

A ver qué os parece a vosotros.

En los inicios de internet, una empresa que quisiera tener una página web necesitaba a todo un equipo de informáticos que supiera de HTML, de CSS… y eso costaba un pastizal porque no había mucha gente con las habilidades técnicas necesarias como para poder montar y mantener una página web.

Sólo las empresas grandes, las que básicamente podían permitírselo, eran aquellas que contaban con una web.

Hoy en día cualquiera puede montar una web que funcione más o menos bien sin tener ni idea de programación. Para eso está WordPress y otras muchas herramientas sin código.

Lo mismo pasó con los ordenadores.

Al principio había que usarlos introduciendo comandos de texto de color verde fosforito sobre una pantalla negra para poder hacer cualquier cosa. Después llegaron las interfaces gráficas para que cualquiera puediera usarlos sin ser científico o ingeniero. 

Es un poco el proceso natural de muchas tecnologías.

Primero sólo pueden usarlas personas muy técnicas con una formación muy heavy y específica.

Luego, se amplía la base de usuarios a gente técnica que entienda un poco los conceptos y no se pierda con los términos técnicos y finalmente, llega a ser los suficientemente fácil de usar para que lo pueda hacer casi todo el mundo.

Esto es un poco la idea detrás del movimiento no-code.

Herramientas no-code

Saber programar no es más que un medio para conseguir un fin.

El fin es crear algo… ya sea tener una página web, una tienda online, una newsletter o un modelo de Inteligencia Artificial.

Las herramientas no-code nos permiten crear aplicaciones utilizando interfaces visuales en los que arrastramos componentes, los unimos y los configuramos en  lugar de escribir código manualmente. 

Todo ello sin un equipo completo de ingeniería a nuestra disposición.

  • Para hacer páginas web tenemos WordPress, Webflow o Bubble.
  • Podéis crear una tienda online con Shopify
  • Bases de datos con Airtable que ofrece una manera flexible de crear y gestionar bases de datos sin necesidad de conocimientos especializados.
  • También hay plataformas de no-code  para integrar distintas aplicaciones y automatizar fllujos de trabajo como Zapier o Make. En plan, cuando me llegue un mail con un adjunto, el adjunto se sube automáticamente a una carpeta de Drive, el texto del mail se lo pasamos a ChatGPT para que genere una respuesta y escribe un borrador para contestar ese mail. Por ejemplo.

Bueno, pues lo mismo para entrenar modelos de Machine Learning sin saber programar.

Todavía estamos en los inicios, sobre todo porque mucha gente no entiende el potencial del Machine Learning como para imaginar posibles usos. La mayoría de la gente asocia Inteligencia Artificial a ChatGPT de manera casi inmediata.

Herramientas de Inteligencia Artificial no-code

Ya existen herramientas no-code que permiten entrenar modelos de Inteligencia Artificial sin saber programar.

El poder de crear modelos de IA no está sólo a disposición de grandes empresas con equipos enteros de ninjas de los datos sino que empieza a estarlo al alcance de pequeños negocios.

Estas herramientas no-code nos permiten pensar en maneras creativas de utilizar los datos a nuestro alcance sin necesidad de quedarnos paralizados porque no sabemos programar.

Entonces básicamente lo que tendríamos que hacer es el resto de pasos de los que hemos hablado mil veces:

  1. Saber qué es lo que queremos resolver, cómo por ejemplo, si estamos en un departamento de marketing como hablábamos la semana pasada pues predecir el tiempo de vida de un cliente o la probabilidad de que nos abandone y se vaya a la competencia.
  2. Luego ver qué datos tenemos y pasárselos a la herramienta que hayamos elegido.
  3. Esperar a que ella sola entrene el modelo.

Visión por ordenador no-code

Estas herramientas no funcionan sólo con datos estructurados sino que también hay herramientas no-code para entrenar modelos de visión por ordenador que podemos entrenar con imágenes y videos o usar pequeñas muestras de sonido para entrenar a un modelo de Machine Learning que clasifique audio.

Por ejemplo, unas muy sencillitas de usar son Teachable Machine de Google  y Lobe de Microsoft.

Teachable Machine de Google

Para entrenar un modelo en Teachable Machine no hay que instalar nada, se utiliza directamente en el navegador web y está pensada para entrenar modelos de reconocimiento de imágenes, de sonidos o incluso de posturas.

Únicamente tenéis que recopilar las imágenes correspondientes a las clases que queréis que reconozca, luego las subís a la herramienta y listo.

Además el modelo se puede publicar para usarlo en una app o sitio web porque se exporta en TensorFlow.js y también se puede descargar.

Por ejemplo, el típico filtro de tiktok que detecta cuando el usuario inclina la cabeza hacia un lado o hacia otro se podría entrenar con Teachable Machine.

Lobe de Microsoft

Lobe por su parte, de momento se centra en la clasificación de imágenes. En el futuro también se podrá detectar objetos en imágenes o clasificar datos estructurados pero de momento solo clasificación de imágenes.

No es poco porque se podría entrenar un modelo que clasificara especies de plantas, o expresiones de un usuario, clasificar si alguien lleva o no una mascarilla o unas gafas de sol o un sombrero, o incluso se podría entrenar un smart checkout de un supermercado que reconociera la fruta o verdura que estás comprando.

Imaginación al poder.

Estas son las más sencillas que cualquiera puede usar.

Herramientas no-code de analítica predictiva

Luego hay otras plataformas más pensadas para uso profesional y analítica predictiva como por ejemplo Akkio

Akkio

Akkio se puede probar gratis y su plan básico es de $49 al mes.

Está pensada para utilizar modelos de analítica predictiva en datos estructurados y permite realizar todos los pasos de preparación de datos, análisis exploratorio de datos y entrenamiento del modelo sin escribir ni una línea de código.

Es posible entrenar modelos de clasificación y regresión en datos estructurados… desde regresión lineal hasta redes neuronales pasando por modelos de árboles de decisión y también soporta modelos para trabajar con series temporales.

Además, incluye integración con modelos del lenguaje que permite analizar los datos utilizando directamente comandos en lenguaje natural.

BigML

BigML es una plataforma de Machine Learning diseñada para simplificar y automatizar el entrenamiento de modelos, también pensada para datos estructurados.

Igual que Akkio soporta modelos de clasificación, regresión y series temporales.

Tiene una versión gratis que permite entrenar modelos pero que está limitada a datasets de entrenamiento de 16 MB y después tiene opciones a partir de $30/mes

Dentro de estas herramientas no-code de Inteligencia Artificial orientadas al análisis predictivo sobre datos estructurados también está Dataiku.

Hay varias, estos son solo tres ejemplos.

Herramientas no-code para procesamiento del lenguaje natural

Así que hasta ahora hemos visto herramientas no-code orientadas a datos estructurados y análisis predictivo, rollo predecir ventas por ejemplo, herramientas no-code para visión por ordenador, en plan clasificación de imágenes y nos faltaría la parte de procesamiento del lenguaje natural.

Es decir, herramientas no-code para entrenar modelos de Machine Learning sobre texto que se encarguen de hacer análisis de sentimiento (para ver si una reseña o un comentario es positivo o negativo), clasificación de temas (para saber, por ejemplo, hacia qué departamento enrutar una petición de un cliente) y cosas así.

Aquí, ya sabéis que los reyes del procesamiento del lenguaje natural son los grandes modelos del lenguaje que son capaces de analizar este tipo de cosas sobre texto directamente.

Pero bueno, que sepáis también que hay herramientas no-code que sirven para el procesamiento del lenguaje natural.

Eso por un lado, herramientas no-code que son capaces de entrenar modelos de Inteligencia Artificial concretos para un tipo de datos concretos, ya sean imágenes o vídeos, texto o datos tabulares.

Herramientas no-code para Inteligencia Artificial

AutoML

Por otro lado, los grandes proveedores de computación en la nube, Google Cloud, Microsoft Azure o AWS, incluyen entre sus servicios la posibilidad de entrenar modelos de Machine Learning sin escribir ni una línea de código.

AutoML viene de Machine Learning automatizado y es una tecnología diseñada para automatizar los pasos del desarrollo de modelos de aprendizaje automático. 

El proceso tradicional de crear un modelo de aprendizaje automático incluye varias etapas como la selección de características, la elección del modelo, la optimización de hiperparámetros y la validación del modelo.

Como estas etapas requieren mucho de experimentar y de tiempo para ajustar y optimizar la idea es que AutoML simplifique este proceso.

Primero, AutoML prueba automáticamente varios algoritmos de aprendizaje automático y modelos para encontrar el que mejor se adapte a los datos y al problema específico sin intervención manual.

También ajusta automáticamente los hiperparámetros.

Después, AutoML puede automatizar el preprocesamiento de datos. Desde la limpieza de datos, hasta la selección de características y la transformación de variables y proporciona métodos automáticos para evaluar la efectividad de los modelos, ayudando a garantizar que el modelo seleccionado funcione bien en datos nuevos y no vistos, o sea, que generalice bien.

La idea detrás de AutoML surge alrededor del año 2010  para responder a la creciente complejidad de los modelos de machine learning y la escasez de ninjas capaces de desarrollar estos modelos.

El Machine Learning se estaba volviendo cada vez más popular pero hacía falta aprender mucho para que una persona fuera capaz de aplicarlo con éxito.

Así que AutoML nace de la necesidad de hacer el entrenamiento de modelos más accesible y aumentar la productividad de científicos de datos y desarrolladores de ML.

En Google Cloud y Azure la herramienta se llama directamente AutoML y soporta datos tabulares, imágenes y vídeos y también texto con modelos predefinidos como regresión y clasificación. 

La herramienta homóloga de AWS Sagemaker se llama Canvas.

Podéis analizar esta comparativa que realizó Akkio entre los 3 proveedores de cloud y la propia herramienta de Akkio, con varios modelos entrenados sobre datos tabulares.

Así que como veis, es posible entrenar modelos de Machine Learning sin escribir una sola línea de código peeero todo tiene un coste, una cara B.

Limitaciones del no-code en Inteligencia artificial

Es verdad que técnicamente no se requiere experiencia en programación o ciencia de datos para entrenar un modelo de Machine Learning usando herramientas no-code como AutoML.

Sin embargo, hay que tener en cuenta que AutoML soporta unos modelos predefinidos de regresión, clasificación o arquitecturas de redes neuronales muy concretas.

Ni mucho menos soporta todos los algoritmos de machine learning que existen.

Hay menos control y personalización así que para gente que ya sepa sobre aprendizaje automático, las capacidades de ajuste de los modelos que ofrece las herramientas de AutoML pueden quedarse cortas.

Al realizar un entrenamiento personalizado en un entorno de programación se pueden elegir muchíiisimas cosas. Desde el lenguaje de programación, el framework de programación, cómo ajustar los hiperparámetros, la arquitectura del modelo… Esto con AutoML no es viable.

Además, el proceso automatizado puede actuar como una "caja negra", donde no vemos claramente por qué se ha seleccionado un modelo u otro o cómo se configuraron los modelos. Esto, a la hora de mejorar resultados puede ser un problema.

Las herramientas de AutoML pueden hacer un uso intensivo de recursos computacionales porque tiene que probar varios modelos y configuraciones para ver cuál da el mejor resultado.

Esto puede ser un implicar que si no tenemos acceso a mucha capacidad de cálculo o si estamos usando alguna solución en la nube podríamos encontrarnos con unas facturas importantes.

Los beneficios de la programación

Como conclusión decir que de la misma manera que podemos usar un ordenador sin saber programar esto no quiere decir que la programación no nos aporte nada.

Ni mucho menos.

Nos permite sacarle mucho más partido.

Pues en la Inteligencia Artificial lo mismo.

Al final cuanto más sepamos, mejor para nosotros pero tb creo que es importante que el hecho de “no saber” no nos impida explorar algo nuevo.

Espero que os guste el episodio.

Si es así, no olvidéis dejar un «Me gusta» y algún comentario al episodio en Ivoox o una valoración de 5 estrellas del podcast en Apple podcasts, en Spotify, en Youtube o donde quiera que escuchéis el podcast. 

Recordad que si tenéis cualquier duda o pregunta podéis contactar conmigo a través del formulario de contacto o podemos seguir la conversación en Twitter.

Muchas gracias por estar ahí y os espero en el próximo episodio de Un Podcast Ninja sobre Big Data.

Boletín Ninja

Suscríbete a la newsletter y recibe la guía ninja del Big Data y la Inteligencia Artificial.

Guía ninja del Big Data
Copyright © 2024  Â· Datos 🥷 · Todos los derechos reservados
💼 Aviso legal y cookies