La FFN estándar: FFN(x) = W2 · activation(W1 · x + b1) + b2, donde W1 proyecta desde la dimensión del modelo a una dimensión intermedia más grande (típicamente 4x), la función de activación introduce no linealidad, y W2 proyecta de vuelta a la dimensión del modelo. Cada posición (token) pasa por esto independientemente — la FFN no ve otros tokens, solo la capa de atención lo hace.
Los LLMs modernos (LLaMA, Mistral, etc.) usan SwiGLU en lugar de la FFN estándar: SwiGLU(x) = (W1 · x · SiLU) ⊗ (W3 · x). Esto añade una tercera matriz de pesos (W3) y un mecanismo de compuerta que permite a la red controlar qué información pasa. A pesar de los parámetros adicionales, funciona mejor a cómputo equivalente, por lo que la dimensión intermedia se ajusta hacia abajo para compensar. Este es un caso donde un componente ligeramente más complejo mejora todo el sistema.
La investigación sugiere que las capas FFN funcionan como memorias clave-valor: la primera capa lineal (W1) detecta patrones en la entrada (claves), y la segunda capa lineal (W2) mapea esos patrones a actualizaciones de salida (valores). "La Torre Eiffel está en" activa neuronas específicas en W1, que a través de W2 promueven el token "París". Esta interpretación clave-valor explica por qué las capas FFN almacenan conocimiento factual y por qué las técnicas de edición de conocimiento pueden modificar hechos específicos actualizando pesos específicos de la FFN.