Navegando el alto costo de la computación de IA

Navegando el alto costo de la computación de IA

Navegando por el alto costo de la computación con IA PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.
Fuente: Medio viaje

El auge de la IA generativa está ligado a la computación. Tiene la propiedad única de que agregar más cómputo directamente da como resultado un mejor producto. Por lo general, la inversión en I+D está más directamente relacionada con el valor de un producto, y esa relación es marcadamente sublineal. Pero esto no es así actualmente con la inteligencia artificial y, como resultado, un factor predominante que impulsa a la industria hoy en día es simplemente el costo de la capacitación y la inferencia. 

Si bien no conocemos los números reales, hemos escuchado de fuentes confiables que la oferta de cómputo es tan limitada que la demanda la supera por un factor de 10 (!) Así que creemos que es justo decir que, en este momento, el acceso a los recursos informáticos, al menor costo total, se ha convertido en un factor determinante para el éxito de las empresas de IA.

De hecho, hemos visto que muchas empresas gastan más del 80 % de su capital total recaudado en recursos informáticos.

En esta publicación, tratamos de desglosar los factores de costo para una empresa de IA. Los números absolutos, por supuesto, cambiarán con el tiempo, pero no vemos un alivio inmediato de que las empresas de IA estén obligadas por su acceso a los recursos informáticos. Entonces, con suerte, este es un marco útil para pensar a través del paisaje. 

¿Por qué los modelos de IA son tan costosos computacionalmente?

Existe una amplia variedad de modelos generativos de IA, y los costos de inferencia y entrenamiento dependen del tamaño y tipo del modelo. Afortunadamente, los modelos más populares hoy en día son en su mayoría arquitecturas basadas en transformadores, que incluyen modelos de lenguaje grande (LLM) populares como GPT-3, GPT-J o BERT. Si bien el número exacto de operaciones para la inferencia y el aprendizaje de transformadores es específico del modelo (ver este documento), existe una regla general bastante precisa que depende solo de la cantidad de parámetros (es decir, los pesos de las redes neuronales) del modelo y la cantidad de tokens de entrada y salida. 

Los tokens son esencialmente secuencias cortas de unos pocos caracteres. Corresponden a palabras o partes de palabras. La mejor manera de obtener una intuición para los tokens es probar la tokenización con tokenizadores en línea disponibles públicamente (por ejemplo, OpenAI). Para GPT-3, la longitud promedio de un token tiene 4 caracteres

La regla general para los transformadores es que un pase hacia adelante (es decir, inferencia) para un modelo con p parámetros para una entrada y una secuencia de salida de longitud n fichas cada una, toma aproximadamente 2*n*p operaciones de punto flotante (FRACASOS)¹. El entrenamiento para el mismo modelo toma aproximadamente 6*p FLOPS por token (es decir, el pase hacia atrás adicional requiere cuatro operaciones más²). Puede aproximar el costo total de capacitación al multiplicar esto por la cantidad de tokens en los datos de capacitación.

Los requisitos de memoria para transformadores también dependen del tamaño del modelo. Para la inferencia, necesitamos el p parámetros del modelo para que quepan en la memoria. Para el aprendizaje (es decir, la propagación hacia atrás), necesitamos almacenar valores intermedios adicionales por parámetro entre el pase hacia adelante y hacia atrás. Asumiendo que usamos números de punto flotante de 32 bits, esto son 8 bytes adicionales por parámetro. Para entrenar un modelo de 175 16 millones de parámetros, necesitaríamos mantener más de un terabyte de datos en la memoria; esto supera a cualquier GPU existente en la actualidad y requiere que dividamos el modelo en tarjetas. Los requisitos de memoria para la inferencia y el entrenamiento se pueden optimizar mediante el uso de valores de punto flotante de longitudes más cortas, con 8 bits convirtiéndose en comunes y XNUMX bits anticipados en un futuro próximo.

Navegando por el alto costo de la computación con IA PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

La tabla anterior tiene tamaños y costos de cómputo para varios modelos populares. GPT-3 tiene aproximadamente 175 1,024 millones de parámetros, lo que para una entrada y salida de 350 tokens da como resultado un costo computacional de aproximadamente 3 billones de operaciones de punto flotante (es decir, Teraflops o TFLOPS). Entrenar un modelo como GPT-3.14 requiere alrededor de 10*23^XNUMX operaciones de coma flotante. Otros modelos como el LLaMA de Meta tienen más alto aún requisitos de cómputo. Entrenar un modelo de este tipo es una de las tareas más intensivas desde el punto de vista computacional que la humanidad ha emprendido hasta ahora. 

Para resumir: la infraestructura de IA es costosa porque los problemas algorítmicos subyacentes son extremadamente difíciles desde el punto de vista computacional. La complejidad algorítmica de clasificar una tabla de base de datos con un millón de entradas es insignificante en comparación con la complejidad de generar una sola palabra con GPT-3. Esto significa que desea elegir el modelo más pequeño que resuelva su caso de uso. 

La buena noticia es que, para los transformadores, podemos estimar fácilmente la cantidad de cómputo y memoria que consumirá un modelo de cierto tamaño. Y, por lo tanto, elegir el hardware adecuado se convierte en la siguiente consideración. 

El argumento de tiempo y costo para las GPU

¿Cómo se traduce la complejidad computacional en tiempo? Un núcleo de procesador normalmente puede ejecutar 1-2 instrucciones por ciclo, y las velocidades de reloj del procesador se han mantenido estables alrededor de 3 GHz durante los últimos 15 años debido al final de Escala de Dennard. Ejecutar una sola operación de inferencia GPT-3 sin explotar ninguna arquitectura paralela tomaría del orden de 350 TFLOPS/(3 GHz*1 FLOP) o 116,000 32 segundos, o XNUMX horas. Esto es tremendamente poco práctico; en cambio, necesitamos chips especializados que aceleren esta tarea.

En la práctica, todos los modelos de IA actuales se ejecutan en tarjetas que utilizan una gran cantidad de núcleos especializados. Por ejemplo, una GPU NVIDIA A100 tiene 512 “núcleos tensoriales” que pueden realizar una multiplicación de matriz de 4×4 (lo que equivale a 64 multiplicaciones y sumas, o 128 FLOPS) en un solo ciclo. Las tarjetas aceleradoras de IA a menudo se denominan GPU (unidades de procesamiento de gráficos), ya que la arquitectura se desarrolló originalmente para juegos de escritorio. En el futuro, esperamos que la IA se convierta cada vez más en una familia de productos distinta. 

El A100 tiene un rendimiento nominal de 312 TFLOPS lo que en teoría reduciría la inferencia de GPT-3 a aproximadamente 1 segundo. Sin embargo, este es un cálculo demasiado simplificado por varias razones. En primer lugar, para la mayoría de los casos de uso, el cuello de botella no es la potencia de cómputo de la GPU sino la capacidad de obtener datos de la memoria gráfica especializada en los núcleos tensoriales. En segundo lugar, los 175 mil millones de pesos ocuparían 700 GB y no cabrían en la memoria gráfica de ninguna GPU. Es necesario utilizar técnicas como la partición y el flujo de peso. Y, en tercer lugar, hay una serie de optimizaciones (p. ej., el uso de representaciones de coma flotante más cortas, como FP16, FP8 o matrices dispersas) que se utilizan para acelerar el cálculo. Pero, en general, las matemáticas anteriores nos dan una idea del costo total de cómputo de los LLM de hoy.

Entrenar un modelo de transformador toma alrededor de tres veces más por token que hacer una inferencia. Sin embargo, dado que el conjunto de datos de entrenamiento es aproximadamente 300 millones de veces más grande que un indicador de inferencia, el entrenamiento lleva más tiempo por un factor de mil millones. En una sola GPU, el entrenamiento llevaría décadas; en la práctica, esto se hace en grandes clústeres de cómputo en centros de datos dedicados o, más probablemente, en la nube. El entrenamiento también es más difícil de paralelizar que la inferencia, ya que los pesos actualizados deben intercambiarse entre los nodos. La memoria y el ancho de banda entre las GPU a menudo se convierten en un factor mucho más importante, siendo comunes las interconexiones de alta velocidad y las estructuras dedicadas. Para entrenar modelos muy grandes, crear una configuración de red adecuada puede ser el principal desafío. Mirando hacia el futuro, los aceleradores de IA tendrán capacidades de red en la tarjeta o incluso en el chip. 

¿Cómo se traduce esta complejidad computacional en costo? Una inferencia de GPT-3, que, como vimos anteriormente, toma aproximadamente 1 segundo en un A100, tendría un costo de cómputo sin procesar entre $0.0002 y $0.0014 para 1,000 tokens (esto se compara con el precio de OpenAI de $0.002/1000 tokens). Un usuario que genere 100 solicitudes de inferencia al día costaría del orden de dólares al año. Este es un punto de precio muy bajo y hace que la mayoría de los casos de uso de IA basada en texto por humanos sean financieramente viables.

Formación GPT-3, por otro lado, es mucho más caro. Nuevamente, al calcular solo el costo de cómputo para 3.14 * 10 ^ 23 FLOPS a las tasas anteriores, nos da una estimación de $ 560,000 en tarjetas A100 para un carrera de entrenamiento individual. En la práctica, para entrenamientos no obtendremos ni cerca del 100% de eficiencia en la GPU; sin embargo, también podemos usar optimizaciones para reducir el tiempo de entrenamiento. Otras estimaciones del costo de capacitación de GPT-3 van desde $500,000 a $ 4.6 millones, dependiendo de las suposiciones de hardware. Tenga en cuenta que este es el costo de una sola ejecución y no el costo total. Es probable que se requieran múltiples ejecuciones y los proveedores de la nube querrán compromisos a largo plazo (más sobre esto a continuación). La capacitación de modelos de primera línea sigue siendo costosa, pero está al alcance de una empresa emergente bien financiada.

En resumen, la IA generativa requiere inversiones masivas en infraestructura de IA en la actualidad. No hay razón para creer que esto cambiará en un futuro cercano. Entrenar un modelo como GPT-3 es una de las tareas más intensivas desde el punto de vista computacional que la humanidad haya emprendido jamás. Y aunque las GPU se están volviendo más rápidas y encontramos formas de optimizar el entrenamiento, la rápida expansión de la IA anula ambos efectos.

Consideraciones para la infraestructura de IA

Hasta este punto, hemos tratado de brindarle cierta intuición sobre la escala requerida para realizar el entrenamiento y la inferencia de modelos de IA, y qué parámetros subyacentes los impulsan. Con ese contexto, ahora queremos brindar una guía práctica sobre cómo decidir qué infraestructura de IA usar.

Infraestructura externa vs. interna

Seamos realistas: las GPU son geniales. Muchos ingenieros y fundadores con mentalidad de ingeniería tienen una tendencia a aprovisionar su propio hardware de IA, no solo porque brinda un control detallado sobre el entrenamiento del modelo, sino porque hay algo divertido en aprovechar grandes cantidades de poder de cómputo (exhibición A).

La realidad, sin embargo, es que muchas nuevas empresas, especialmente las empresas de aplicaciones, no necesitan construir su propia infraestructura de IA en el día 1. En cambio, los servicios de modelos alojados como OpenAI o Hugging Face (para lenguaje) y Replicate (para generación de imágenes) permiten a los fundadores buscar rápidamente el producto adecuado para el mercado sin la necesidad de administrar la infraestructura o los modelos subyacentes.

Estos servicios se han vuelto tan buenos que muchas empresas nunca se gradúan de ellos. Los desarrolladores pueden lograr un control significativo sobre el rendimiento del modelo a través de ingeniería rápida y abstracciones de ajuste fino de orden superior (es decir, ajuste fino a través de llamadas API). El precio de estos servicios se basa en el consumo, por lo que a menudo también es más barato que ejecutar una infraestructura separada. Hemos visto empresas de aplicaciones que generan más de $ 50 millones de ARR, y valoradas en más de $ 1 mil millones, que ejecutan servicios de modelos alojados bajo el capó.

Por otro lado, algunas nuevas empresas, especialmente aquellos que entrenan nuevos modelos básicos o crean aplicaciones de IA integradas verticalmente, no pueden evitar ejecutar sus propios modelos directamente en GPU. Ya sea porque el modelo es efectivamente el producto y el equipo está buscando un "ajuste modelo-mercado", o porque se requiere un control detallado sobre el entrenamiento y/o la inferencia para lograr ciertas capacidades o reducir el costo marginal a gran escala. De cualquier manera, la gestión de la infraestructura puede convertirse en una fuente de ventaja competitiva.

La construcción de la nube frente al centro de datos

En la mayoría de los casos, la nube es el lugar adecuado para su infraestructura de IA. Menos costo inicial, la capacidad de escalar hacia arriba y hacia abajo, la disponibilidad regional y menos distracción de construir su propio centro de datos son atractivos para la mayoría de las nuevas empresas y las empresas más grandes.

Pero hay algunas excepciones a esta regla:

  • Si está operando a gran escala, puede resultar más rentable administrar su propio centro de datos. El punto de precio exacto varía según la ubicación geográfica y la configuración, pero generalmente requiere un gasto en infraestructura de más de $ 50 millones por año.
  • Necesita hardware muy específico que no puede obtener de un proveedor de nube. Por ejemplo, tipos de GPU que no están ampliamente disponibles, así como requisitos inusuales de memoria, almacenamiento o red.
  • No puede encontrar una nube que sea aceptable por consideraciones geopolíticas.

Si desea construir su propio centro de datos, ha habido un análisis completo de precio/rendimiento de las GPU para su propia configuración (p. ej., Análisis de Tim Dettmer). Además del costo y el rendimiento de la tarjeta en sí, la selección del hardware también depende de la energía, el espacio y la refrigeración. Por ejemplo, dos tarjetas RTX 3080 Ti juntas tienen una capacidad de cómputo sin procesar similar a una A100, pero el consumo de energía respectivo es de 700 W frente a 300 W. La diferencia de potencia de 3,500 kWh a tarifas de mercado de $0.10/kWh durante un ciclo de vida de tres años aumenta el costo de la RTX3080 Ti en casi 2 veces (aproximadamente $1,000).

Dicho todo esto, esperamos que la gran mayoría de las nuevas empresas utilicen la computación en la nube. 

Comparación de los proveedores de servicios en la nube 

Amazon Web Services (AWS), Microsoft Azure y Google Cloud Platform (GCP) ofrecen instancias de GPU, pero también aparecen nuevos proveedores que se centran específicamente en las cargas de trabajo de IA. Aquí hay un marco que hemos visto que usan muchos fundadores para elegir un proveedor de nube:

Precio: La siguiente tabla muestra los precios de varias nubes especializadas principales y más pequeñas al 7 de abril de 2023. Estos datos son solo indicativos, ya que las instancias varían considerablemente en términos de ancho de banda de red, costos de salida de datos, costo adicional de CPU y red, disponible descuentos y otros factores.

Navegando por el alto costo de la computación con IA PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

La capacidad de cómputo en hardware específico es una mercancía. Ingenuamente, esperaríamos precios bastante uniformes, pero no es así. Y si bien existen diferencias sustanciales en las funciones entre las nubes, son insuficientes para explicar que el precio de un NVIDIA A100 bajo demanda varía en un factor de casi 4x entre los proveedores.

En el extremo superior de la escala de precios, las grandes nubes públicas cobran una prima en función de la reputación de la marca, la confiabilidad comprobada y la necesidad de administrar una amplia gama de cargas de trabajo. Los proveedores de IA especializados más pequeños ofrecen precios más bajos, ya sea ejecutando centros de datos especialmente diseñados (p. ej., Coreweave) o arbitrando otras nubes (p. ej., Lambda Labs).

En términos prácticos, la mayoría de los compradores más grandes negocian los precios directamente con los proveedores de la nube, a menudo comprometiéndose con un requisito de gasto mínimo y compromisos de tiempo mínimos (hemos visto de 1 a 3 años). Las diferencias de precio entre las nubes se reducen un poco después de la negociación, pero hemos visto que la clasificación en la tabla anterior se mantiene relativamente estable. También es importante tener en cuenta que las empresas más pequeñas pueden obtener precios competitivos de las nubes especializadas sin grandes compromisos de gasto.

Disponibilidad: Las GPU más potentes (p. ej., Nvidia A100) han sido constantemente escasas durante los últimos 12 meses o más. 

Sería lógico pensar que los tres principales proveedores de la nube tienen la mejor disponibilidad, dado su gran poder adquisitivo y su conjunto de recursos. Pero, sorprendentemente, muchas nuevas empresas no han descubierto que eso sea cierto. Las grandes nubes tienen una gran cantidad de hardware, pero también tienen grandes necesidades de los clientes que satisfacer (p. ej., Azure es el host principal de ChatGPT) y constantemente agregan o alquilan capacidad para satisfacer la demanda. Mientras tanto, Nvidia se ha comprometido a hacer que el hardware esté disponible ampliamente en toda la industria, incluidas las asignaciones para nuevos proveedores especializados. (Hacen esto tanto para ser justos como para reducir su dependencia de unos pocos clientes importantes que también compiten con ellos).

Como resultado, muchas nuevas empresas encuentran más chips disponibles, incluidos los Nvidia H100 de última generación, en proveedores de nube más pequeños. Si está dispuesto a trabajar con una empresa de infraestructura más nueva, es posible que pueda reducir los tiempos de espera para el hardware y posiblemente ahorrar dinero en el proceso.

Calcular el modelo de entrega: Las grandes nubes de hoy solo ofrecen instancias con GPU dedicadas, ya que la virtualización de GPU sigue siendo un problema sin resolver. Las nubes de IA especializadas ofrecen otros modelos, como contenedores o trabajos por lotes, que pueden manejar tareas individuales sin incurrir en el costo de puesta en marcha y desmontaje de una instancia. Si se siente cómodo con este modelo, puede reducir sustancialmente el costo.

Interconexiones de red: Para la capacitación, específicamente, el ancho de banda de la red es un factor importante en la selección del proveedor. Se necesitan clústeres con estructuras dedicadas entre nodos, como NVLink, para entrenar ciertos modelos grandes. Para la generación de imágenes, las tarifas de tráfico de salida también pueden ser un importante factor de costo.

Atención al cliente: Los grandes proveedores de la nube atienden a un gran grupo de clientes en miles de SKU de productos. Puede ser difícil llamar la atención del servicio de atención al cliente o solucionar un problema, a menos que sea un gran cliente. Muchas nubes de IA especializadas, por otro lado, ofrecen soporte rápido y receptivo incluso para clientes pequeños. Esto se debe en parte a que están operando a menor escala, pero también a que sus cargas de trabajo son más homogéneas, por lo que están más incentivados para centrarse en las características y los errores específicos de la IA.

Comparando GPU 

En igualdad de condiciones, las GPU de gama alta funcionarán mejor en casi todas las cargas de trabajo. Sin embargo, como puede ver en la siguiente tabla, el mejor hardware también es sustancialmente más caro. Elegir el tipo correcto de GPU para su aplicación específica puede reducir sustancialmente los costos y puede marcar la diferencia entre un modelo comercial viable y no viable.

Navegando por el alto costo de la computación con IA PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Decidir qué tan abajo en la lista ir, es decir, determinar las opciones de GPU más rentables para su aplicación, es en gran medida una decisión técnica que está más allá del alcance de este artículo. Pero compartiremos a continuación algunos de los criterios de selección que hemos visto que son los más importantes:

Entrenamiento vs inferencia: Como vimos en la primera sección anterior, entrenar un modelo de Transformer requiere que almacenemos 8 bytes de datos para el entrenamiento además de los pesos del modelo. Esto significa que una GPU típica de consumo de gama alta con 12 GB de memoria apenas podría usarse para entrenar un modelo de 4 mil millones de parámetros. En la práctica, el entrenamiento de modelos grandes se realiza en clústeres de máquinas con, preferiblemente, muchas GPU por servidor, mucha VRAM y conexiones de alto ancho de banda entre los servidores (es decir, clústeres creados con GPU de centros de datos de gama alta).

Específicamente, muchos modelos serán más rentables con NVIDIA H100, pero a día de hoy es difícil de encontrar y, por lo general, requiere un compromiso a largo plazo de más de un año. NVIDIA A100 ejecuta la mayor parte del entrenamiento de modelos en la actualidad; es más fácil de encontrar pero, para grupos grandes, también puede requerir un compromiso a largo plazo.

Requisitos de memoria: Los LLM grandes tienen recuentos de parámetros que son demasiado altos para caber en cualquier tarjeta. Deben dividirse en varias tarjetas y requieren una configuración similar al entrenamiento. En otras palabras, probablemente necesite H100 o A100 incluso para la inferencia LLM. Pero los modelos más pequeños (por ejemplo, Stable Diffusion) requieren mucho menos VRAM. Si bien el A100 sigue siendo popular, hemos visto que las nuevas empresas utilizan las tarjetas A10, A40, A4000, A5000 y A6000, o incluso RTX. 

Soporte de hardware: Si bien la gran mayoría de las cargas de trabajo en las empresas con las que hemos hablado se ejecutan en NVIDIA, algunas han comenzado a experimentar con otros proveedores. El más común es el TPU de Google, pero el Gaudi 2 de Intel también parece estar ganando algo de tracción. El desafío con estos proveedores es que el rendimiento de su modelo a menudo depende en gran medida de la disponibilidad de optimizaciones de software para estos chips. Probablemente tendrá que hacer una prueba de concepto para comprender el rendimiento.

Requisitos de latencia: En general, las cargas de trabajo menos sensibles a la latencia (por ejemplo, procesamiento de datos por lotes o aplicaciones que no requieren respuestas de IU interactivas) pueden usar GPU menos potentes. Esto puede reducir el costo de cómputo hasta 3 o 4 veces (por ejemplo, comparar A100 con A10 en AWS). Las aplicaciones orientadas al usuario, por otro lado, a menudo necesitan tarjetas de primer nivel para brindar una experiencia de usuario atractiva y en tiempo real. A menudo es necesario optimizar los modelos para llevar los costos a un rango manejable.

puntiagudos: Las empresas de IA generativa a menudo ven picos dramáticos en la demanda debido a que la tecnología es muy nueva y emocionante. No es raro ver que los volúmenes de solicitudes aumenten 10 veces en un día, según el lanzamiento de un nuevo producto, o que crezcan un 50 % por semana de manera constante. El manejo de estos picos suele ser más fácil en las GPU de gama baja, ya que es probable que haya más nodos de cómputo disponibles bajo demanda. A menudo, también tiene sentido atender este tipo de tráfico con recursos de menor costo, a expensas del rendimiento, si proviene de usuarios menos comprometidos o menos retentivos.

Optimización y programación de modelos.

Las optimizaciones de software pueden afectar enormemente el tiempo de ejecución de los modelos, y las ganancias de 10 veces no son infrecuentes. Sin embargo, deberá determinar qué métodos serán más efectivos con su modelo y sistema en particular.

Algunas técnicas funcionan con una gama bastante amplia de modelos. El uso de representaciones de coma flotante más cortas (es decir, FP16 o FP8 frente al FP32 original) o cuantificación (INT8, INT4, INT2) logra una aceleración que suele ser lineal con la reducción de bits. Esto a veces requiere modificar el modelo, pero cada vez hay más tecnologías disponibles que automatizan el trabajo con precisión mixta o menor. La poda de redes neuronales reduce la cantidad de pesos al ignorar los pesos con valores bajos. Junto con la eficiente multiplicación de matrices dispersas, esto puede lograr una aceleración sustancial en las GPU modernas. Otro conjunto de técnicas de optimización aborda el cuello de botella del ancho de banda de la memoria (p. ej., mediante ponderaciones de modelos de transmisión).

Otras optimizaciones son altamente específicas del modelo. Por ejemplo, Stable Diffusion ha hecho grandes avances en la cantidad de VRAM necesaria para la inferencia. Otra clase más de optimizaciones es específica del hardware. TensorML de NVIDIA incluye varias optimizaciones, pero solo funcionará en el hardware de NVIDIA. Por último, pero no menos importante, la programación de tareas de IA puede crear enormes cuellos de botella o mejoras en el rendimiento. La asignación de modelos a las GPU de manera que se minimice el intercambio de pesos, la elección de la mejor GPU para una tarea si hay varias disponibles y la minimización del tiempo de inactividad al agrupar las cargas de trabajo por adelantado son técnicas comunes.

Al final, la optimización del modelo sigue siendo un arte negro, y la mayoría de las nuevas empresas con las que hablamos trabajan con terceros para ayudar con algunos de estos aspectos del software. A menudo, estos no son proveedores tradicionales de MLops, sino empresas que se especializan en optimizaciones para modelos generativos específicos (p. ej., OctoML o SegMind).

¿Cómo evolucionará el costo de la infraestructura de IA?

En los últimos años, hemos visto un crecimiento exponencial tanto de parámetros del modelo y Potencia de cómputo de la GPU. No está claro si esta tendencia continuará.

Hoy en día, se acepta ampliamente que existe una relación entre el número óptimo de parámetros y el tamaño del conjunto de datos de entrenamiento (ver Deepmind's Chinchilla trabajar para más sobre esto). Los mejores LLM hoy en día están capacitados en el Rastreo común (una colección de 4.5 millones de páginas web, o alrededor del 10% de todas las páginas web existentes). El corpus de formación también incluye Wikipedia y una colección de libros, aunque ambos son mucho más pequeños (se estima que el número total de libros existentes es solo alrededor de 100 millones). Se han sugerido otras ideas, como transcribir contenido de video o audio, pero ninguna de ellas se acerca en tamaño. No está claro si podríamos obtener un conjunto de datos de entrenamiento no sintético que sea 10 veces más grande que el que ya se ha utilizado.

El rendimiento de la GPU seguirá aumentando, pero también a un ritmo más lento. La Ley de Moore todavía está intacta, lo que permite más transistores y más núcleos, pero la alimentación y las E/S se están convirtiendo en factores limitantes. Además, se han recogido muchas de las frutas maduras para las optimizaciones. 

Sin embargo, nada de esto significa que no esperamos un aumento en la demanda de capacidad informática. Incluso si el crecimiento del modelo y el conjunto de entrenamiento se ralentiza, el crecimiento de la industria de la IA y el aumento en la cantidad de desarrolladores de IA impulsarán la demanda de más GPU y más rápidas. Los desarrolladores utilizan una gran fracción de la capacidad de la GPU para realizar pruebas durante la fase de desarrollo de un modelo, y esta demanda aumenta linealmente con el número de empleados. No hay señales de que la escasez de GPU que tenemos hoy vaya a disminuir en el futuro cercano.

¿Este alto costo continuo de la infraestructura de IA creará un foso que imposibilite que los nuevos participantes alcancen a los titulares bien financiados? Todavía no sabemos la respuesta a esta pregunta. El costo de capacitación de un LLM puede parecer un foso hoy, pero los modelos de código abierto como Alpaca o Stable Diffusion han demostrado que estos mercados aún son tempranos y pueden cambiar rápidamente. Con el tiempo, la estructura de costos de la pila de software de IA emergente (ver nuestra publicación anterior) puede comenzar a parecerse más a la industria del software tradicional. 

En última instancia, esto sería algo bueno: la historia ha demostrado que esto conduce a ecosistemas vibrantes con una innovación rápida y muchas oportunidades para los fundadores emprendedores.

Gracias a Moin Nadeem y Shangda Xu por sus aportes y orientación durante el proceso de escritura.


¹ La intuición aquí es que para cualquier parámetro (es decir, peso) en una red neuronal, una operación de inferencia (es decir, avance) necesita realizar dos operaciones de punto flotante por parámetro. Primero, multiplica el valor del nodo de entrada de la red neuronal con el parámetro. En segundo lugar, agrega el resultado de la suma al nodo de salida de la red neuronal. Los parámetros en el codificador se usan una vez por token de entrada y los parámetros en el decodificador se usan una vez por token de salida. Si suponemos que un modelo tiene p los parámetros y la entrada y la salida tienen una longitud n fichas, las operaciones de punto flotante total son n*p. Hay muchas otras operaciones (p. ej., normalización, codificación/descodificación, incrustación) que ocurren en un modelo, pero el tiempo que lleva realizarlas es pequeño en comparación. 

² El aprendizaje primero requiere un paso hacia adelante a través del transformador como se describe arriba, seguido de un paso hacia atrás que incurre en cuatro operaciones adicionales por parámetro para calcular el gradiente y ajustar el peso. Tenga en cuenta que calcular el gradiente requiere preservar los valores de nodo calculados del pase hacia adelante. Para GPT-3, Los modelos de lenguaje son aprendices con pocas posibilidades analiza el costo de la capacitación.

* * *

Las opiniones expresadas aquí son las del personal individual de AH Capital Management, LLC ("a16z") citado y no son las opiniones de a16z o sus afiliados. Cierta información contenida aquí se ha obtenido de fuentes de terceros, incluso de compañías de cartera de fondos administrados por a16z. Si bien se tomó de fuentes que se consideran confiables, a16z no ha verificado de forma independiente dicha información y no hace declaraciones sobre la precisión duradera de la información o su idoneidad para una situación determinada. Además, este contenido puede incluir anuncios de terceros; a16z no ha revisado dichos anuncios y no respalda ningún contenido publicitario incluido en ellos.

Este contenido se proporciona solo con fines informativos y no debe considerarse como asesoramiento legal, comercial, de inversión o fiscal. Debe consultar a sus propios asesores sobre estos asuntos. Las referencias a cualquier valor o activo digital son solo para fines ilustrativos y no constituyen una recomendación de inversión ni una oferta para proporcionar servicios de asesoramiento de inversión. Además, este contenido no está dirigido ni destinado a ser utilizado por ningún inversionista o posible inversionista, y bajo ninguna circunstancia se puede confiar en él al tomar una decisión de invertir en cualquier fondo administrado por a16z. (Una oferta para invertir en un fondo a16z se realizará solo mediante el memorando de colocación privada, el acuerdo de suscripción y otra documentación relevante de dicho fondo y debe leerse en su totalidad). Cualquier inversión o compañía de cartera mencionada, referida o descritos no son representativos de todas las inversiones en vehículos administrados por a16z, y no puede garantizarse que las inversiones serán rentables o que otras inversiones realizadas en el futuro tendrán características o resultados similares. Una lista de inversiones realizadas por fondos administrados por Andreessen Horowitz (excluyendo inversiones para las cuales el emisor no ha otorgado permiso para que a16z divulgue públicamente, así como inversiones no anunciadas en activos digitales que cotizan en bolsa) está disponible en https://a16z.com/investments /.

Los cuadros y gráficos proporcionados en el interior tienen únicamente fines informativos y no se debe confiar en ellos al tomar cualquier decisión de inversión. El rendimiento pasado no es indicativo de resultados futuros. El contenido habla sólo a partir de la fecha indicada. Todas las proyecciones, estimaciones, pronósticos, objetivos, perspectivas y/u opiniones expresadas en estos materiales están sujetas a cambios sin previo aviso y pueden diferir o ser contrarias a las opiniones expresadas por otros. Consulte https://a16z.com/disclosures para obtener información adicional importante.

Sello de tiempo:

Mas de Andreessen Horowitz