Generative AI: Conceptos clave

Más allá del Hype que esta recibiendo el termino el día de hoy y del exceptisismo que aún lo rodea, ChatGPT (y otros GenAI LLMs) parece haber sido un punto de quiebre en la historia de la tecnología. Con caracteristicas muy human-like y su acceso a través de una web simple a través de chat, permitió acercar estas funcionalidades a gran parte de la población y dió lugar a una gran ola de innovación en esta disciplina.

Más allá de esto, IA no es una panacea sino una herramienta más para nuestro Toolkit como profesionales de IT y será tan buena como los algoritmos y entrenamientos que podamos darle a los modelos que utilizamos.

¿Qué es Inteligencia Artifical?

Segun el ISO/IEC 22989:2022 se llamá Inteligencia Artificial (IA) a “…un campo técnico y científico dedicado a generar sistemas o funcionalidades que generan resultados como contenido, pronósticos, recomendaciones o decisiones para un conjunto de objetivos definidos por el ser humano”.

Solemos pensar en IA cuando un Software muestra capacidades similares o iguales a las de los humanos. Básicamente extender la capacidad de las computadores para simular la inteligencia humana. Entre algunas de las capacidades que la IA puede simular podemos encontrar:

  • Percepción Visual.
  • Análisis de texto y conversación.
  • Capacidad de hablar.
  • Toma de decisión.

Conceptos/disciplinas relacionadas con AI

AI se construye sobre las conceptos de Data Sience y Machine Learning.

Data Sience

Es una disciplina que se enfoca en el procesamiento y analisis de datos. Busca encontrar relaciones e insights a través de la aplicación de diferentes técnicas de Estadistica. Para este objetivo utiliza modelos predictivos.

Machine Learning (ML)

Dentro de la Ciencia de Datos (Data Sience), ML es la disciplina que se encarga del entrenamiento y validación de los modelos predictivos. Tenemos datos, entrenamos al modelo y luego realizamos una inferencia.

Permite que las computadoras aprendan de los datos, identifiquen patrones, tomen decisiones y realicen predicciones de manera autónoma. Este aprendizaje se logra a través de diferentes enfoques y técnicas como Aprendizaje supervisado, no supervisado o reforzado (reinforce learning).

Generative AI

La Inteligencia Artificial Generativa puede ser entendida como un modelo de ML que está diseñado para generar nuevos datos en lugar de realizar predicciones sobre datos especificos. Basicamente la GenAI, aprende a generar datos parecidos a los de los datos con los que fue entrenada. En respuesta a un user-prompt la AI puede generar texto, imagenes, videos o codigo. Esta basado en los modelos de Deep Learning. En general la IA Generativa tiene 3 fases: 1. Entrenamiento, 2. Tuning (ajuste) y 3. Generación, evaluación y re-tuning (re-ajuste).

Deep Learning

Dentro de ML, encontramos el concepto de Deep Learning (DNN = Deep Neural Networks). Esta disciplina utiliza Redes Neuronales multi-capas para simular la capacidad de toma de decisiones de un cerebro humano. Estos modelos, son entrenados con gran (cuando digo gran es gran) cantidad de datos y procesados por una gran cantidad de Redes Neuronales. Cuanto mas datos y mas redes neuronales (osea, mas computo), se logra refinar la precison a nivels human-like. La principal diferencia de estos modelos con los de ML, es que pueden procesar mucha mayor cantidad de data no estructurada (sin labels).

Neural Network en AI

Tambien llamadas Artificial o Simulated Neural Networks (ANN o SNN), es la piedra fundacional de Deep Learning. El objetivo de las Neural Networks es simular el accionar de las neuronas humanas.

Estan compuestas por nodos y organizados en capas. Los nodos interactuan entre si transifiendose información tal así como nuestras neuronas se transmiten cargas electricas.

Muchas de las soluciones mas conocidas en la actualidad como los Large Languaje Models (LLMs) como ChatGPT, DALL-E, Gemini y otros modelos predictivos utilizan la Redes Neuronales en gran parte de su arquitectura.

Transformers

Los Transformers son un tipo de arquitectura de Neural Networks que se ha convertido en concepto fundamental en varias disciplinas de AI. Consta de un mecanismo que que recibe una secuencia de Input y la transforma en una secuencia de Output, teniendo en cuenta el context y la relación entre los elementos de la secuencia.

Este concepto fue muy revolucionario en NLP ya que cambió fundamentalmente la forma en que se procesaba en contexto y la relacion entre las palabras para predecir la siguiente. Permitió el procesmiento de contexto de dependencias mas largos.

Tradicionalmente las Netural Networks (NN) utilizan una arquitectura de Encoder/Decoder. El Encoder lee y procesa la Input Data (como puede ser una oración en español en formato texto) y la transforma en una representación matematica. El Decoder toma esta información matematica y genera el Output Data paso a paso (que puede ser la misma oración traducida al ingles). Este procesamiento sucede de manera secuencial.

Los transformers modifcan este proceso incorporando el mecanismo de Self-Attention que modifica el orden de procesamiento de los datos. Permite al modelo procesar diferentes partes de la secuencia en paraelelo y determinar cuales son las mas importantes.

Fue uno de los break-through mas importante que permitirieron la construcción de los modelos GPT.

Dos papers muy interesantes sobre transformers:

En la practica, la implementación de la arquitectura de Transformers puede variar, por ejemplo el modelo Bidirectional Encoder Representations (BERT) desarrollado por Google es utilizando en sus Motores de Busqueda solo utiliza el Bloque de Encoder, mientras que Generative Pretrained Transformer (GPT) utilizado por OpenAI solo usa el bloqque Decoder

Language Models

Son un tipo especializado de modelo de ML que puede realizar tareas de NLP como:

  • Determinar sentimiento o clasificar texto de lenguaje natural.
  • Resumir texto.
  • Comparar texto.
  • Generar nuevo lenguaje natural.

Large Language models

Basicamente son modelos muy grandes de Deep Learning que están entrenados con muchisimos datos. Los Transformers son la tecnología subyacente, permiten el procesamiento en paralelo y constan de: Encoder, Decoder y capacidades de Self-Attention. Esto permite el uso de GPUs para el entrenamiento. Estos modelos de lenguage pueden entrenarse de manera No-Supervisada (es decir que los modelos se realizan Self-Learning).

Los modelos de Generative AI como el GPT son usados con las LLM y utilizan 2 cosas fundamentales: 1. Muchisimos datos (practicamente todo internet) y 2. Muchisimo computo.

Estos grandes LLMs dejaron de utilizar la representación matematica de cada palabra y superaron esta limitación utilizando Multi-Dimensional Vectors (comunmente referidos como “word embbedings”) para representar a las palabras y que tengan similares significados contextuales que otras relaciones cercanas en el espacio vectorial.

Utilizando word embeddings, los Transformers pueden preprocesar texto como representaciones numéricas a través del Encoder y comprender el contexto de palabras y frases con significados similares. Luego, es posible que los LLMs apliquen este conocimiento del lenguaje a través del decodificador para producir el Output.

Natural Language Processing (NLP)

Basicamente abarca la creación de Software que entienda en lenguaje tanto en forma hablada como escrita.

Tokenización

Es un proceso fundamental en NLP y en el funcionamiento del modelo de transformers en GenAI.

Se trata del proceso de dividir un texto continuo en unidades mas pequeñas: tokens. Estos tokens pueden ser palabras, subpalabras, caracteres o incluso unidades más pequeñas, dependiendo del esquema de tokenización utilizado.

Basicamente, de esta manera el modelo puede “entender” mejor el texto de input. Esto sucede ya que los modelos de Transformers como GPT no pueden procesar directamente l texto. Necesitan convertirlo en una secuencia de numeros represetada por estos tokens. Puede referirse a la Tokenización como un “puente” entre el leguaje humano y la representación númerica utilizada por la AI para aprender y generar texto.

Estas representaciones numericas en las que se convierte el input son Vectores llamados Embeddigs.

Embeddings

Los vectores son representaciones numericas multi-valuadas de la información. Representa lineas multidimensionales que describen una dirección y una distancia en relación con multimples ejes (amplitud y magnitud). Ayudan a generar relaciones entre los tokens. En relacion con los tokens del lenguaje cada valor del vector representa un atributo semántico del token.

Elementos de los tokens en el espacio de los embeddings reperesentan algun atributo semantico del token. En este sentido, otros tokens que son semanticamente parecidos, deberían resultar en vectores con una orientación similar.

Organizaciones y modelos que hoy lideran la carrera de GenAI

  • OpenAI: Líder en la carrera de GenAI con modelos avanzados como GPT-4o y o1/o3 (con reasoning). Sora es el modelo de generación de video.
  • Google DeepMind: Impulsa el desarrollo de modelos multimodales como Gemini 2.0. Tambien se conoció algo de información sobre el modelo Veo 2 de generaicón de video.
  • Microsoft: Integra modelos de OpenAI en Azure, ofreciendo servicios de IA generativa gracias a la alianza con OpenAI.
  • Meta (Facebook): Promueve la innovación abierta con modelos como LLaMA y BlenderBot.
  • Anthropic: Con modelos como Claude3 con los modelos Sonnet que podemos encontrar en AWS.
  • Mistral AI: es una organización emergente que lanzó el Mistral7B en 2023 como un modelo OpenSource que superó a GPT-3.5.
  • Stability AI: Democratiza el acceso a la IA generativa mediante herramientas de código abierto como Stable Diffusion.

GenAI en la nube

Los provedores de nube ofrecen servicios que nos permiten implementar soluciones de GenAI.

Amazon Web Services (AWS)

  1. Amazon Bedrock
    • Descripción: Plataforma para acceder a modelos de Foundation como Anthropic Claude, Jurassic-2 (AI21 Labs), y modelos propios de AWS como Titan.
  2. SageMaker JumpStart
    • Descripción: Ofrece acceso a modelos preentrenados y notebooks para implementar tareas de GenAI.

Google Cloud Platform (GCP)

  1. Vertex AI
    • Descripción: Plataforma de machine learning que soporta el entrenamiento y la implementación de modelos GenAI.
    • Características clave:
      • Modelos fundacionales como PaLM 2, Imagen (generación de imágenes), y Gemini (modelo multimodal).
  2. Generative AI Studio (Vertex AI)
    • Descripción: Herramienta específica dentro de Vertex AI para experimentar y prototipar con modelos GenAI.
    • Características clave:
      • Integración con otros servicios de GCP como BigQuery y Dataflow.

Microsoft Azure

  1. Azure OpenAI Service
    • Descripción: Servicio que permite el acceso a modelos avanzados como GPT-4, DALL-E, y Codex.
    • Casos de uso: Chatbots, análisis de texto, generación de imágenes.
  2. Azure Machine Learning (AML)
    • Descripción: Plataforma para construir, entrenar e implementar modelos GenAI personalizados.
    • Características clave:
      • Soporte para modelos open-source y preentrenados.
      • Pipelines automatizados para la gestión de datos y entrenamiento de modelos.
  3. Azure Cognitive Services
    • Descripción: Conjunto de APIs para añadir capacidades de GenAI en aplicaciones.
    • Subservicios relevantes:
      • Text Analytics: Para procesamiento y generación de texto.
      • Speech: Conversión de texto a voz y viceversa.
      • Vision: Generación de imágenes y análisis visual.

Modelos de GenAI por Plataforma Cloud

Cloud ProviderPlataforma/ServicioModelo(s)Empresa de AI Responsable
AzureAzure OpenAI ServiceGPT-4, Codex, DALL-EOpenAI
Azure Cognitive ServicesText Analytics, Speech, VisionMicrosoft
Azure Machine Learning (AML)Modelos personalizadosMicrosoft/Open Source
AWSAmazon BedrockClaude 3Anthropic
TitanAWS
Jurassic-2AI21 Labs
Stable DiffusionStability AI
SageMaker JumpStartModelos preentrenados (BERT, etc.)Varios (AWS, Open Source)
GCPVertex AIPaLM 2Google DeepMind
Generative AI StudioImagen, GeminiGoogle DeepMind
Cloud Functions for AIModelos personalizadosGoogle


Posted

in

by

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.