logo

Dot CSV

Inteligencia Artificial, Tecnología, Ciencia y Futuro! Bienvenidos a la 4ª Revolución Industrial 🚀 Inteligencia Artificial, Tecnología, Ciencia y Futuro! Bienvenidos a la 4ª Revolución Industrial 🚀

Transcribed podcasts: 213
Time transcribed: 5d 22h 50m 3s

This graph shows how many times the word ______ has been mentioned throughout the history of the program.

Que no te confunda el silencio de las últimas semanas. Porque en el mundo de la inteligencia
artificial se está viviendo una batalla industrial sin precedentes. Una batalla donde la IA ha puesto
a grandes empresas como Microsoft o Google a bailar, luchando por sus mercados habituales,
sí, pero también por los nuevos mercados que emergen. Un juego donde los grandes laboratorios
de inteligencia artificial han tomado parte y donde ponen todos sus recursos a trabajar para
entrenar mejores y más potentes cerebros artificiales. Y una batalla donde nuevos jugadores compiten
ferozmente por hacerse un hueco en el tablero para así poder ser también partícipes de una
nueva revolución industrial que ya ha comenzado. Todo esto lo podemos ver ahora como una gran
partida de ajedrez donde ahora todos compiten, pero donde el que gana es el dueño del tablero.
Hablemos de envidia.
Originalmente, esto no era así. En la década de los 2000, NVIDIA estaba únicamente enfocada en
producir hardware para el procesamiento de gráficos por ordenador en tiempo real,
principalmente orientada al mercado gaming. Ya sabéis, el usar la tarjeta gráfica como un
procesador especializado que ayudara a aliviar la carga de trabajo de la CPU. Pero a medida que las
GPUs se volvían cada vez más avanzadas, los ingenieros empezaron a notar que ahí había más
potencial que se podía aprovechar. El potencial del procesamiento en paralelo. Y fue esto,
la realización de que esta aceleración por hardware podría ser útil más allá de mover polígonos de
colores por la pantalla, lo que hizo reorientar la estrategia de NVIDIA hacia el concepto de GPGPU,
la utilización de las GPUs para uso de propósito general. Es decir, permitir aprovechar el potencial
del procesamiento en paralelo de las GPUs más allá de los gráficos por ordenador, para que ahora
cualquiera pudiera desarrollar aplicaciones que se beneficiaran de esto. Aplicaciones como
criptografía, análisis de datos, simuladores científicos o deep learning. Suena bien, ¿no?
Pues la cosa no era tan sencilla. La dificultad es que si tú querías programar a la GPU para hacer,
por ejemplo, una aplicación científica, pues un simulador molecular, claro. Originalmente,
tú tenías que darle instrucciones a un cacharro que estaba pensado para gráficos por computador,
y por tanto, tenías que adaptar tu código a las instrucciones gráficas de la tarjeta. Y esto es
como intentar dar órdenes para hacer una tarea compleja, un simulador molecular, hablando directamente
con un pintor. Complicado. Y ahí fue cuando NVIDIA, en 2007, introdujo los cambios necesarios para que,
ahora sí, pues pudieras instruir a la tarjeta gráfica de forma más entendible. Como si hablaras
directamente con un programador. Este nuevo personaje, esta nueva forma de hablar con la GPU,
era CUDA. CUDA, a muchos de vosotros os sonará. Ya sea porque habéis programado directamente para la
GPU, o por todas las veces que os habéis peleado instalando las librerías de CUDA cuando queríais
probar algún proyecto de Deep Learning. Y es que sí, la historia del Deep Learning y de CUDA está mucho
más entrelazada de lo que podríamos imaginar. Pero este fue un noviazgo que tardó unos cuantos años
en ocurrir. La cosa es la siguiente. Cuando tenemos una red neuronal, la información se va procesando
capa tras capa en diferentes neuronas, multiplicando y sumando la información. Al final, como las neuronas
de una misma capa no dependen de las otras neuronas en dicha capa, pues cada una puede hacer su cálculo
independientemente en paralelo. Y también, como los datos de entrada en cada lote se van a procesar de
forma independiente, pues esta es una ejecución que también podemos procesar en paralelo. Paralelizar,
paralelizar y paralelizar. Y así, si nos damos cuenta, es como nos vamos encontrando formas de
ir paralelizando la ejecución de las redes neuronales, para que el trabajo, en vez de hacerlo
secuencialmente, teniendo que esperar por la ejecución previa, ahora se pueda hacer simultáneamente.
Algo que de forma drástica acelera la ejecución. Además, también da la casualidad de que en muchos
casos procesar gráficos por ordenador equivale a multiplicar las matrices y vectores que representan
a cada polígono. Matrices y vectores que también encontramos en las redes neuronales cuando tenemos
que procesar los datos a través de las diferentes capas de matrices de parámetros. Ejecutar redes
neuronales y representar gráficos por ordenador no es tan diferente, simplemente multiplicar
vectores y matrices. Con lo cual, sin quererlo ni beberlo, ya en 2010 contábamos con estas GPUs que
eran aptas para realizar tareas de propósito general y que eran muy adecuadas para el entrenamiento de un
tipo de algoritmo que, oye, parecía que podía tener potencial dentro del campo de la inteligencia
artificial. Las redes neuronales artificiales. Y fue en 2012 cuando un equipo de investigadores en
el que encontramos a Geoffrey Hinton, a Ilia Sutzkeberg y a Alex Krzyzewski, que usaron varias GPUs para el
entrenamiento de una red neuronal bautizada como AlexNet. La presentaron a una competición de análisis de
imágenes, donde laboratorios de todo el mundo proponían sus soluciones y donde esta fue una
de las primeras basadas en técnicas de Deep Learning. El resultado, pulverizaron por completo
al resto de equipos. Y esta fue una de las primeras ocasiones donde quedó indudablemente claro el
potencial de las redes neuronales artificiales. El punto en el tiempo en el que muchos sitúan el
comienzo de la revolución del Deep Learning. Del Deep Learning y las tarjetas gráficas. Porque uno de los
puntos claves de este trabajo fue el uso de las GPUs para acelerar el entrenamiento de lo que por
aquella época eran grandes redes neuronales. El equipo tras AlexNet utilizó el poder de la
ejecución en paralelo para agilizar drásticamente los tiempos de entrenamiento y permitirse así el
poder entrenar una arquitectura de mayor tamaño y con más datos. Y a partir de ese momento, pues como
se suele decir, el resto ha sido historia.
Toda esta época del Deep Learning que ahora vemos con mucha nostalgia no hubiera sido posible sin el
desarrollo en paralelo del mercado de las tarjetas gráficas. Y junto al crecimiento del sector del Deep
Learning y el crecimiento en tamaño y capacidad de los modelos, NVIDIA también creció.
De hecho ya hablamos de todo esto en este vídeo de aquí de hace tres años, donde os presenté la
premonitoria Ley de Juan. Una ley empírica que en este caso toma el apellido del CEO de NVIDIA,
Jensen Juan, para compararse a la famosa Ley de Moore. La ley que supo predecir cómo el número de
transistores de los microprocesadores que usamos en todos nuestros dispositivos se iba a ir duplicando
cada dos años, haciendo que cada dos años estos chips fueran más capaces y eficientes. Pues en este
caso la Ley de Juan se centra, como no, en los procesadores gráficos, en las GPUs. Y lo que nos dice
es que a pesar de que a la Ley de Moore cada vez le cuesta más cumplir con su cita por los límites que
la propia física impone, a pesar de eso el progreso de las GPUs iban a seguir un camino diferente. Un camino
donde su rendimiento se duplicaría cada año. Y esto es curioso si lo pensáis, porque al final la
Ley de Juan depende fuertemente de la Ley de Moore. Es decir, el desarrollo de las GPUs pues está
estrechamente ligado con que podamos seguir miniaturizando los transistores en los chips,
¿no? Pues no solo depende de eso, también podemos encontrar un montón de técnicas, de optimizaciones,
de mejoras en las arquitecturas de los chips que exploten el potencial de la computación en paralelo,
y en concreto su aplicación para inteligencia artificial. Ahí es donde encontramos muchas,
muchas ganancias. Y del cual lo planteó y en San Juan en 2019, la cosa estaba así.
Nuestra empresa es dirigida a avanzar la performance en todos los fields de la science,
y en realidad, si miras a nuestro progreso, esto es realmente increíble.
Nuestro progreso en los últimos 5 años. 5 años atrás, los K80 servers, si entrenados en ResNet 50,
hubiera tomado 600 horas, entrenando este modelo 600 horas, ahora lo hacemos en 2. Ahora,
cuando compongas todo eso, es básicamente unos 30X más de 5 años. Y esto aumenta cada año.
Esto aumenta en la ley Supermore.
Pero esto era 2019. ¿A partir de ese momento se ha seguido cumpliendo esta predicción? Pues mirad,
si visualizamos la siguiente gráfica, la tendencia de la última década es clara. Cuando pasamos de
las P100 a las V100, y luego a las A100, y recientemente a la arquitectura Hopper,
con las famosas H100, la tendencia con la que nos encontramos es esta. En cosa de una década,
el rendimiento de estos chips se ha multiplicado por mil. Una mejora de rendimiento que, como ya he
indicado antes, viene a dar respuesta a una necesidad del mercado de cada vez más computación
para el entrenamiento y la inferencia de inteligencia artificial. Algo que en los últimos 2 años se ha
acentuado con la llegada de la IA generativa y, en concreto, con los enormes modelos del lenguaje.
Para que os hagáis una idea, en el blog de semianálisis se estimaron que el preentrenamiento
de GPT-4 se realizó sobre unos 25.000 chips de Nvidia A100 de la generación anterior Ampere,
y este entrenamiento pudo llevar entre unos 90 y 100 días. Por comparar si esto se hubiera
realizado sobre las actuales H100, el preentrenamiento hubiera requerido solo unas 8192 H100,
funcionando más o menos la mitad de tiempo. Esta reducción de tiempo, costo y cantidad de
tarjetas es importantísima. Y de ahí que en 2023, tras estallar la locura del boom de la IA
generativa, empezara también la locura de muchísimas empresas queriendo acceder a los chips de Nvidia.
En Silicon Valley, la nueva moneda de cambio se convirtió en el acceso a las GPUs A100 y H100,
y el meme nos llevó incluso a la situación de hablar de los rich GPUs, los ricos en GPUs, las grandes
compañías tecnológicas que estaban usando incluso su capacidad en computación para atraer a investigadores
a su empresa, y los poor GPUs, los pobres en GPUs, que eran esas startups que solo tenían acceso a
cientos de GPUs. Pobres en GPUs. Pero realmente me fastidia reconocer que sí, a la vista de las
últimas noticias que nos van llegando, pues empezamos a evidenciar que esta diferencia entre rich GPUs y
poor GPUs existen. Ya que vemos como compañías como Meta recientemente han anunciado que para
finales de 2024 van a contar con 350.000 H100 compradas a Nvidia, y que sumadas a su infraestructura
haría un total de potencia equivalente a unas 600.000 H100. Una auténtica barbaridad, y un movimiento
que veremos replicado por parte del resto de empresas. Y lo que tenemos que entender es que el
entrenamiento de modelos tan impresionantes como GPT-4 ocurrió en este periodo de transición donde
los centros de computación estaban basados en chips V100 y A100. Y es ahora cuando todas estas grandes
empresas se están rearmando para que sus centros de computación basados en H100 empiecen a cocinar
los futuros modelos de última generación. Como dije, el tablero de juego, la infraestructura ya está puesta,
y la batalla por la inteligencia artificial ha comenzado.
Pero volvamos a los orígenes. Porque cuando Nvidia comenzó a vender GPUs, su primer consumidor era
y vosotros. El público general, que quizás nunca se va a comprar una H100, pero sí una RTX 3060 para,
bueno, jugar a videojuegos o hacer trabajo gráfico intensivo. Aquí la pregunta que me hago es, bueno,
si estamos entrando en la nueva era de la inteligencia artificial, ¿cómo va a evolucionar? ¿Cómo se va a
adaptar todo este hardware de consumo a esta nueva ola? Pues realmente esto es algo que ya venimos
viendo desde hace años. La evolución de las tarjetas gráficas de consumo general principalmente
en dos aspectos. El aumento de los Tensor Cores y el aumento de memoria. Sobre los Tensor Cores ya
hablamos en un vídeo bastante antiguo en el canal donde íbamos desde los transistores y circuitería de
un procesador hasta conceptos como estos Tensor Cores. Pero bueno, de forma resumida, estos núcleos
tensoriales, como su nombre indica, son núcleos especializados para el procesamiento de cálculo
tensorial y multiplicación de matrices de forma muy muy rápida. Algo diseñado a nivel de hardware
específicamente para acelerar el entrenamiento e inferencia de los modelos de Deep Learning.
Por así decirlo, estos Tensor Cores serían el músculo que ponen a funcionar a las redes neuronales.
Y luego tenemos la memoria, un aspecto importantísimo que no ha parado de crecer en
los últimos años. La famosa VRAM. Y es que veamos, durante los últimos años la tendencia de muchos
de los modelos de Deep Learning ha sido el ir creciendo más y más en tamaño. Y aquí está la
cosa. Ese tamaño es importante porque si queremos ejecutarlos en nuestras potentes GPUs usando nuestros
potentes Tensor Cores, lo que necesitamos es que estos modelos quepan en ellos. Que quepan los parámetros y
los datos que queramos procesar. Y ahí la cantidad de VRAM es el factor determinante.
Y realmente a día de hoy muchos de los modelos open source que vosotros podéis descargar y empezar
a utilizar en vuestros equipos requieren de cada vez más y más memoria. ¿Cuántos de vosotros os
habréis descargado un modelo en vuestro ordenador y al ejecutarlo ha salido esto de CUDA out of memory
error? Y al final si lo pensamos este es el futuro al que nos movemos. Un futuro donde cada vez contaremos
con más modelos open source, modelos más capaces y donde vosotros querréis poder ejecutarlos en
vuestros equipos. Y donde contar con una tarjeta gráfica que sea lo suficientemente potente pues
va a ser necesario. Y esta brecha de poder ejecutar los modelos de inteligencia en local pues ya empieza
a estar patente. Un ejemplo que os sonará. La tecnología DLSS Deep Learning Super Sampling.
La vuelta a los orígenes de NVIDIA. Una tecnología que aprovecha las técnicas de super resolución con
Deep Learning pero en este caso aplicado a los fotogramas de un videojuego. El objetivo es quitarle
carga de trabajo a los procesos gráficos de la GPU, creando inicialmente un renderizado a menor
resolución que luego aplicando inteligencia artificial podemos rescalar tanto espacialmente
como temporal para así darle al usuario una experiencia en alta calidad con más FPS. Y donde
actualmente las versiones más modernas incluso incluyen tecnología para la reconstrucción fiel
de rayos de raytracing. Una tecnología que quita carga de trabajo a los procesos gráficos de la GPU
para dárselo a los Tensor Core. Y una experiencia de usuario diferente dependiendo de si usa CIA o no.
Y claro, esto lo podemos extrapolar y llevárnoslo al extremo a futuro. Donde el concepto de tarjeta de
vídeo se convierta en tarjeta de vídeo generativa. Y donde sea legítimo preguntarnos cuántos píxeles de los
que aparecen en mi pantalla pues son reales. Porque ya hemos visto casos de retoque en tiempo real que
van desde, bueno, lo que nos permiten hacer herramientas como Nvidia Broadcast, que nos
permite redirigir la dirección de las pupilas para a lo mejor leer un teleprompter y al mismo tiempo
parecer que miras a cámara. Hasta luego versiones más extremas de esto donde los retoques en tiempo real
son mucho más agresivos. O situaciones donde directamente la renderización de gráficos en tiempo real por ordenador
puede estar completamente basada en IA generativa. Ya en el canal hemos hablado en el pasado de
investigaciones por parte de Nvidia como InstaNerf o Neural Angelo, que no paran de dar pasos en el
campo de la renderización neural. Y que tiene como objetivo el sustituir los pipelines de procesamiento
de gráficos tradicionales por el uso de IA generativa. Algo que todavía está lejos de ser mainstream,
pero no tan lejos. Porque la IA generativa para la creación de imágenes, vídeos, 3D o música ya es
una realidad. Una realidad que desde hace un año podemos ejecutar en nuestros ordenadores y donde
la tendencia claramente seguirá siendo al alza. En los próximos años muchos de los trabajos
creativos requerirán del uso de estas herramientas en local. Y de nuevo esto es algo que Nvidia sabe que
va a pasar y que ya está empezando a potenciar. Hace unas semanas presentaron a través de su librería
TensorRT la aceleración de herramientas como Stable Diffusion XL, LCM Lora o Stable Video Diffusion,
que ahora pasarían a ser ejecutadas sobre las GPUs de Nvidia 7 veces más rápidos que en un
procesador M2 de Apple. Y de nuevo, contar aquí con una GPU compatible, es decir, de Nvidia, es
indispensable. Y lo mismo pasa cuando hablamos de enormes modelos del lenguaje. Cada vez más el
panorama open source nos va regalando modelos que se van acercando en rendimiento a lo que modelos
privados como GPT-4 nos puede ofrecer. Y eso significa, imagínate, que en un futuro cercano tú no vas a
tener que pagar a OpenAI si quieres programar con una de estas ideas en tu trabajo para generar código.
No, directamente tú lo ejecutarás en local gratis, sin ningún límite ni compromiso. Y esto es lo que hace
para mí entender pues cómo va a evolucionar las necesidades de vosotros, de los consumidores y por
tanto las necesidades del mercado. Cada vez más profesionales demandarán estas características,
estas funcionalidades basadas en inteligencia artificial y ahí Nvidia está muy bien posicionada
para poder ofrecer el hardware necesario para poder ejecutarlas. Yo esto me lo imagino un poco
como lo de RTX on, RTX off, pero en este caso AI on, AI off, donde tu ordenador te dará una mejor
experiencia o peor experiencia en función de si puede ejecutar todos estos modelos en local.
Y Nvidia esto lo sabe muy pero que muy bien, que va a generar esta necesidad por parte de los
consumidores. No por nada se llaman Nvidia. Y por eso trabajan tanto investigando y desarrollando en el
campo del Deep Learning para atraer más y mejores experiencias nuevas. Por ejemplo, justamente ayer
sacaron una herramienta gratuita llamada Chat with RTX. Una herramienta que te va a permitir utilizar
cualquier modelo de lenguaje open source en tu ordenador y con capacidad de conectarlo a tus datos,
a tus documentos, a un vídeo de YouTube para poder interactuar con esta fuente de información.
Suena muy interesante. ¿Quieres probarlo? Pues solo te hace falta una cosa, pasar por caja.
Y podemos seguir encontrando ejemplos. Ejemplos donde Nvidia ilustra cómo podría ser el futuro de la
industria de los videojuegos cuando empieza a introducir conceptos como los NNPCs, Neural
Non-Playable Characters. Nombre que me acabo de inventar pero que está muy bien para este concepto
que sabemos todos que va a acabar llegando. El momento en el que en un videojuego te encuentres
a un personaje cuyo diálogo, cuya voz, movimientos se vayan generando en tiempo real, a través de lo que
el avatar percibe con sus modelos de IA, permitiéndole interactuar de forma natural contigo.
Esto es un concepto que Nvidia presenta para marcarle el camino a la industria de los videojuegos,
para decirle, hey mira, esto se puede hacer, podría ser interesante. Pero lo interesante realmente aquí
es ver cuáles son las dos opciones que tenemos para implementar algo así. Una opción, como hemos visto,
sería que cuando tú te instales el videojuego, este descargue en tu ordenador, pues todos los
modelos de visión, de voz, de lenguaje necesarios para poder hacer todo este proceso. Y que tú cuentes
con una tarjeta gráfica que los pueda ejecutar. Si cuentas con el hardware, vivirás esta experiencia
cognitiva aumentada. O a lo mejor no. A lo mejor la empresa de videojuegos quiere ofrecerle este servicio
a todos sus jugadores y en ese caso se ejecutarían todos estos modelos en la nube. Una nube que
requerirá de una computación que Nvidia puede ofrecer a través de sus chips. Y es que la revolución
del deep learning, como hemos visto en este video, no se puede entender sin el mercado de
semiconductores. Un mercado que a falta de competidores que puedan ganar esta ventaja competitiva
que sabemos que Nvidia tiene, pues hace que como he comentado al principio, en esta batalla de ajedrez,
por ahora, Nvidia gane.
¿Y qué podemos esperar a futuro de Nvidia? Pues no lo sé, no lo sabemos, pero no vamos a tardar
mucho en saberlo. Y es que el mes de marzo se va a volver a celebrar el GTC. El gran evento que
celebra Nvidia para presentar todas las novedades y en esta ocasión, y este video me viene perfecto
para anunciarlo, me hacía mucha ilusión decirlo, voy a asistir físicamente a San Francisco, a San José,
para poder estar allí, vivirlo y traeros todas las novedades. Con suerte incluso hasta me saca un selfie
con Jensen Juan. Sobre todo esto ya os contaré más información a futuro, pero si os digo que estéis
atentos a mis redes sociales, donde en estos días publicaré más información sobre el GTC y pondremos el
sorteo habitual de tarjetas gráficas que hacemos para celebrar esta fecha tan importante. Quería aprovechar
la temática de este video para contar todo esto porque creo que está muy bien relacionado. Me hace
mucha ilusión poder asistir al GTC y poder traeros todo el avance que se produzca por parte de Nvidia,
por parte del mercado de los semiconductores y todas las novedades de Deep Learning, como siempre
hacemos aquí. Chicos, chicas, nos vemos con más inteligencia artificial en el próximo video.
¡Chau!