Mezcla de expertos

Técnica de aprendizaje automático

La mezcla de expertos ( MoE ) es una técnica de aprendizaje automático en la que se utilizan múltiples redes de expertos (aprendices) para dividir un espacio de problemas en regiones homogéneas. [1] Se diferencia de las técnicas de conjunto en que para MoE, normalmente solo se ejecutan uno o unos pocos modelos expertos para cada entrada, mientras que en las técnicas de conjunto, todos los modelos se ejecutan en cada entrada.

Teoría básica

MoE siempre tiene los siguientes componentes, pero se implementan y combinan de forma diferente según el problema a resolver:

  • Expertos , cada uno tomando la misma información y produciendo resultados . f 1 , . . . , f n {\displaystyle f_{1},...,f_{n}} x {\displaystyle x} f 1 ( x ) , . . . , f n ( x ) {\displaystyle f_{1}(x),...,f_{n}(x)}
  • Una función de ponderación (también conocida como función de compuerta) , que toma una entrada y produce un vector de salidas . w {\displaystyle w} x {\displaystyle x} ( w ( x ) 1 , . . . , w ( x ) n ) {\displaystyle (w(x)_{1},...,w(x)_{n})}
  • θ = ( θ 0 , θ 1 , . . . , θ n ) {\displaystyle \theta =(\theta _{0},\theta _{1},...,\theta _{n})} es el conjunto de parámetros. El parámetro es para la función de ponderación. θ 0 {\displaystyle \theta _{0}}
  • Dada una entrada , la mezcla de expertos produce una única salida al combinarse de acuerdo con los pesos de alguna manera. x {\displaystyle x} f 1 ( x ) , . . . , f n ( x ) {\displaystyle f_{1}(x),...,f_{n}(x)} w ( x ) 1 , . . . , w ( x ) n {\displaystyle w(x)_{1},...,w(x)_{n}}

Tanto los expertos como la función de ponderación se entrenan minimizando alguna función de pérdida , generalmente mediante un descenso de gradiente . Existe mucha libertad para elegir la forma precisa de los expertos, la función de ponderación y la función de pérdida.

Red meta-pi

La red meta-pi , descrita por Hampshire y Waibel, [2] utiliza como salida . El modelo se entrena realizando un descenso de gradiente sobre la pérdida de error cuadrático medio . Los expertos pueden ser funciones arbitrarias. f ( x ) = i w ( x ) i f i ( x ) {\displaystyle f(x)=\sum _{i}w(x)_{i}f_{i}(x)} L := 1 N k y k f ( x k ) 2 {\displaystyle L:={\frac {1}{N}}\sum _{k}\|y_{k}-f(x_{k})\|^{2}}

En su publicación original, resolvieron el problema de clasificar fonemas en la señal del habla de 6 hablantes japoneses diferentes, 2 mujeres y 4 hombres. Entrenaron a 6 expertos, cada uno de los cuales era una "red neuronal con retardo temporal" [3] (esencialmente una red de convolución multicapa sobre el espectrograma mel ). Descubrieron que la mezcla resultante de expertos dedicaba 5 expertos para 5 de los hablantes, pero el sexto hablante (hombre) no tenía un experto dedicado, sino que su voz se clasificó mediante una combinación lineal de los expertos para los otros 3 hablantes hombres.

Mezclas adaptativas de expertos locales

Las mezclas adaptativas de expertos locales [4] [5] utilizan un modelo de mezcla gaussiana . Cada experto simplemente predice una distribución gaussiana e ignora por completo la entrada. Específicamente, el experto -ésimo predice que la salida es , donde es un parámetro que se puede aprender. La función de ponderación es una función lineal-softmax: La mezcla de expertos predice que la salida se distribuye de acuerdo con la función de densidad de probabilidad: Se entrena mediante estimación de máxima verosimilitud, es decir, ascenso de gradiente en . El gradiente para el experto -ésimo es i {\displaystyle i} y N ( μ i , I ) {\displaystyle y\sim N(\mu _{i},I)} μ i {\displaystyle \mu _{i}} w ( x ) i = e k i T x + b i j e k j T x + b j {\displaystyle w(x)_{i}={\frac {e^{k_{i}^{T}x+b_{i}}}{\sum _{j}e^{k_{j}^{T}x+b_{j}}}}} f θ ( y | x ) = ln [ i e k i T x + b i j e k j T x + b j N ( y | μ i , I ) ] = ln [ ( 2 π ) d / 2 i e k i T x + b i j e k j T x + b j e 1 2 y μ i 2 ] {\displaystyle f_{\theta }(y|x)=\ln \left[\sum _{i}{\frac {e^{k_{i}^{T}x+b_{i}}}{\sum _{j}e^{k_{j}^{T}x+b_{j}}}}N(y|\mu _{i},I)\right]=\ln \left[(2\pi )^{-d/2}\sum _{i}{\frac {e^{k_{i}^{T}x+b_{i}}}{\sum _{j}e^{k_{j}^{T}x+b_{j}}}}e^{-{\frac {1}{2}}\|y-\mu _{i}\|^{2}}\right]} f ( y | x ) {\displaystyle f(y|x)} i {\displaystyle i}

μ i f θ ( y | x ) = w ( x ) i N ( y | μ i , I ) j w ( x ) j N ( y | μ j , I ) ( y μ i ) {\displaystyle \nabla _{\mu _{i}}f_{\theta }(y|x)={\frac {w(x)_{i}N(y|\mu _{i},I)}{\sum _{j}w(x)_{j}N(y|\mu _{j},I)}}\;(y-\mu _{i})}

y el gradiente para la función de ponderación es [ k i , b i ] f θ ( y | x ) = [ x 1 ] w ( x ) i j w ( x ) j N ( y | μ j , I ) ( f i ( x ) f θ ( y | x ) ) {\displaystyle \nabla _{[k_{i},b_{i}]}f_{\theta }(y|x)={\begin{bmatrix}x\\1\end{bmatrix}}{\frac {w(x)_{i}}{\sum _{j}w(x)_{j}N(y|\mu _{j},I)}}(f_{i}(x)-f_{\theta }(y|x))}

Para cada par de entrada-salida , la función de ponderación se modifica para aumentar el peso de todos los expertos que tuvieron un rendimiento superior al promedio y disminuir el peso de todos los expertos que tuvieron un rendimiento inferior al promedio. Esto estimula a la función de ponderación a aprender a seleccionar solo a los expertos que hacen las predicciones correctas para cada entrada. ( x , y ) {\displaystyle (x,y)}

El experto -ésimo se modifica para que su predicción se acerque más a , pero la cantidad de cambio es proporcional a . Esto tiene una interpretación bayesiana. Dado el valor de entrada , la probabilidad previa de que el experto esté en lo cierto es , y es la probabilidad de evidencia . Por lo tanto, es la probabilidad posterior para el experto , y por lo tanto la tasa de cambio para el experto -ésimo es proporcional a su probabilidad posterior. i {\displaystyle i} y {\displaystyle y} w ( x ) i N ( y | μ i , I ) {\displaystyle w(x)_{i}N(y|\mu _{i},I)} x {\displaystyle x} i {\displaystyle i} w ( x ) i {\displaystyle w(x)_{i}} N ( y | μ i , I ) {\displaystyle N(y|\mu _{i},I)} y {\displaystyle y} w ( x ) i N ( y | μ i , I ) j w ( x ) j N ( y | μ j , I ) {\displaystyle {\frac {w(x)_{i}N(y|\mu _{i},I)}{\sum _{j}w(x)_{j}N(y|\mu _{j},I)}}} i {\displaystyle i} i {\displaystyle i}

En otras palabras, se pide a los expertos que, en retrospectiva, parecían los mejores expertos a los que consultar, que aprendan del ejemplo. A los expertos que, en retrospectiva, no lo eran, se los deja tranquilos.

El efecto combinado es que los expertos se especializan: supongamos que dos expertos son buenos en predecir un cierto tipo de entrada, pero uno es ligeramente mejor, entonces la función de ponderación eventualmente aprenderá a favorecer al mejor. Después de que eso sucede, el experto menos experto es incapaz de obtener una señal de gradiente alto y se vuelve aún peor en predecir ese tipo de entrada. Por el contrario, el experto menos experto puede volverse mejor en predecir otros tipos de entrada y cada vez más alejado hacia otra región. Esto tiene un efecto de retroalimentación positivo, haciendo que cada experto se aleje del resto y se ocupe solo de una región local (de ahí el nombre de " expertos locales ").

Ministerio de Educación jerárquico

Las mezclas jerárquicas de expertos [6] [7] utilizan múltiples niveles de selección en un árbol. Cada selección es una distribución de probabilidad sobre el siguiente nivel de selección, y los expertos se encuentran en los nodos de hoja del árbol. Son similares a los árboles de decisión .

Por ejemplo, un MoE jerárquico de dos niveles tendría una función de control de primer orden y funciones de control de segundo orden y expertos . La predicción total es entonces . w i {\displaystyle w_{i}} w j | i {\displaystyle w_{j|i}} f j | i {\displaystyle f_{j|i}} i w i ( x ) j w j | i ( x ) f j | i ( x ) {\displaystyle \sum _{i}w_{i}(x)\sum _{j}w_{j|i}(x)f_{j|i}(x)}

Variantes

La mezcla de expertos, al ser similar al modelo de mezcla gaussiana, también puede ser entrenada por el algoritmo de maximización de expectativas, al igual que los modelos de mezcla gaussiana . Específicamente, durante el paso de expectativa, la "carga" para explicar cada punto de datos se asigna a los expertos, y durante el paso de maximización, los expertos son entrenados para mejorar las explicaciones para las que obtuvieron una carga alta, mientras que la puerta es entrenada para mejorar su asignación de carga. Esto puede converger más rápido que el ascenso del gradiente en el log-verosimilitud. [7] [8]

La elección de la función de compuerta suele ser softmax. Además de eso, la compuerta puede utilizar distribuciones gaussianas [9] y familias exponenciales [8] .

En lugar de realizar una suma ponderada de todos los expertos, en el modelo de MoE duro, [10] solo se elige al experto con la clasificación más alta. Es decir, . Esto puede acelerar el tiempo de entrenamiento e inferencia. [11] f ( x ) = f arg max i w i ( x ) ( x ) {\displaystyle f(x)=f_{\arg \max _{i}w_{i}(x)}(x)}

Los expertos pueden utilizar formas más generales de distribuciones gaussianas multivariantes. Por ejemplo, [6] propuso , donde son parámetros que se pueden aprender. En palabras, cada experto aprende a hacer regresión lineal, con una estimación de incertidumbre que se puede aprender. f i ( y | x ) = N ( y | A i x + b i , Σ i ) {\displaystyle f_{i}(y|x)=N(y|A_{i}x+b_{i},\Sigma _{i})} A i , b i , Σ i {\displaystyle A_{i},b_{i},\Sigma _{i}}

Se pueden utilizar diferentes expertos además de las distribuciones gaussianas. Por ejemplo, se puede utilizar la distribución de Laplace [12] o la distribución t de Student [13] . Para la clasificación binaria, también se proponen expertos de regresión logística , con donde son parámetros que se pueden aprender. Esto se generaliza más tarde para la clasificación de múltiples clases, con expertos de regresión logística multinomial [14] . f i ( y | x ) = { 1 1 + e β i T x + β i , 0 , y = 0 1 1 1 + e β i T x + β i , 0 , y = 1 {\displaystyle f_{i}(y|x)={\begin{cases}{\frac {1}{1+e^{\beta _{i}^{T}x+\beta _{i,0}}}},&y=0\\1-{\frac {1}{1+e^{\beta _{i}^{T}x+\beta _{i,0}}}},&y=1\end{cases}}} β i , β i , 0 {\displaystyle \beta _{i},\beta _{i,0}}

Un artículo propuso una mezcla de softmaxes para el modelado autorregresivo del lenguaje. [15] Específicamente, considere un modelo de lenguaje que dado un texto anterior , predice la siguiente palabra . La red codifica el texto en un vector , y predice la distribución de probabilidad de la siguiente palabra como para una matriz de incrustación . En la mezcla de softmaxes, el modelo genera múltiples vectores , y predice la siguiente palabra como , donde es una distribución de probabilidad mediante una operación lineal-softmax sobre las activaciones de las neuronas ocultas dentro del modelo. El artículo original demostró su eficacia para redes neuronales recurrentes . Más tarde se descubrió que esto también funcionaba para Transformers. [16] c {\displaystyle c} x {\displaystyle x} v c {\displaystyle v_{c}} S o f t m a x ( v c W ) {\displaystyle \mathrm {Softmax} (v_{c}W)} W {\displaystyle W} v c , 1 , , v c , n {\displaystyle v_{c,1},\dots ,v_{c,n}} i = 1 n p i S o f t m a x ( v c , i W i ) {\displaystyle \sum _{i=1}^{n}p_{i}\;\mathrm {Softmax} (v_{c,i}W_{i})} p i {\displaystyle p_{i}}

Aprendizaje profundo

La sección anterior describió el MoE tal como se utilizaba antes de la era del aprendizaje profundo . Después del aprendizaje profundo, el MoE encontró aplicaciones en la ejecución de los modelos más grandes, como una forma sencilla de realizar cálculos condicionales : solo se utilizan partes del modelo, las partes se eligen de acuerdo con lo que es la entrada. [17]

El primer artículo que aplica MoE al aprendizaje profundo se remonta a 2013, [18] en el que se proponía utilizar una red de compuertas diferente en cada capa de una red neuronal profunda. Específicamente, cada compuerta es una red lineal-ReLU-lineal-softmax, y cada experto es una red lineal-ReLU. Dado que la salida de la compuerta no es dispersa , se necesitan todas las salidas de los expertos y no se realiza ningún cálculo condicional.

El desideratum de diseño clave para MoE en aprendizaje profundo es reducir el costo computacional. En consecuencia, para cada consulta, solo se debe consultar a un pequeño subconjunto de los expertos. Esto hace que MoE en aprendizaje profundo sea diferente de MoE clásico. En MoE clásico, el resultado de cada consulta es una suma ponderada de los resultados de todos los expertos. En MoE de aprendizaje profundo, el resultado de cada consulta solo puede involucrar los resultados de unos pocos expertos. En consecuencia, la elección de diseño clave en MoE es el enrutamiento: dado un lote de consultas, cómo enrutar las consultas a los mejores expertos.

Capa de MoE con puertas dispersas

La capa MoE escasamente controlada , [19] publicada por investigadores de Google Brain , utiliza redes de propagación hacia adelante como expertos y una activación lineal-softmax. De manera similar al MoE duro propuesto anteriormente, logran la dispersión mediante una suma ponderada de solo los mejores k expertos, en lugar de la suma ponderada de todos ellos. Específicamente, en una capa MoE, hay redes de propagación hacia adelante y una red de activación . La red de activación se define por , donde es una función que mantiene las mejores k entradas de un vector iguales, pero establece todas las demás entradas en . La adición de ruido ayuda con el equilibrio de carga. f 1 , . . . , f n {\displaystyle f_{1},...,f_{n}} w {\displaystyle w} w ( x ) = s o f t m a x ( t o p k ( W x + noise ) ) {\displaystyle w(x)=\mathrm {softmax} (\mathrm {top} _{k}(Wx+{\text{noise}}))} t o p k {\displaystyle \mathrm {top} _{k}} {\displaystyle -\infty }

La elección de es un hiperparámetro que se elige según la aplicación. Los valores típicos son . La versión también se denomina Switch Transformer. El Switch Transformer original se aplicó a un modelo de lenguaje T5 . [20] k {\displaystyle k} k = 1 , 2 {\displaystyle k=1,2} k = 1 {\displaystyle k=1}

Como demostración, entrenaron una serie de modelos para traducción automática con capas alternas de MoE y LSTM , y los compararon con modelos LSTM profundos. [21] La Tabla 3 muestra que los modelos MoE utilizaron menos tiempo de inferencia computacional, a pesar de tener 30 veces más parámetros.

Los MoE vainilla tienden a tener problemas de equilibrio de carga: algunos expertos son consultados a menudo, mientras que otros rara vez o nunca. Para alentar a la puerta a seleccionar a cada experto con la misma frecuencia (equilibrio de carga adecuado) dentro de cada lote, cada capa de MoE tiene dos funciones de pérdida auxiliares. Esto se mejora en [20] en una sola función de pérdida auxiliar. Específicamente, sea el número de expertos, luego para un lote dado de consultas , la pérdida auxiliar para el lote es Aquí, es la fracción de tiempo en la que el experto tiene la clasificación más alta y es la fracción de peso en el experto . Esta pérdida se minimiza en , precisamente cuando cada experto tiene el mismo peso en todas las situaciones. n {\displaystyle n} { x 1 , x 2 , . . . , x T } {\displaystyle \{x_{1},x_{2},...,x_{T}\}} n i = 1 n f i P i {\displaystyle n\sum _{i=1}^{n}f_{i}P_{i}} f i = 1 T # ( queries sent to expert  i ) {\displaystyle f_{i}={\frac {1}{T}}\#({\text{queries sent to expert }}i)} i {\displaystyle i} P i = 1 T j = 1 T w i ( x j ) {\displaystyle P_{i}={\frac {1}{T}}\sum _{j=1}^{T}w_{i}(x_{j})} i {\displaystyle i} 1 {\displaystyle 1} 1 / n {\displaystyle 1/n}

Enrutamiento

En los métodos de MoE con puertas dispersas, solo se consulta a los mejores expertos y se realiza una suma ponderada de sus resultados. Existen otros métodos. [22]

En Hash MoE, [23] el enrutamiento se realiza de manera determinista mediante una función hash, fijada antes de que comience el aprendizaje. Por ejemplo, si el modelo es un Transformer de 4 capas, y la entrada es un token para la palabra "eat", y el hash de "eat" es , entonces el token se enrutaría al primer experto en la capa 1, al cuarto experto en la capa 2, etc. A pesar de su simplicidad, logra un rendimiento competitivo como MoE escasamente controlado con . ( 1 , 4 , 2 , 3 ) {\displaystyle (1,4,2,3)} k = 1 {\displaystyle k=1}

En el caso de Soft MoE, supongamos que en cada lote, cada experto puede procesar consultas, luego hay consultas que se pueden asignar por lote. Ahora, para cada lote de consultas , la capa Soft MoE calcula una matriz , de modo que es una distribución de probabilidad sobre las consultas, y la consulta -ésima del experto es . [24] Sin embargo, esto no funciona con el modelado autorregresivo, ya que los pesos sobre un token dependen de los de todos los demás tokens. [25] p {\displaystyle p} n × p {\displaystyle n\times p} { x 1 , x 2 , . . . , x T } {\displaystyle \{x_{1},x_{2},...,x_{T}\}} w i , j , k {\displaystyle w_{i,j,k}} ( w i , j , 1 , . . . , w i , j , T ) {\displaystyle (w_{i,j,1},...,w_{i,j,T})} i {\displaystyle i} j {\displaystyle j} k w i , j , k x k {\displaystyle \sum _{k}w_{i,j,k}x_{k}} w i , j , k {\displaystyle w_{i,j,k}}

Otros enfoques incluyen resolverlo como un problema de programación lineal restringida , [26] hacer que cada experto elija las k consultas principales que desea (en lugar de que cada consulta elija a los k expertos principales para ella), [27] usar aprendizaje de refuerzo para entrenar el algoritmo de enrutamiento (ya que elegir un experto es una acción discreta, como en RL), [28] etc.

Factor de capacidad

Supongamos que hay expertos en una capa. Para un lote determinado de consultas , cada consulta se enruta a uno o más expertos. Por ejemplo, si cada consulta se enruta a un experto como en Switch Transformers, y si los expertos están equilibrados en carga, entonces cada experto debería esperar, en promedio, consultas en un lote. En la práctica, los expertos no pueden esperar un equilibrio de carga perfecto: en algunos lotes, un experto podría tener poco trabajo, mientras que en otros lotes, tendría exceso de trabajo. n {\displaystyle n} { x 1 , x 2 , . . . , x T } {\displaystyle \{x_{1},x_{2},...,x_{T}\}} T / n {\displaystyle T/n}

Dado que las entradas no pueden moverse a través de la capa hasta que cada experto en la capa haya finalizado las consultas que se le asignaron, el equilibrio de carga es importante. Como una restricción estricta del equilibrio de carga, existe el factor de capacidad : cada experto solo puede procesar hasta consultas en un lote. [22] Se ha comprobado que esto funciona en la práctica. c T / n {\displaystyle c\cdot T/n} c [ 1.25 , 2 ] {\displaystyle c\in [1.25,2]}

Aplicaciones a modelos de transformadores

Las capas MoE se utilizan en los modelos de transformadores más grandes , para los cuales el aprendizaje y la inferencia sobre el modelo completo son demasiado costosos. Por lo general, tienen puertas dispersas, con escasez de 1 o 2. En los modelos de transformadores, las capas MoE se utilizan a menudo para seleccionar las capas de avance (normalmente una red lineal-ReLU-lineal), que aparecen en cada bloque de transformador después de la atención multicabezal. Esto se debe a que las capas de avance ocupan una parte cada vez mayor del coste informático a medida que los modelos se hacen más grandes. Por ejemplo, en el modelo Palm-540B, el 90% de los parámetros están en sus capas de avance. [29]

Un transformador entrenado se puede convertir en un MoE duplicando sus capas de avance, con una compuerta inicializada aleatoriamente y luego entrenándolo más. Esta es una técnica llamada "reciclado disperso". [30]

Hay una gran cantidad de opciones de diseño involucradas en el MoE del transformador que afectan la estabilidad del entrenamiento y el rendimiento final. El informe OLMoE las describe con cierto detalle. [31]

A partir de 2023 [update], los modelos lo suficientemente grandes como para usar MoE tienden a ser modelos de lenguaje grandes , donde cada experto tiene del orden de 10 mil millones de parámetros. Además de los modelos de lenguaje, Vision MoE [32] es un modelo Transformer con capas MoE. Lo demostraron entrenando un modelo con 15 mil millones de parámetros. MoE Transformer también se ha aplicado para modelos de difusión . [33]

Una serie de grandes modelos de lenguaje de Google utilizaron MoE. GShard [34] utiliza MoE con hasta 2 expertos principales por capa. Específicamente, siempre se selecciona al experto principal, y el experto principal 2 se selecciona con una probabilidad proporcional al peso de ese experto de acuerdo con la función de control. Más tarde, GLaM [35] demostró un modelo de lenguaje con 1,2 billones de parámetros, cada capa de MoE utiliza los 2 mejores de 64 expertos. Switch Transformers [20] utiliza el experto principal 1 en todas las capas de MoE.

El NLLB-200 de Meta AI es un modelo de traducción automática para 200 idiomas. [36] Cada capa de MoE utiliza un MoE jerárquico con dos niveles. En el primer nivel, la función de selección elige si se utiliza una capa de retroalimentación "compartida" o si se utilizan los expertos. Si se utilizan los expertos, otra función de selección calcula los pesos y elige a los dos mejores expertos. [37]

Los modelos de lenguaje grandes de MoE se pueden adaptar para tareas posteriores mediante el ajuste de instrucciones . [38]

En diciembre de 2023, Mistral AI lanzó Mixtral 8x7B bajo licencia Apache 2.0. Es un modelo de lenguaje MoE con 46,7 mil millones de parámetros, 8 expertos y una escasez de 2. También lanzaron una versión optimizada para el seguimiento de instrucciones. [39] [40]

En marzo de 2024, Databricks lanzó DBRX . Es un modelo de lenguaje MoE con parámetros 132B, 16 expertos y una escasez de 4. También lanzaron una versión optimizada para el seguimiento de instrucciones. [41] [42]

Lectura adicional

  • Antes de la era del aprendizaje profundo
    • McLachlan, Geoffrey J.; Peel, David (2000). Modelos de mezcla finita . Sección de probabilidad y estadística aplicada a series de Wiley. Nueva York, Chichester, Weinheim, Brisbane, Singapur, Toronto: John Wiley & Sons, Inc. ISBN 978-0-471-00626-8.
    • Yuksel, SE; Wilson, JN; Gader, PD (agosto de 2012). "Veinte años de mezcla de expertos". IEEE Transactions on Neural Networks and Learning Systems . 23 (8): 1177–1193. doi :10.1109/TNNLS.2012.2200299. ISSN  2162-237X. PMID  24807516. S2CID  9922492.
    • Masoudnia, Saeed; Ebrahimpour, Reza (12 de mayo de 2012). "Mezcla de expertos: una revisión de la literatura". Revisión de Inteligencia Artificial . 42 (2): 275–293. doi :10.1007/s10462-012-9338-y. S2CID  3185688.
    • Nguyen, Hien D.; Chamroukhi, Faicel (julio de 2018). "Aspectos prácticos y teóricos del modelado de mezcla de expertos: una descripción general". Minería de datos y descubrimiento de conocimiento de WIREs . 8 (4). doi :10.1002/widm.1246. ISSN  1942-4787. S2CID  49301452.
  • Técnicas prácticas para el entrenamiento de modelos de transformadores MoE
    • Zoph, Barret; Bello, Irwan; Kumar, Sameer; Du, Nan; Huang, Yanping; Decano, Jeff; Shazeer, Noam; Fedus, William (2022). "ST-MoE: Diseño de modelos expertos dispersos estables y transferibles". arXiv : 2202.08906 [cs.CL].
    • Muennighoff, Niklas; Soldaini, Luca; Groeneveld, Dirk; Mira, Kyle; Morrison, Jacob; Min, Sewon; Shi, Weijia; Walsh, Pete; Tafjord, Oyvind (3 de septiembre de 2024), OLMoE: modelos de lenguaje abiertos de mezcla de expertos , arXiv : 2409.02060, con publicación de datos asociada en allenai/OLMoE, Ai2, 2024-10-17 , consultado el 2024-10-18
    • Rajbhandari, Samyam; Li, Conglong; Yao, Zhewei; Zhang, Minjia; Aminabadi, Reza Yazdani; Awan, Ammar Ahmad; Rasley, Jeff; Él, Yuxiong (14 de enero de 2022). "DeepSpeed-MoE: avance de la inferencia y la capacitación de una combinación de expertos para impulsar la escala de IA de próxima generación". arXiv : 2201.05596 [cs.LG].
  • Revisión de la literatura sobre la era del aprendizaje profundo
    • Fuzhao, Xue (21 de julio de 2024). "XueFuzhao/una-mezcla-increíble-de-expertos". GitHub . Consultado el 21 de julio de 2024 .
    • Vats, Arpita (2 de septiembre de 2024). "arpita8/Awesome-Mixture-of-Experts-Papers". GitHub . Consultado el 6 de septiembre de 2024 .
    • Cai, Weilin; Jiang, Juyong; Wang, Fan; Tang, Jing; Kim, Sunghun; Huang, Jiayi (8 de agosto de 2024). "Una encuesta sobre la mezcla de expertos". arXiv : 2407.06204 [cs.LG].

Véase también

Referencias

  1. ^ Baldacchino, Tara; Cross, Elizabeth J.; Worden, Keith; Rowson, Jennifer (2016). "Mezcla bayesiana variacional de modelos de expertos y análisis de sensibilidad para sistemas dinámicos no lineales". Sistemas mecánicos y procesamiento de señales . 66–67: 178–200. Bibcode :2016MSSP...66..178B. doi :10.1016/j.ymssp.2015.05.009.
  2. ^ Hampshire, JB; Waibel, A. (julio de 1992). "La red Meta-Pi: creación de representaciones de conocimiento distribuido para el reconocimiento robusto de patrones de múltiples fuentes" (PDF) . IEEE Transactions on Pattern Analysis and Machine Intelligence . 14 (7): 751–769. doi :10.1109/34.142911.
  3. ^ Alexander Waibel, Toshiyuki Hanazawa, Geoffrey Hinton, Kiyohiro Shikano, Kevin J. Lang (1995). "Reconocimiento de fonemas mediante redes neuronales con retardo temporal*". En Chauvin, Yves; Rumelhart, David E. (eds.). Retropropagación . Psychology Press. doi :10.4324/9780203763247. ISBN 978-0-203-76324-7.{{cite book}}: CS1 maint: multiple names: authors list (link)
  4. ^ Nowlan, Steven; Hinton, Geoffrey E (1990). "Evaluación de mezclas adaptativas de expertos en competencia". Avances en sistemas de procesamiento de información neuronal . 3. Morgan-Kaufmann.
  5. ^ Jacobs, Robert A.; Jordan, Michael I.; Nowlan, Steven J.; Hinton, Geoffrey E. (febrero de 1991). "Mezclas adaptativas de expertos locales". Computación neuronal . 3 (1): 79–87. doi :10.1162/neco.1991.3.1.79. ISSN  0899-7667. PMID  31141872. S2CID  572361.
  6. ^ ab Jordan, Michael; Jacobs, Robert (1991). "Jerarquías de expertos adaptativos". Avances en sistemas de procesamiento de información neuronal . 4 . Morgan-Kaufmann.
  7. ^ ab Jordan, Michael I.; Jacobs, Robert A. (marzo de 1994). "Mezclas jerárquicas de expertos y el algoritmo EM". Neural Computation . 6 (2): 181–214. doi :10.1162/neco.1994.6.2.181. hdl : 1721.1/7206 . ISSN  0899-7667.
  8. ^ ab Jordan, Michael I.; Xu, Lei (1995-01-01). "Resultados de convergencia para el enfoque EM para mezclas de arquitecturas de expertos". Redes neuronales . 8 (9): 1409–1431. doi :10.1016/0893-6080(95)00014-3. hdl : 1721.1/6620 . ISSN  0893-6080.
  9. ^ Xu, Lei; Jordan, Michael; Hinton, Geoffrey E (1994). "Un modelo alternativo para mezclas de expertos". Avances en sistemas de procesamiento de información neuronal . 7 . MIT Press.
  10. ^ Collobert, Ronan; Bengio, Samy; Bengio, Yoshua (2001). "Una mezcla paralela de SVM para problemas de escala muy grande". Avances en sistemas de procesamiento de información neuronal . 14 . MIT Press.
  11. ^ Goodfellow, Ian; Bengio, Yoshua; Courville, Aaron (2016). "12: Aplicaciones". Aprendizaje profundo . Computación adaptativa y aprendizaje automático. Cambridge, Mass.: The MIT Press. ISBN 978-0-262-03561-3.
  12. ^ Nguyen, Hien D.; McLachlan, Geoffrey J. (1 de enero de 2016). "Mezcla de Laplace de expertos lineales". Computational Statistics & Data Analysis . 93 : 177–191. doi :10.1016/j.csda.2014.10.016. ISSN  0167-9473.
  13. ^ Chamroukhi, F. (1 de julio de 2016). "Modelado robusto de mezclas de expertos utilizando la distribución t". Redes neuronales . 79 : 20–36. arXiv : 1701.07429 . doi :10.1016/j.neunet.2016.03.002. ISSN  0893-6080. PMID  27093693. S2CID  3171144.
  14. ^ Chen, K.; Xu, L.; Chi, H. (1999-11-01). "Algoritmos de aprendizaje mejorados para la combinación de expertos en la clasificación multiclase". Redes neuronales . 12 (9): 1229–1252. doi :10.1016/S0893-6080(99)00043-X. ISSN  0893-6080. PMID  12662629.
  15. ^ Yang, Zhilin; Dai, Zihang; Salakhutdinov, Ruslan; Cohen, William W. (10 de noviembre de 2017). "Rompiendo el cuello de botella de Softmax: un modelo de lenguaje RNN de alto rango". arXiv : 1711.03953 [cs.CL].
  16. ^ Narang, Sharan; Chung, Hyung Won; Tay, Yi; Fedus, William; Fevry, Thibault; Matena, Michael; Malkan, Karishma; Fiedel, Noah; Shazeer, Noam (23 de febrero de 2021). "¿Las modificaciones de los transformadores se transfieren entre implementaciones y aplicaciones?". arXiv : 2102.11972 [cs.LG].
  17. ^ Bengio, Yoshua; Léonard, Nicholas; Courville, Aaron (2013). "Estimación o propagación de gradientes a través de neuronas estocásticas para computación condicional". arXiv : 1308.3432 [cs.LG].
  18. ^ Eigen, David; Ranzato, Marc'Aurelio; Sutskever, Ilya (2013). "Aprendizaje de representaciones factorizadas en una mezcla profunda de expertos". arXiv : 1312.4314 [cs.LG].
  19. ^ Shazeer, Noam; Mirhoseini, Azalia; Maziarz, Krzysztof; Davis, Andy; Le, Quoc; Hinton, Geoffrey; Dean, Jeff (2017). "Redes neuronales escandalosamente grandes: la capa de mezcla de expertos escasamente controlada". arXiv : 1701.06538 [cs.LG].
  20. ^ abc Fedus, William; Zoph, Barret; Shazeer, Noam (1 de enero de 2022). "Transformadores de conmutación: escalamiento a modelos de billones de parámetros con escasez simple y eficiente". The Journal of Machine Learning Research . 23 (1): 5232–5270. arXiv : 2101.03961 . ISSN  1532-4435.
  21. ^ Wu, Yonghui; Schuster, Mike; Chen, Zhifeng; Le, Quoc V.; Norouzi, Mohammad; Macherey, Wolfgang; Krikun, Maxim; Cao, Yuan; Gao, Qin; Macherey, Klaus; Klingner, Jeff; Shah, Apurva; Johnson, Melvin; Liu, Xiaobing; Kaiser, Łukasz (2016). "El sistema de traducción automática neuronal de Google: cerrando la brecha entre la traducción humana y la traducción automática". arXiv : 1609.08144 [cs.CL].
  22. ^ ab Zoph, Barret; Bello, Irwan; Kumar, Sameer; Du, Nan; Huang, Yanping; Decano, Jeff; Shazeer, Noam; Fedus, William (2022). "ST-MoE: Diseño de modelos expertos dispersos estables y transferibles". arXiv : 2202.08906 [cs.CL].
  23. ^ Roller, Stephen; Sukhbaatar, Sainbayar; szlam, arthur; Weston, Jason (2021). "Capas hash para modelos dispersos de gran tamaño". Avances en sistemas de procesamiento de información neuronal . 34 . Curran Associates: 17555–17566. arXiv : 2106.04426 .
  24. ^ Puigcerver, Joan; Riquelme, Carlos; Mustafa, Basil; Houlsby, Neil (2023). "De mezclas dispersas a mezclas suaves de expertos". arXiv : 2308.00951 [cs.LG].
  25. ^ Wang, Phil (4 de octubre de 2023). "lucidrains/soft-moe-pytorch". GitHub . Consultado el 8 de octubre de 2023 .
  26. ^ Lewis, Mike; Bhosale, Shruti; Dettmers, Tim; Goyal, Naman; Zettlemoyer, Luke (1 de julio de 2021). "Capas BASE: simplificación del entrenamiento de modelos grandes y dispersos". Actas de la 38.ª Conferencia internacional sobre aprendizaje automático . PMLR: 6265–6274. arXiv : 2103.16716 .
  27. ^ Zhou, Yanqi; Lei, Tao; Liu, Hanxiao; Du, Nan; Huang, Yanping; Zhao, Vicente; Dai, Andrés M.; Chen, Zhifeng; Le, Quoc V.; Laudon, James (6 de diciembre de 2022). "Mezcla de expertos con enrutamiento de elección de expertos". Avances en los sistemas de procesamiento de información neuronal . 35 : 7103–7114. arXiv : 2202.09368 .
  28. ^ Bengio, Emmanuel; Bacon, Pierre-Luc; Pineau, Joelle; Precup, Doina (2015). "Computación condicional en redes neuronales para modelos más rápidos". arXiv : 1511.06297 [cs.LG].
  29. ^ "Inmersión profunda en Transformer: recuento de parámetros". Inmersión profunda en Transformer: recuento de parámetros . Consultado el 10 de octubre de 2023 .
  30. ^ Komatsuzaki, Aran; Puigcerver, Joan; Lee-Thorp, James; Ruiz, Carlos Riquelme; Mustafa, Albahaca; Ainslie, Josué; Tay, Yi; Dehghani, Mostafa; Houlsby, Neil (17 de febrero de 2023). "Reciclaje disperso: formación de una mezcla de expertos desde puntos de control densos". arXiv : 2212.05055 [cs.LG].
  31. ^ Muennighoff, Niklas; Soldaini, Luca; Groeneveld, Dirk; Mira, Kyle; Morrison, Jacob; Min, Sewon; Shi, Weijia; Walsh, Pete; Tafjord, Oyvind (3 de septiembre de 2024), OLMoE: modelos de lenguaje abiertos de mezcla de expertos , arXiv : 2409.02060
  32. ^ Riquelme, Carlos; Puigcerver, Joan; Mustafa, Basil; Neumann, Maxim; Jenatton, Rodolphe; Susano Pinto, André; Keysers, Daniel; Houlsby, Neil (2021). "Escalando la visión con una mezcla dispersa de expertos". Avances en sistemas de procesamiento de información neuronal . 34 : 8583–8595. arXiv : 2106.05974 .
  33. ^ Fei, Zhengcong; Fan, Mingyuan; Yu, Changqian; Li, Debang; Huang, Junshi (16 de julio de 2024). "Ampliación de transformadores de difusión a 16 mil millones de parámetros". arXiv : 2407.11633 [cs.CV].
  34. ^ Lepikhin, Dmitry; Lee, Hyouk Joong; Xu, Yuanzhong; Chen, Dehao; Firat, Orhan; Huang, Yanping; Krikún, Maxim; Shazeer, Noam; Chen, Zhifeng (2020). "GShard: escalamiento de modelos gigantes con computación condicional y fragmentación automática". arXiv : 2006.16668 [cs.CL].
  35. ^ Du, Nan; Huang, Yanping; Dai, Andrés M.; Tong, Simón; Lepikhin, Dmitry; Xu, Yuanzhong; Krikún, Maxim; Zhou, Yanqi; Yu, Adams Wei; Firat, Orhan; Zoph, Barret; Fedus, Liam; Bosma, Martín; Zhou, Zongwei; Wang, Tao (2021). "GLaM: escalamiento eficiente de modelos lingüísticos con una combinación de expertos". arXiv : 2112.06905 [cs.CL].
  36. ^ "200 idiomas en un único modelo de IA: un gran avance en la traducción automática de alta calidad". ai.facebook.com . 2022-06-19. Archivado desde el original el 2023-01-09.
  37. ^ Equipo NLLB; Costa-jussà, Marta R.; Cross, James; Çelebi, Onur; Elbayad, Maha; Heafield, Kenneth; Heffernan, Kevin; Kalbassi, Elahe; Lam, Janice; Licht, Daniel; Maillard, Jean; Sun, Anna; Wang, Skyler; Wenzek, Guillaume; Youngblood, Al (2022). "Ningún idioma se queda atrás: escalando la traducción automática centrada en el ser humano". arXiv : 2207.04672 [cs.CL].
  38. ^ Shen, Sheng; Hou, Le; Zhou, Yanqi; Du, Nan; Longpre, Shayne; Wei, Jason; Chung, Hyung Won; Zoph, Barret; Fedus, William; Chen, Xinyun; Vu, Tu; Wu, Yuexin; Chen, Wuyang; Webson, Alberto; Li, Yunxuan (2023). "La combinación de expertos se une al ajuste de instrucciones: una combinación ganadora para modelos de lenguaje grandes". arXiv : 2305.14705 [cs.CL].
  39. ^ AI, Mistral (11 de diciembre de 2023). "Mixtral de expertos". mistral.ai . Consultado el 4 de febrero de 2024 .
  40. ^ Jiang, Albert Q.; Sablayrolles, Alexandre; Roux, Antoine; Mensch, Arturo; Savary, Blanche; Bamford, Chris; Chaplot, Devendra Singh; Casas, Diego de las; Hanna, Emma Bou (8 de enero de 2024). “Mixtral de Expertos”. arXiv : 2401.04088 [cs.LG].
  41. ^ "Presentación de DBRX: un nuevo LLM abierto de última generación". Databricks . 2024-03-27 . Consultado el 2024-03-28 .
  42. ^ Knight, Will. "Dentro de la creación del modelo de inteligencia artificial de código abierto más poderoso del mundo". Wired . ISSN  1059-1028 . Consultado el 28 de marzo de 2024 .
Retrieved from "https://en.wikipedia.org/w/index.php?title=Mixture_of_experts&oldid=1252362582"