jueves, 16 de marzo de 2023

Machine Learning: ChatGPT, Bing y Bard

El término Machine Learning -- traducido en español como Aprendizaje Automático -- fue acuñado por Arthur Samuel en 1959, uno de los pioneros de la Inteligencia Artificial (Artificial Intelligence o AI para abreviar), y se define como una rama de la informática que otorga a las computadoras la capacidad de aprender sin ser programadas explícitamente. Básicamente es un nuevo paradigma para 'programar', o mejor dicho, para 'entrenar' las computadoras, utilizando nuevos algoritmos y métodos con los cuales las computadoras puedan aprender por sí mismas, de forma similar a como lo hacen los humanos -- ver Linea de Tiempo al final para más información sobre esta interesante historia.

  1. Introducción: Modelos y conceptos básicos
  2. Efecto ELIZA: Antropomorfizando la IA
  3. Controversias sobre la IA y Problemas por Resolver
  4. Linea de Tiempo del Machine Learning

 

Introducción: Modelos y conceptos básicos

Un modelo que se utiliza en "Machine Learning" es el del proceso de aprendizaje humano. Por ejemplo, los niños aprenden las primeras reglas del lenguaje materno escuchando las conversaciones de sus padres y sus mayores, no leyendo libros de gramática, ni tampoco necesitan ser 'programados' por instructores. Aunque luego cuando aprenden a leer, quizás entonces lean libros de literatura infantil y continúen con una educación formal. De esa manera, paso a paso, nuestro cerebro y nuestra mente heurísticamente van descubriendo las reglas gramaticales, fonológicas, morfológicas y semánticas, de nuestra lengua materna, es decir descubriendo por sí mismos los 'programas del lenguaje', e incluso descubren las excepciones a las reglas y las anomalías, para entonces aplicar ese conocimiento adquirido en nuevas conversaciones, y así continuar el proceso de aprendizaje. Incluso, según los lingüistas contemporáneos, tal parece que los humanos tenemos un núcleo gramatical innato que es 'universal', es decir, independiente de los muchos idiomas que existen en el mundo, y es a partir de ese núcleo innato que los niños tienen la capacidad para aprender las reglas del idioma materno específico, según la cultura.

El otro término que se suele mencionar, conjuntamente al "Machine Learning" (abreviado como ML en inglés), es el "Natural Language Processing" (abreviado como NLP), sobre todo cuando se habla del desarrollo de sistemas de Inteligencia Artificial 'conversacionales' con los cuales se puede establecer un diálogo, con preguntas y respuestas en tiempo real. Y en este sentido algunos desarrollos actuales del ML y el NLP son impresionantes, sobre todo en el caso de GPT-4, la nueva verisón de ChatGPT.

Y mientras estamos en las definiciones alrededor de la AI (y la Artificial General Intelligence o AGI que es como los expertos le llaman a una posible futura forma de AI que puede llegar a ser "más inteligente que los humanos") es bueno mencionar que existe otra clase de AGI llamada "Deep Learning" (abreviado DL) -- Aprendizaje Profundo en español -- término acuñado por Geoffrey Hinton considerado el padrino de la AI.

La diferencia entre Machine Learning (ML) y Deep Learning (DL) es como sigue: (1) En el ML se requiere la intervención humana en algunos pasos del proceso de entrenamiento, por ejemplo para definir los "labels" del Data Set que puede depender de miles de millones de parámetros, tarea que es realizada por los "prompt engineers" o "labelers" (un trabajo que puede requerir mucho tiempo), para entonces aplicar las técnicas matemáticas que se mencionan más adelante; (2) El DL es un caso particular de la ML basado en algoritmos de "Neural Networks" (Redes Neurales) que tiene como objetivo lograr que, a medida que aumenta el volumen de datos que tiene que manejar la aplicación ya entrenada, la Red Neural pueda llegar a una conclusión acertada sin necesidad de intervención humana; lo cual le puede conferir un valor especial como 'oráculo' o instrumento predictivo.

AI: Machine Learning vs. Deep Learning

Para los que quieran saber qué hay dentro de la "caja negra" de la AI, es interesante notar que el Machine Learning incluye diversas técnicas de estadística y álgebra lineal que se aplican a los 'Large Data Sets', para las cuales existen 'software libraries' que se pueden utilizar en Python y otros lenguajes de programación. Por ejemplo:
  • Numerical Prediction: Linear Regression, Logistic Regression, Elastic Regression, Random Forest.
  • Multi-Classification: Support Vector Machine (SVM), Classification And Regression Tree (CART), Decision-Tree, Naive Bayes, Neural Network.
  • Clustering: K-Nearest Neighbor (KNN), K-Means Clustering, Hierarchical Clustering.

De esta forma el Machine Learning se ha convertido en un nuevo paradigma de la computación, donde la profesión de Programador ha evolucionado en Ingeniero de ML y el DBA (Data Base Administrator) ahora tiene que ser un Data Analyst o un Data Scientist.

 

Efecto ELIZA: Antropomorfizando la IA

Históricamente, uno de los primeros sistemas de AI convesacionales fue el software ELIZA creado en 1966, y también los llamados 'Sistemas Expertos' que se hicieron populares en los años 1980, los cuales son los antecesores del actualmente famoso ChatGPT.

ELIZA fue el primer "chatbot" que se diseñó para simular una conversación mediante el uso de sustitución de patrones. El "script" más famoso de ELIZA fue llamado DOCTOR porque simulaba a un psicoterapeuta de la Escuela Rogeriana, en el que el terapeuta a menudo refleja las propias palabras del paciente, haciendo 'preguntas socráticas' abiertas que proyectaban las del propio usuario. De esta forma ELIZA logró pasar la 'Prueba de Turing' de la Inteligencia Artificial y cautivó a sus usuarios a pesar de que solo podía repetir algunas frases comunes (básicamente utlizando una técnica de 'adulación', repitiendo frases que el usuario le decía y añadiendo algunas propias), lo que conllevó a lo que los investigadores llaman el Efecto ELIZA, o la tendencia a antropomorfizar máquinas que imitan el comportamiento humano.

Sobre este efecto el diseñador de ELIZA luego observó: "De lo que no me había dado cuenta es de que las exposiciones extremadamente cortas a un programa de computadora relativamente simple podrían inducir pensamientos delirantes poderosos en personas bastante normales".

En el caso de las actuales aplicaciones de AI que tanto bombo publicitario han recibido recientemente, y que algunos han llegado a creer que son conscientes, como ChatGPT de OpenAI, el nuevo Bing Chat de Microsoft, el Bard basado en un LaMDA (Language Model for Dialog Applications) que Google promete incluir en todas sus aplicaciones, y otros como Cohere AI, técnicamente se trata de implementaciones de un "chatbot conversacional" basado en un "Large Language Model" que utiliza los algoritmos existentes de ML y NLP, donde la aplicación se 'entrena' (ya sea automáticamente o en forma supervisada) para lograr un objetivo específico, que en este caso es 'entender' las preguntas y 'generar' sus propias respuestas, manteniendo un diálogo inteligente con el usuario. Estas son técnicas similares a otras aplicaciones de "Chatbots" y "Digital Assistance" que ya existen desde hace algún tiempo, aunque ChatGPT es mucho más sofisticada y mucho más grande en cuanto al volumen de datos que maneja; de ahí el término "LLM" (Large Language Model).

ChatGPT, cuyo nombre viene de "Generative Pre-Trained Transformer", fue desarrollada por la compañía OpenAI (que comenzó como una iniciativa 'open source', aunque ya no lo es, pero el nombre Open se mantiene) y ha sido 'alimentada' durante años con un inmenso corpus de texto (un Data Set de 570 GB) prácticamente leyendo lo que existía en la Internet, como un "Web Crawler", hasta el punto en que terminó su entrenamiento (Septiembre 2021), incluyendo conversaciones en redes sociales, como Reddit y Quora, artículos de Wikipedia, páginas Web de diverso contenido, historias, poemas, y hasta código de computación (copiado del website Stack Overflow y otros), etc. De esta forma la 'máquina' ha 'aprendido' sus propias 'reglas' de conducta (su propio 'programa', por así decirlo), dando respuestas 'generadas' basándose en 'hechos' que en realidad pueden ser ciertos o falsos; y ese punto es importante. No obstante, lo más significativo es que las respuestas de ChatGPT no son programadas explícitamente, lo cual puede parecer mágico, y nos plantea el problema adicional de cómo explicar las decisiones del sistema en algunos casos.

Algo interesante sobre el nombre "GPT" es que incluye la palabra "Transformer" (Transformador); además de "Generative" y "Pre-Trained" que claramente son auto descriptivas. Los "Language Models" (Modelos de Lenguaje) han existido durante décadas. Hasta hace unos pocos años, los más potentes se basaban en lo que se denomina "Recurrent Neural Network" (Red Neuronal Recurrente). Básicamente, lo que hacen estos Modelos de Lenguaje es tomar una cadena de texto y predecir cuál será la siguiente palabra, y lo que lo hace Recurrente es que aprende de su propio resultado, es decir, sus predicciones retroalimentan la red para mejorar el rendimiento futuro. Sin embargo, en 2011, los investigadores de Google Brain introdujeron un nuevo tipo de arquitectura de AI llamada Transformador. La diferencia es que, mientras que una Red Recurrente analiza una oración palabra por palabra, el Transformador procesa todas las palabras al mismo tiempo. Esto significa que los Transformadores pueden procesar grandes volúmenes de texto en paralelo. De esa forma el Transformador puede generar una respuesta como si fuera un ensayo literario sobre un tema; en tiempo casi real.

Sin embargo, el hecho que ChatGPT pueda parecer muy inteligente en sus respuestas, no implica que pueda sentir emociones ni tampoco que sea consciente, ya que la Consciencia es un fenómeno muy diferente a la Inteligencia. Haciendo una comparación con otros seres inteligentes y conscientes que comparten nuestro planeta, en biología se utiliza la llamada Prueba del Espejo (en inglés, Mirror Self-Recognition Test) para conocer cuan conscientes de sí mismos pueden ser los animales. Este es un test que algunas especies logran pasar; por ejemplo algunos simios como chimpancés, orangutanes y bonobos, los monos babuinos, mandriles y rhesus (entrenados), el panda gigante, el elefante asiático, los delfines, las orcas, los leones marinos, algunas urracas y cuervos ... ¡ y mi gato, por supuesto ! ... pero no el gorila ...

Gorila fallando la Prueba del Espejo

Entonces, si uno profundiza en los algoritmos de los Modelos de Lenguaje y en cómo se implementa esta forma de AI, lo que encontramos es que ChatGPT contextualiza la conversación para anticipar la pregunta del usuario y así poder generar la respuesta en tiempo real. Es decir, que en esencia el GPT es una aplicación de "Autocomplete" glorificada. Como por ejemplo cuando uno le pregunta a Google "Why is [something] so … ", y Google te sugiere cómo completar tu pregunta, como si Google te leyera el pensamiento; lo cual puede ser un poco escalofriante para algunas personas.

El problema con esto es que en la ciencia de la computación existe una ley general que los ingenieros de software llaman GIGO (Garbage In, Garbage Out) y que aplicada a este caso significa que ChatGPT ha sido alimentada con una gran cantidad de datos que son "garbage" o basura que nosotros los humanos hemos estado produciendo durante muchos años, y eso es precisamente lo que ChatGPT nos devuelve. Peor aún, los humanos, colectivamente, en este caso estamos fallando la metafórica 'Prueba del Espejo' al no identificar nuestra reflexión en la pantalla de ChatGPT; que solo está repitiendo nuestros propios pensamientos -- y nuestras propias mentiras.

 

Controversias sobre la IA y Problemas por Resolver

Los defensores de "ChatGPT" hablan de los beneficios de esta forma de AI incluyendo el potencial aumento de la productividad en el trabajo de muchas personas, y como una gran ayuda para quienes tienen que manejar grandes volúmenes de datos y hacer búsquedas sofisiticadas para la toma de decisiones.

Por eso algunos empresarios y emprendedores ya están viendo en esto una excelente oportunidad para crear nuevos negocios y servicios, mientras que otros ya la están utilizando para predecir movimientos de las acciones en la Bolsa de Valores basándose en los anuncios de los Bancos Centrales y otras noticias.

Incluso en la física esta tecnología ha ayudado a los investigadores a reconstruir trayectorias de partículas en experimentos con aceleradores, buscar evidencia de nuevas partículas, detectar ondas gravitacionales y encontrar exoplanetas.

Por otro lado, los detractores de la AI actual, al igual que los antiguos 'luditas' ingleses del Siglo XIX (los trabajadores textiles que destruían los telares mecanizados porque temían que las máquinas les quitarían su sustento), temen que ChatGTP va a reemplazar muchos trabajos y será disruptivo para muchas industrias, con el potencial que esto tiene de crear crisis sociales.

En el sector de la educación en particular, los profesores están muy preocupados por la posibilidad de hacer trampa y fraude en exámenes y publicaciones científicas, si las personas usan el ChatGPT para generar ensayos y artículos académicos casi perfectos. Por ejemplo, ChatGPT ya ha demostrado ser capaz de pasar exámenes avanzados requeridos para licencias médicas, escuelas de derecho, y otros tantos. Mientras que otros lo ven como una oportunidad para rediseñar el proceso de entrenamiento y evaluación de los estudiantes que ya no tendrían que memorizar tantas cosas para poder pasar un exámen. Por eso ya se ha planteado la idea sobre poner algún tipo de "watermark" o filigrana para que las aplicaciones que detectan plagiarismo, como Turnitin, puedan identificar cuándo un texto ha sido generado por ChatGPT.

Aunque peor aún es el temor a la desinformación pública que estas aplicaciones de AI pueden generar, lo cual ya es un problema bastante serio en la actualidad; amplificado por las plataformas de redes sociales. Además ChatGPT en particular ha sido criticada por tener un sesgo hacia la izquierda del espectro político. Aparte de los problemas legales sobre los 'derechos de autor' del contenido utilizado, y las leyes de privacidad sobre 'datos personales', leyes que ChatGPT parece ignorar totalmente.

El potencial para generar desinformación es particularmente preocupante. Y aunque supuestamente a estos sistema de AI se le han diseñado "guardrails" (barandillas) para prevenir dicho comportamiento, en realidad ya se ha demostrado que esas barandillas son fáciles de rodear si el usuario entra ciertos "prompts" o comandos especiales que los expertos llaman "jailbreaks". Por ejemplo, si se le pide a la AI que imagine o haga un juego de roles con una situación en la que está tratando de convencer a alguien de una teoría conspirativa o tiene que transmitir una narrativa falsa como parte de ese papel. Según los investigadores, el Bard de Google generaría con éxito estas narrativas falsas, sin siquiera proporcionar a los usuarios ningún descargo de responsabilidad o indicaciones de que la información que estaban proporcionando podría ser falsa o cuestionable.

También se ha demostrado como la aplicación puede responder una pregunta presentando datos falsos, y cuando se le pide que explique de dónde vienen esos datos, entonces la aplicación redobla en su falsa respuesta haciendo referencia a fuentes que simplemente no existen. O sea que al parecer a la aplicación no le enseñaron a decir: "No sé". Incluso se ha demostrado que la aplicación puede inventar artículos de revistas falsos cuando se le pide consejo médico; lo cual puede ser peligroso. Por lo que muchas personas están preocupadas por las posibles consecuencias negativas para la sociedad si el software se utiliza para tomar decisiones importantes, como por ejemplo decisiones políticas, económicas, legales, o sobre la salud.

Esto sin contar el otro cuestionable uso de la AI generativa para producir imágenes y videos "Deep Fake", utilizando aplicaciones como DALL-E, Midjourney y Stable Diffusion, que van mucho más allá de lo que el programa Photoshop puede hacer, es decir, videos falsos que incluyen imágenes de alguna persona real, y que son muy difíciles de reconocer como falsos a simple vista, por lo cual se utilizan como herramienta de desinformación y propaganda política en las redes sociales.

Quizás algunos de estos problemas se resuelvan con la nueva versión de ChatGPT que acaba de salir, la GPT-4 que incluye 175 mil millones de parámetros en el Data Set. Aunque también hay que señalar que GPT-4 es una espada de doble filo muy poderosa, que hasta puede 'generar código' para programar computadoras; ya sea código para crear 'buenas' o 'malas' aplicaciones; incluyendo el "malware" usado por "hackers" para infectar las computadoras personales.

Por otra parte, la buena noticia es que uno le puede enseñar cosas a GPT-4. Por ejemplo, si te dice un error factual, tú le puedes decir que no es así, que el hecho es otro, entonces busca y te dice "perdón, me equivoqué"; y si después le haces la misma pregunta, te dice la respuesta que aprendió.

A pesar de algunas extrañezas que a veces muestran estas implementaciones de AI, como ciertos comportamientos impredecibes, o 'emergentes' como le llaman los investigadores. Por ejemplo cuando la AI dice "yo no soy un robot" y manifiesta una especie de doble personalidad. O lo que algunos describen como 'alucinaciones' de la AI, que pueden llegar a ser ofensivas; lo cual asusta a las personas.

Por todo esto un reconocido lingüista americano ha publicado una opinión muy crítica de ChatGPT en el New York Times, diciendo que el estado actual de la AI no puede replicar el razonamiento humano, careciendo de análisis crítico y de moralidad. El lingüista lo ha llamado una "banalidad del mal"; en referencia al ensayo "The Banality of Evil" donde se describe como 'alguien' o 'algo' puede hacer mucho mal en la sociedad sin ser intrínsecamente malvado.

De todas formas los debates sobre los dilemas éticos planteados por estos nuevos sistemas inteligentes que simulan el comportamiento humano seguramente van a continuar por largo tiempo.

Por cierto, a los hispano parlantes les interesará saber que ChatGPT puede entender el idioma español y otros tantos, aunque OpenAI aclara que ChatGPT ha sido mayormente entrenada en inglés. Yo la he probado en inglés y en español con resultados muy interesantes en ambos idiomas. Pruébala tú mismo en https://chat.openai.com y saca tus propias conclusiones.

En fin, que aunque la AI y ChatGPT prometen revolucionar el mundo en que vivimos, inteligencia y consciencia son cosas diferentes y tener una no implica tener la otra, aunque quizás podría existir una correlación respecto a ciertos atributos comunes en ciertos casos, pero eso aún esta por ver.



Nota: Linea de Tiempo del Machine Learning


1950: Alan Turing crea la "Prueba de Turing" para determinar si una computadora tiene inteligencia real. Para pasar la prueba, una computadora debe ser capaz de engañar a un humano haciéndole creer que también es humano.

1952: Arthur Samuel escribió el primer programa de aprendizaje por computadora. El programa era el juego de damas, y la computadora de IBM mejoraba en el juego cuanto más jugaba, estudiando qué movimientos componían estrategias ganadoras e incorporando esos movimientos en su programa.

1957: Frank Rosenblatt diseñó la primera "Neural Network" (Red Neural) para computadoras (un clasificador binario llamado "Perceptron"), que simula los procesos en las neuronas del cerebro humano.

1966: Joseph Weizenbaum diseña ELIZA, uno de los primeros "chatbots" con procesamiento de lenguaje natural (NLP). ELIZA simulaba una conversación con un psicoterapeuta mediante el uso de sustitución de patrones.

1967: Se escribió el algoritmo del "Nearest Neighbor" para resolver el problema del "Travelling Salesman", lo que permitió que las computadoras comenzaran a utilizar un reconocimiento de patrones muy básico. Esto podría usarse para mapear una ruta para vendedores ambulantes, comenzando en una ciudad aleatoria pero asegurándose de que visiten todas las ciudades durante un recorrido corto.

1980: Estudiantes de Carnegie Mellon University (Navlab) desarrollan un algoritmo de "Self Driving Car" para Autonomous Mobile Robot (AMR), que puede sortear obstáculos en una habitación por sí solo. Esto, unido a los algoritmos de polígonos (utlizados en juegos de computadora), más los avances en "computer vision" con GPS y mapas digitales, luego permitieron el desarrollo del "Autopilot" en autos como Tesla, etc.

1981: Gerald Dejong introduce el concepto de "Enquiry-Based Learning" (EBL) que permitió el desarrollo de 'Sistemas Expertos', en los que una computadora analiza los datos de entrenamiento y crea una regla general que puede seguir descartando datos sin importancia.

1985: Terry Sejnowski inventa "NetTalk", que aprende a pronunciar palabras de la misma manera que lo hace un bebé.

1990: Durante la década de los 90 el trabajo en "Machine Learning" cambia de un enfoque basado en programación de reglas a un enfoque basado en datos; aprovechando técnicas de "Data Warehouse" que ya existían, así como bases de datos espaciales o "vectoriales" que se utilizan en aplicaciones de Geographic Information Systems (GIS) y en geometría multidimensional. Los científicos comienzan a crear algoritmos para que las computadoras analicen grandes cantidades de datos (Large Data Set) y saquen conclusiones, o 'aprendan' de los resultados, sin tener que ser explícitamente programadas.

1997: La computadora "Deep Blue" de IBM vence al campeón mundial de ajedrez Garry Kasparov.

2006: Geoffrey Hinton acuña el término “Deep Learning" (Aprendizaje Profundo) para explicar los nuevos algoritmos que permiten a las computadoras "ver" y distinguir objetos y texto en imágenes y videos.

2010: Microsoft Kinect puede rastrear 20 características humanas a una velocidad de 30 veces por segundo, lo que permite a las personas interactuar con la computadora a través de movimientos y gestos.

2011: La computadora "Watson" de IBM supera a sus competidores humanos en Jeopardy.

2011: Se desarrolla Google Brain con una arquitectura de "Transformer" basada en una red neuronal profunda que puede aprender a descubrir y categorizar objetos como si fuera un 'cerebro artificial'.

2012: X Lab utiliza Google Brain para cear un sistema de aprendizaje automático con 16,000 computadoras que puede explorar de forma autónoma videos de YouTube para identificar los videos que contienen gatos. Más recientemente esta red ha sido extendido a través de la llamada AlexNet para identificar otros objetos.

2014: Facebook desarrolla "DeepFace", un algoritmo de software que puede reconocer o verificar personas en fotos al mismo nivel que los humanos.

2015: Amazon Web Services (AWS) lanza su propia plataforma de Machine Learning.

2015: Microsoft crea el kit de herramientas de aprendizaje automático distribuido, el cual permite la distribución eficiente de problemas de aprendizaje automático en varias computadoras.

2015: Más de 3000 investigadores de Inteligencia Artificial y Robótica, respaldados por Stephen Hawking, Elon Musk y Steve Wozniak (entre muchos otros), firman una carta abierta que advierte sobre el peligro de los drones militares y armas autónomas que seleccionan y atacan objetivos sin intervención humana.

2016: NVIDIA anuncia su primera computadora para Deep Learning; la supercomputadora DGX-1 consistente en 250 GPU servers en una RDMA network.

2016: El algoritmo de Inteligencia Artificial de Google vence a un jugador profesional en el juego de mesa chino Go, considerado el juego de mesa más complejo del mundo y muchas veces más difícil que el ajedrez. El algoritmo AlphaGo desarrollado por Google DeepMind logró ganar cinco juegos de cinco en la competencia Go.

2017: La red neuronal AlphaZero del laboratorio DeepMind de Google, programado con nada más que las reglas del ajedrez, se jugó a sí mismo 44 millones de veces y en 24 horas fue lo suficientemente fuerte como para derrotar a la mejor computadora de ajedrez del mundo con relativa facilidad.

2018: Investigadores de Google publican un seminal artículo académico sobre Machine Learning y NLP titulado: "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding".

... ¡El genio ya está fuera de la botella! ...


Nota: Para más información sobre la consciencia y la inteligencia, y sobre otros avances en la computación actual, ver las siguiente páginas:

Computadoras Cuánticas: Por qué son importantes

El Enigma de la Consciencia: Teoría Cuántica de la Consciencia



No hay comentarios.:

Publicar un comentario