Francis Villatoro explica cómo se ajustan los parámetros de una red neuronal multicapa comparando las salidas de la red con los datos de entrenamiento.
…que utilizan muchas de ellas en el aprendizaje al menos cuando son redes neuronales pequeñitas no estamos hablando de las grandes. que se usan en las empresas como Antropic o las que nos dan servicio Sí, además es una cosa extremadamente curiosa porque es una Cosa como muy obvia, muy sencilla de entender y sorprende que a nadie se le ocurriera que esto podía ser relevante porque ya se sabía en el entrenamiento de redes neuronales. Muchas veces cuando vemos en libros, etc., la curva de las pérdidas, de la calidad del entrenamiento, del error que comete la red: La red es un Sistema en el que yo meto una entrada, obtengo una salida y en el proceso de entrenamiento la red tiene una serie de parámetros, muchos parámetros, una serie de matrices y vectores que caracterizan la dinámica, el comportamiento de la red neuronal multicapa. Cada capa tiene sus matrices y sus vectores. Yo meto una entrada y claro, yo tengo que ajustar, entrenar la red, los parámetros. Yo no sé cuáles son los parámetros correctos, entonces voy. metiendo entradas y las salidas las comparo con los datos de entrenamiento. Yo sé cuál es la salida correcta, pues comparo la salida de la red neuronal con la salida correcta y eso me permite determinar el error que yo uso para corregir el estado actual de los parámetros de la red. Yo opero en un conjunto de pasos de entrenamiento. Básicamente suelo dividir el conjunto de entrenamiento, que suele ser un conjunto grande, en una serie de bloques; y para cada bloque veo cuáles son las salidas de la red neuronal, calculo los errores y uso lo que se llama el gradiente, el algoritmo del descenso del gradiente. Ahora explicaré un poquito de qué va; y uso esos errores para modificar los pesos. Entonces, cada paso yo modifico los pesos y voy repitiendo. Estos pasos hasta que acabo con todo el conjunto de entrenamiento; en ese momento hablo de una época de entrenamiento y normalmente una red neuronal requiere múltiples épocas en las que voy pasando por todos los datos de entrenamiento. Una de las cosas que se había observado en ciertas redes, sobre todo en redes relativamente pequeñas, pero ahora hay evidencia también en una red grande: es que el error de la red durante el entrenamiento. No era monótono. Muchas veces en los libros vemos que el error es alto; el error baja rápidamente. Después se relaja y baja pero mucho más despacio. Es la curva ideal para el entrenamiento. Pero se habían observado muchos casos en los que el error baja y…
Francis Villatoro explica cómo se ajustan los parámetros de una red neuronal multicapa comparando las salidas de la red con los datos de entrenamiento.
Habla: Francis VillatoroSignificado #1 · Palabras #2curva de pérdidas en redes neuronalesentrenamiento de redes neuronalesparámetros de matrices vectoresentrenamiento de la red neuronalajuste de parámetros durante entrenamientored neuronal multicapa villatorodatos de entrenamiento francis villatorosalida correcta comparada con iVooxerror para corregir parámetros reddescenso del gradiente modifica pesosred neuronal divide conjunto entrenamientoalgoritmo descenso gradiente calcula erroresépocas de entrenamiento de red neuronaldatos de entrenamiento múltiples épocasredes neuronales pequeñas y grandes…que utilizan muchas de ellas en el aprendizaje al menos cuando son redes neuronales pequeñitas no estamos hablando de las grandes. que se usan en las empresas como Antropic o las que nos dan servicio Sí, además es una cosa extremadamente curiosa porque es una Cosa como muy obvia, muy sencilla de entender y sorprende que a nadie se le ocurriera que esto podía ser relevante porque ya se sabía en el entrenamiento de redes neuronales. Muchas veces cuando vemos en libros, etc., la curva de las pérdidas, de la calidad del entrenamiento, del error que comete la red: La red es un Sistema en el que yo meto una entrada, obtengo una salida y en el proceso de entrenamiento la red tiene una serie de parámetros, muchos parámetros, una serie de matrices y vectores que caracterizan la dinámica, el comportamiento de la red neuronal multicapa. Cada capa tiene sus matrices y sus vectores. Yo meto una entrada y claro, yo tengo que ajustar, entrenar la red, los parámetros. Yo no sé cuáles son los parámetros correctos, entonces voy. metiendo entradas y las salidas las comparo con los datos de entrenamiento. Yo sé cuál es la salida correcta, pues comparo la salida de la red neuronal con la salida correcta y eso me permite determinar el error que yo uso para corregir el estado actual de los parámetros de la red. Yo opero en un conjunto de pasos de entrenamiento. Básicamente suelo dividir el conjunto de entrenamiento, que suele ser un conjunto grande, en una serie de bloques; y para cada bloque veo cuáles son las salidas de la red neuronal, calculo los errores y uso lo que se llama el gradiente, el algoritmo del descenso del gradiente. Ahora explicaré un poquito de qué va; y uso esos errores para modificar los pesos. Entonces, cada paso yo modifico los pesos y voy repitiendo. Estos pasos hasta que acabo con todo el conjunto de entrenamiento; en ese momento hablo de una época de entrenamiento y normalmente una red neuronal requiere múltiples épocas en las que voy pasando por todos los datos de entrenamiento. Una de las cosas que se había observado en ciertas redes, sobre todo en redes relativamente pequeñas, pero ahora hay evidencia también en una red grande: es que el error de la red durante el entrenamiento. No era monótono. Muchas veces en los libros vemos que el error es alto; el error baja rápidamente. Después se relaja y baja pero mucho más despacio. Es la curva ideal para el entrenamiento. Pero se habían observado muchos casos en los que el error baja y…
Francis Villatoro explica cómo la entropía cruzada se utiliza para estimar el progreso del entrenamiento de redes neuronales, comparando los resultados obtenidos con una distribución de probabilidad conocida.
Habla: Francis VillatoroSignificado #2 · Palabras #15entropía cruzada entrenamiento redes neuronalessoftmask estimación probabilidades redprogresión entrenamiento distribución probabilidadépocas de entrenamiento informaciónentropía cruzada fluctuabaaprendizaje desaprendizaje oscilatoriocolapso de softmax observadocancelación de softmax…verdadero a partir de las probabilidades de ese mensaje verdadero. Entonces, lo que me da la entropía cruzada es la cantidad de información que yo he adquirido en este momento del descifrado. Eso en redes neuronales se interpreta como una estimación de la Calidad del entrenamiento. Cuando yo estoy entrenando la red, yo estoy generando resultados y comparo los resultados con los resultados verdaderos, de los cuales sí tengo una distribución de probabilidad. Entonces uso las probabilidades de los resultados verdaderos y las estimaciones, por ejemplo mediante SoftMask, de las probabilidades de los resultados de la red y eso me da, esa correlación, esa entropía cruzada me da una estimación de lo que estoy progresando en mi entrenamiento: si estoy ganando información en cómo estoy procesando, cómo estoy pasando, cómo está evolucionando cada una de las etapas y cada una de las épocas de entrenamiento o si no estoy ganando información. Lo que se observaba en esos procesos en los que El entrenamiento oscilaba, era que la entropía cruzada oscilaba. Yo iba aprendiendo y de repente dejaba de aprender y desaprendía. Y entonces subía la entropía cruzada y después volvía a bajar porque volvía y tenía un comportamiento oscilatorio. Entonces se ha observado el otro fenómeno que era el colapso de Softmax y también la cancelación de Softmax. La Cancelación de Softmax es relevante en los procesos de destilado. Todos hemos oído hablar de las compañías chinas que se supone que con recursos limitados por la ley de Trump de que les prohíbe a NVIDIA venderles la última máquina, la última tarjeta, la más…
Francis Villatoro explica cómo se utiliza la técnica de destilado en el entrenamiento de redes neuronales, aprovechando las respuestas de modelos grandes como ChatGPT o LLaMA.
Habla: Francis VillatoroSignificado #17 · Palabras #6empresas chinas entrenan modelosgpus para entrenamiento chinatecnología estados unidos restriccionesdestilado con chatgpt y llamaredes neuronales entrenadas clotentrenamiento acelerado con modelos grandestecnología barata para redes neuronales…chinas, en lugar de poderse gastar 5.000 millones de dólares en máquinas, se tienen que gastar 1 .000 millones de dólares. No estamos hablando de pecata a minuta. A veces se dice, no, es que lo hacen así con el ordenador en su casa, con su portátil lo hacen. Si su portátil no cabe ni lo que están entrenando, ¿no? O sea, pero tienen que usar una tecnología un poquito por detrás, una tontería de los Estados Unidos; de hecho ya hay empresas fabricando sus propias GPUs para entrenamiento en China con tecnología que no es de envidia. Pero bueno, en cualquier caso, En ese proceso se utiliza una técnica que se llama destilado; y en el destilado lo que yo hago es que una red neuronal ya entrenada, un gran modelo de lenguaje ya entrenado ChatGPT, CLOT, las grandes empresas, Lama, ya entrenado, me dé la respuesta buena a las preguntas. Entonces yo en la fase de entrenamiento no tengo que, puedo acelerar, digámoslo así, el entrenamiento buscando que las respuestas de mi red, que me cuesta más trabajo entrenar porque tengo una tecnología un poquito más barata para hacerlo, coincida con la que da el modelo grande. Entonces, lo que hacen los chinos, que se supone que lo han hecho y es una cosa que no pueden confesar de verdad, pero bueno, que lo dicen así en plan rumulología, es que supuestamente miles de usuarios chinos están usando la tecnología de Estados Unidos,…
Francis Villatoro explica un proceso de entrenamiento llamado 'entrenamiento por destilado', donde una red neuronal actúa como 'estudiante' y otra más grande como 'profesor'. Describe que el objetivo es comparar las probabilidades de respuesta entre ambas redes.
Habla: Francis VillatoroSignificado #11 · Palabras #7entrenamiento por destilado red neuronalred estudiante compara probabilidades profesorprobabilidades de respuesta en entrenamiento destilado…por el gusto personal de tener ellos en su cuenta Entonces le están preguntando cosas a estas inteligencias artificiales con objeto de comparar esas respuestas con las respuestas que dan sus propias redes neuronales durante la fase de entrenamiento Entonces Se llama un entrenamiento por destilado, un entrenamiento profesor-alumno. Entonces aquí tenemos el mismo problema que antes, lo que pasa es que ahora estamos comparando la probabilidad a las respuestas que ofrece el profesor con la probabilidad que durante el entrenamiento por destilado ofrece el estudiante. Entonces, cuando ambas probabilidades se acercan a uno, me encuentro. Con la diferencia cancelativa. Entonces, lo llaman soft mass cancellation. Es la cancelación de la estimación de probabilidades basada en soft mass en el caso de destilado. Y aquí la solución es prácticamente la misma que se obtiene en el otro caso. Entonces,…
Francis Villatoro aborda la preocupación suscitada en redes sociales sobre los problemas que enfrentan los estudiantes al entrenar redes neuronales pequeñas, contrastándolo con las implicaciones si este problema afectara a empresas como OpenAI.
Habla: Francis VillatoroPalabras #12redes neuronales pequeñas estudiantesentrenamiento openai decenas de miles millonesproblema estudiantes afecta a nadieépocas entrenamiento redes neuronalesgrandes compañías y pocas épocasredes neuronales con parámetros afectan poco…destilado. Y aquí la solución es prácticamente la misma que se obtiene en el otro caso. Entonces, estos son los dos ejemplos en los que ellos han puesto diferentes redes relativamente pequeñas y claro, aquí la gran pregunta es lo que comentaba Ignacio, ¿no? Lo que se ha comentado mucho en redes sociales: ¿Esto realmente nos preocupa? Porque, la verdad, lo que le pase a los estudiantes de mi clase cuando yo les obligue a entrenar redes neuronales relativamente pequeñas, pues le importa un comino a todos nuestros oyentes problema de los estudiantes. Si se encuentra con este tipo de problema, pues es asunto suyo, a nadie más afecta. Pero si esto pasa, por ejemplo, en el entrenamiento de OpenAI, eso significa que el entrenamiento va a costar unos cuantos decenas de miles de millones de dólares más que si esto no pasara, con que el entrenamiento sea más lento. Entonces, claro, uno dice: esto es preocupante. Bueno, claro, lo que te dicen las grandes compañías: no, no nos preocupa. Esto no nos preocupa porque, en realidad, este tipo de entrenamiento de las grandes redes neuronales que utilizan estas grandes compañías utilizan muy pocas épocas de entrenamiento, utilizan poquitas; de hecho, menos de 10 en muchos casos, incluso en algunos casos hasta 3, o sea, porque son redes tan grandes con tal número de parámetros que esto les afecta poco. Entonces, bueno, pues, en principio, estas pequeñas diferencias cancelativas son, entre comillas, irrelevantes para este tipo de problemas. Pero se Ha publicado un artículo, y se publicó en septiembre el 28 de septiembre, o sea, hace un par de semanas. De unos investigadores chinos que utilizan una red que no es pequeña, ¿vale? Una red que no es pequeña para la escala normal: es una red que tiene 450…
Francis Villatoro describe un fenómeno observado durante el entrenamiento de una red neuronal con una cantidad relativamente pequeña de memoria (50.000 millones de tokens). Explica que, al realizar muchas épocas de entrenamiento, la red puede volverse inestable y 'irse de olla'.
Habla: Francis VillatoroSignificado #9 · Palabras #9red neuronal con 50000 millones tokensentrenamiento inestable de red neuronalerrores del 200 en gradientesredes neuronales inestables villatoroentrenamiento de redes relativamente grandes…de entrenamiento, ¿vale? O sea que es pequeña comparada con las de OpenAI y que tienen billones con B, millones de millones de parámetros, ¿no? Aquí estamos hablando de solo 450 millones, pero 450 millones de parámetros son ya unos cuantos, ¿eh? Requieren... Y lo que han observado en una red en la que estaban entrenando con una cantidad de memoria por relativamente pequeña, 50.000 millones de tokens, ¿eh? Han observado que aparece este tipo de fenómeno en el proceso de entrenamiento: cuando el entrenamiento tiene muchas épocas, llega un momento en que de repente se va de olla y se va. Y se desvía una barbaridad con errores enormes, errores en los gradientes que pueden llegar a ser del 200%, del 200%, 219% en algunos parámetros. Es una barbaridad, con lo que incluso en el entrenamiento de este tipo de redes relativamente grandes también se observa este fenómeno y la solución es tan sencilla como cambiar unas restas en un cierto lugar y corregirlas. Por cierto, este artículo del 28 de septiembre se publicó antes que el de DeepMind y utiliza la misma técnica de resolver estas diferencias cancelativas, o sea que se ha publicado esto varias veces. Qué curioso, Francis; deja que te pregunte por esto porque…
Francis Villatoro explica que las grandes compañías como Google DeepMind guardan en secreto los detalles de sus procesos de entrenamiento neuronal.
Habla: Francis VillatoroSignificado #7 · Palabras #14entrenamiento neuronal google deepmindsecreto industrial entrenamiento neuronalgoogle deepmind guarda detalles…que explotan nuestros experimentos son poco comunes en el entrenamiento estándar a gran escala, o sea, consideran que están un poco al margen, que no les afectaría. ¿Hay una división de opiniones respecto a ese paper que nos decías en septiembre? ¿Este? ¿O está claro que afectan? Claro, aquí el gran problema es que las grandes compañías no te lo van a confesar porque esto es... Claro, es eso. Los detalles de lo que hacen en el entrenamiento es alto secreto y no es secreto industrial, ¿no? Y estamos hablando de gente que es de Google DeepMind, que tiene que decir lo que nosotros estamos haciendo está bien, ¿vale? O sea, que nadie se preocupe, que nosotros esto no lo hemos visto en nuestras redes. Esto lo hemos visto en los ejemplos de juguetes de los demás, ¿no? Pero lo nuestro no lo hemos visto, ¿eh? Es un ataque defensivo. Lo que sí está claro es que nunca lo puedes…
Francis Villatoro explica que es posible que cierta información no se haya aprendido correctamente durante el entrenamiento de redes neuronales debido a fenómenos indetectables sin un análisis específico.
Habla: Francis VillatoroSignificado #10redes neuronales entrenamiento indetectableanálisis específico redes neuronales…se preocupe, que nosotros esto no lo hemos visto en nuestras redes. Esto lo hemos visto en los ejemplos de juguetes de los demás, ¿no? Pero lo nuestro no lo hemos visto, ¿eh? Es un ataque defensivo. Lo que sí está claro es que nunca lo puedes saber, ¿vale? O sea, si no haces un análisis específico para detectar esto, nunca puedes saber si te ha ocurrido. Entonces es posible que en algunas ocasiones cierta información no se haya, en el entrenamiento no se haya aprendido bien por culpa de este tipo de fenómenos y eso es algo que tú no lo sabes porque está ahí metido, está dentro de la red, solamente de manera controlada en experimentos muy específicos tú puedes llegar a detectar ese tipo de fenómenos. Habrá que seguir investigando eso y Francis, sé que te tienes que ir, pero si quieres añadir algo, quédate un ratito más y a la vuelta de la pausa nos añades el final y te hacemos un par de preguntas, porque hemos llegado a esa hora, a esa hora en la que…
Francis Villatoro explica un problema que surge tras entrenar una red neuronal más grande con más datos, donde esta muestra un rendimiento inferior a modelos anteriores durante la fase de prueba.
Habla: Francis VillatoroSignificado #19 · Palabras #3red neuronal más grande con datosrendimiento inferior en fase de pruebadesaprender cosas red neuronal…entrenando, todavía no hemos empezado, vamos a empezar ahora, ahora vamos a empezar, en 13 meses lo tendremos, y en 3 meses, todavía no lo tenemos. Y entonces es posible que algunas de esas cuestiones estuvieran relacionadas con este tipo de problemas. Tras entrenar a la red en circunstancias parecidas, una red más grande, con más datos, que supuestamente tiene que ser más poderosa y haber aprendido más cosas, de repente cuando vas a hacer la fase de prueba descubres que ha desaprendido muchísimas cosas y que es peor que la que ya tenías. Esto no lo puedo sacar al mercado ¿Y por qué? ¿Ha ocurrido? Pues lo mismo ha ocurrido por una razón de este tipo. Esto me interesa, y es lo que te quería preguntar antes porque dices que puede que en parte estos retrasos se deban a este error que se ha detectado, y que ya en otros contextos se conocía.…