El pasado sábado 28/ene/2023 tuvo lugar el evento Sidralytics, un evento de analítica web y digital que se celebra en San Sebastián.
Donde profesionales de la analítica digital se dieron cita para exponer las últimas tendencias, cambios y novedades del sector de la analítica.
Con ponentes como;
Natzir Turrado
Natzir Turrado hace SEO y CRO para proyectos digitales de gran envergadura y con altos requerimientos técnicos a través de su consultora boutique.
Le diferencia su enfoque holístico y la aplicación de métodos, técnicas y procesos de ciencia de datos tanto a los proyectos de posicionamiento como a los de conversión.
Iñaki Huerta
Iñaki Huerta es el director de IKAUE (ikaue.com), agencia referente a nivel nacional en Analítica y SEO, profesional del marketing online con un perfil marketing-técnico altamente orientado a la empresa y los resultados.
Iñaki Gorostiza
Iñaki Gorostiza es ingeniero informático y socio y director del Departamento de Analítica Digital en la consultora digital LIN3S, profesor de Analítica Digital en IE Business School, Universidad de Zaragoza y Universidad Complutense de Madrid.
Clara Soteras
Clara Soteras es especialista en SEO para Medios. Actualmente trabaja como Head of SEO en El Nacional, medio nativo digital con más de 8 millones de usuarios únicos mensuales en España.
En este evento se habló de manera extensa de como la analítica digital ha evolucionado con los modelos de GA4 y como la Inteligencia Artificial ha irrumpido en la analítica.
En este caso nos centramos en la ponencia de Natzir turrado donde desarrolla cómo la IA GPT-3 puede ayudar a los analistas digitales.
Qué es y cómo funciona GPT-3
Definición
GPT-3 es la 3º generación de Generative Pre-trained Transformer (GPT) un modelo de procesamiento del lenguaje autorregresivo desarrollado por OpenAI.
Es una Inteligencia Artificial General (AGI), por lo que es capaz de realizar varias tareas como generar o resumir texto, chatbot, completar fragmentos, responder preguntas, generar código y traducir idiomas. Siempre text-to-text.
Generativo es la capacidad del modelo de generar algo nuevo a partir de lo que ha aprendido durante el entrenamiento, pero ese “algo” no es más que una predicción (gracias al proceso autorregresivo).
Transformer es una arquitectura que permite aplicar atención bidireccional para analizar el contexto.
Es decir, para cada palabra, tiene en cuenta las palabras anteriores y posteriores a ella.
Esta arquitectura además permite replicar los conocimientos de un idioma al otro.
GPT-3 es la 3º generación de Generative Pre-trained Transformer (GPT) un modelo de procesamiento del lenguaje autorregresivo desarrollado por OpenAI.
Es una Inteligencia Artificial General (AGI), por lo que es capaz de realizar varias tareas como generar o resumir texto, chatbot, completar fragmentos, responder preguntas, generar código y traducir idiomas. Siempre text-to-text.
Basado en aprendizaje profundo, utiliza una arquitectura transformer y está entrenado con un gran corpus (753,4 GB).
El paper original no es claro sobre los contenidos y tamaños de los data set (excepto por el tamaño de Common Crawl). Existe un debate abierto al respecto.
Limitaciones
- Información desactualizada, a veces sesgada y no tiene acceso a Internet.
- Buena capacidad para aprender nuevas tareas, pero no se sabe si lo hace desde cero o si simplemente reconoce tareas que ya ha aprendido. Ha “aprendido” a hacer operaciones matemáticas sencillas a través de las referencias encontradas en la fase de entrenamiento. Para text-to-science está Minerva (Google) o Galactica (Meta AI).
- Aunque GPT-3 es bueno para generar textos, a veces repite lo mismo y pierde coherencia en textos largos.
- GPT-3 no es capaz de procesar información en ambos sentidos (es unidireccional en la predicción) y no se adapta bien a tareas que requieren comparar información.
- GPT-3 trata todas las palabras de un texto de igual forma y no tiene la capacidad de identificar qué palabras son más importantes en un texto.
- Debido a su tamaño, puede ser difícil implementar GPT-3 en aplicaciones.
Nota: GPT-3 es muy bueno cuando se trata de NLG (generación), pero es promedio en tareas de NLP regulares como la generación de resúmenes, Winograd, traducción, respuestas a libro cerrado, comprensión lectora, razonamiento con sentido común, SuperGLUE y NLI (inferencia).
Definiciones clave
Prompt
Entrada que le das al modelo. Es una instrucción en formato texto.
Completion
La salida que te da el modelo. Básicamente, la respuesta.
Token
Pieza de información. Cuando se envía un prompt o se recibe una completition, éstos se procesan en tokens. 1 tkn ≈ 4 caracteres o 0.75 palabras.
Nota: El castellano requiere de más tokens que el inglés por varios motivos.
Tiende a tener palabras más largas en promedio (más sílabas y estructuras morfológicas más complejas), más inflexiones para indicar las relaciones gramaticales (conjugaciones verbales, las declinaciones de sustantivos y los acuerdos de adjetivos) y una estructura gramatical más compleja (más tiempos y modos gramaticales).
OpenAI Tokenizer https://beta.openai.com/tokenizer
Diseño de prompts
Prompting o prompt engineering, es la forma mediante la cual condicionamos al modelo. Existen las técnicas Zero-shot, One-shot y Few-shot (manual o automática).
Prompts de baja calidad, generan respuestas de baja calidad o, lo que es lo mismo, la pregunta es más importante que la respuesta.
- Proporciona un contexto claro de qué quieres y cómo lo quieres en lenguaje natural. Sé preciso y trata de estructurar la instrucción (1). Si es muy larga, descomponla (2).
- Pregúntale a GPT cómo mejoraría una instrucción para ser mejor entendida por él mismo.
- Dile que te responda “no sé” si no está seguro de algo. Prueba también con crearle una personalidad humilde y que te justifique cómo ha llegado a esa conclusión.
- Agregando «Piensa paso a paso» antes de cada respuesta se aumenta la precisión con GPT-3 (3). ChatGPT ya viene ajustado con esto.
- Usa técnicas de one o few-shot: chain-of-thought manual (4) o automático ajustando un modelo a medida con la técnica *STaR (Self-taught Reasoner) (5).
(1) Least-to-Most Prompting Enables Complex Reasoning in Large Language Models https://arxiv.org/pdf/2205.10625.pdf
(2) AI Chains: Transparent and Controllable Human-AI Interaction by Chaining Large Language Model Prompts https://arxiv.org/pdf/2110.01691.pdf
(3) Large Language Models are Zero-Shot Reasoners https://arxiv.org/pdf/2205.11916.pdf
(4) Chain of Thought Prompting Elicits Reasoning in Large Language Models https://arxiv.org/pdf/2201.11903.pdf
(5) STaR: Bootstrapping Reasoning With Reasoning https://arxiv.org/pdf/2203.14465.pdf
Notas:
Software 3.0: Figure out the right prompt to make your meta-learning language model have the right behavior
The best ChatGPT examples from around the web; Learn Prompt Engineering by Exploring ChatGPT Examples (emergentmind.com)
OpenAI Cookbook; https://github.com/openai/openai-cookbook
Modelo
El modelo que elijas para procesar tu prompt según las necesidades.
Ajuste fino
El fine-tuning es la personalización de los parámetros del modelo para obtener mejores resultados.
Nota: Al utilizar Top P se tiene un mayor control sobre la precisión y corrección del texto generado por GPT-3, mientras que la temperatura es más adecuada para generar respuestas nuevas y creativas.
Si utilizamos uno, el otro tiene que estar a 1. La penalización por frecuencia limita la repetición de palabras al reducir la probabilidad de seleccionar una palabra que ya se ha utilizado con anterioridad.
La penalización por presencia se enfoca en evitar repeticiones de temas al considerar si una palabra ya ha aparecido en el texto, independientemente de la cantidad de veces que se ha usado.
Con Best Of controlamos la cantidad de intentos que el modelo hará para generar una salida.
Mediante Maximum length, controlamos la cantidad de tokens de la respuesta.
Nota: Guía de ajuste fino hiper parámetros para text-davinci-003 basada en mi experiencia con GPT-3.
Los valores pueden variar dependiendo del uso específico y del conjunto de datos. Es necesario probar diferentes combinaciones de hiper parámetros y evaluar su rendimiento para cada aplicación.
ChatGPT
Modelo de lenguaje basado en GPT-3.5 y optimizado para el diálogo mediante aprendizaje por Refuerzo con Retroalimentación Humana (RLHF).
Es menos potente que GPT-3 al estar entrenado sólo para una tarea y no permitir el ajuste fino, pero más sencillo de manejar ya que sólo requiere del prompting para su uso.
Desde que se liberó el 30/11/2022 de forma gratuita, ha continuado aprendiendo a través de HF.
Casos de uso para Analítica Digital
- Aprobar certificaciones
- Asistente de implementaciones
- Explicación de peticiones SQL
- Decodificador de peticiones
- Configurador de dataLayers
- Auditor de dataLayers
- Asistente de R GPTStudio by MichelNivard; https://github.com/MichelNivard/gptstudio
- Asistente de Python
- Asistente de Google Sheets
Imagen;
plantilla-pagina-aterrizaje-inteligencia-artificial > en Freepik > freepik.es
banner-pagina-aterrizaje-isometrica-marketing-financiero > de upklyak > en Freepik > freepik.es
Referencias;
https://es.slideshare.net/NatzirTurrado/cmo-gpt3-puede-ayudar-a-los-analistas-digitales