Los asistentes conversacionales con inteligencia artificial ya forman parte de la vida diaria, y mucha gente se pregunta cómo “saben” qué escribir. No hay magia: detrás de cada respuesta hay muchísimas cuentas, y las ideas centrales son las mismas de la preparatoria y los primeros semestres de universidad. Probabilidad condicional, función exponencial, logaritmo y notación científica. Aquí usamos el tema como pretexto para repasar esas cuatro herramientas, con números pequeños inventados para el ejemplo.

La idea central: predecir la siguiente palabra

Un modelo de lenguaje recibe un fragmento de texto y responde una pregunta concreta: ¿qué tan probable es que cada palabra del vocabulario sea la siguiente? Después de “el cielo está”, palabras como “despejado” o “nublado” deben tener probabilidad alta, y “tornillo” casi ninguna.

En lenguaje matemático es una probabilidad condicional, P(wcontexto)P(w \mid \text{contexto}), que se lee “probabilidad de ww dado el contexto”. Para ser una distribución válida, cada valor debe estar entre 0 y 1 y la suma sobre todas las palabras debe dar exactamente 1.

Softmax: de puntajes cualesquiera a probabilidades

Internamente el modelo produce un puntaje por palabra, un número real cualquiera que puede ser negativo o mayor que 1. Para convertirlo en probabilidad se aplica softmax:

P(wi)=ezijezjP(w_i)=\frac{e^{z_i}}{\sum_{j} e^{z_j}}
Softmax: la exponencial vuelve todo positivo y dividir entre la suma hace que el total sea 1.

La función exponencial es clave. Como exe^{x} siempre es positivo, ninguna probabilidad sale negativa. Como es creciente, un puntaje mayor sigue dando mayor probabilidad. Además amplifica diferencias: un puntaje apenas 1 mayor se vuelve unas 2,718 veces más grande, porque ez+1/ez=ee^{z+1}/e^{z}=e.

−2−101230510152025puntajee^xe^x
La exponencial es siempre positiva y creciente: cada unidad extra de puntaje multiplica el valor por cerca de 2,718. El orden se mantiene y las diferencias se amplifican.

Ejemplo resuelto: tres palabras candidatas

Supón un vocabulario de juguete con tres candidatas después de “el cielo está”: “despejado” con puntaje 2, “nublado” con puntaje 1 y “tornillo” con puntaje 0.

Softmax paso a paso
  1. e27,389,e12,718,e0=1\displaystyle e^{2}\approx 7{,}389,\quad e^{1}\approx 2{,}718,\quad e^{0}=1 Calcula la exponencial de cada puntaje, con e ≈ 2,718.
  2. 7,389+2,718+1=11,107\displaystyle 7{,}389+2{,}718+1=11{,}107 Suma los tres valores para obtener el denominador.
  3. e2e2+e1+e07,38911,1070,665\displaystyle \frac{e^{2}}{e^{2}+e^{1}+e^{0}}\approx\frac{7{,}389}{11{,}107}\approx 0{,}665 Divide cada exponencial entre la suma. Para "despejado":
  4. 2,71811,1070,245,111,1070,090\displaystyle \frac{2{,}718}{11{,}107}\approx 0{,}245,\qquad \frac{1}{11{,}107}\approx 0{,}090 Repite con las otras dos palabras.
  5. 0,665+0,245+0,090=1,000\displaystyle 0{,}665+0{,}245+0{,}090=1{,}000 Comprobación: las tres probabilidades deben sumar 1 (la mínima diferencia es redondeo).

Resultado: cerca de 66,5% para “despejado”, 24,5% para “nublado” y 9% para “tornillo”. El puntaje 0 no se volvió probabilidad 0, porque e0=1e^{0}=1.

66,5%despejado24,5%nublado9%tornillo
Softmax de los puntajes 2, 1 y 0: cerca de 66,5% para despejado, 24,5% para nublado y 9% para tornillo. Ninguna barra llega a cero.

La probabilidad de una oración completa

Generar una oración repite el proceso palabra por palabra. Por la regla de la cadena, la probabilidad de la secuencia es el producto de las probabilidades de cada paso, condicionadas a lo anterior:

P(w1,w2,,wn)=P(w1)P(w2w1)P(wnw1,,wn1)P(w_1,w_2,\dots,w_n)=P(w_1)\cdot P(w_2\mid w_1)\cdots P(w_n\mid w_1,\dots,w_{n-1})
Regla de la cadena: cada factor depende de todas las palabras previas.

Supón una oración de cuatro palabras con probabilidades 0,5, 0,4, 0,2 y 0,1 en cada paso. La oración tiene probabilidad 0,50,40,20,1=0,0040{,}5 \cdot 0{,}4 \cdot 0{,}2 \cdot 0{,}1 = 0{,}004, es decir, 0,4%. Con 50 palabras a 0,1 cada una, el producto es 0,150=10500{,}1^{50}=10^{-50}, tan pequeño que una computadora puede redondearlo a cero (underflow).

0123400,20,40,60,81palabrasprobabilidadP acumulada
Probabilidad acumulada de la oración: 1, luego 0,5, 0,2, 0,04 y 0,004 al multiplicar por 0,5, 0,4, 0,2 y 0,1. Con cuatro palabras el producto ya se desploma.

Por qué entra el logaritmo

La solución es trabajar con log-probabilidades, usando log(ab)=loga+logb\log(a\cdot b)=\log a+\log b. Al aplicar logaritmo a la regla de la cadena, el producto se vuelve suma:

logP(w1,,wn)=k=1nlogP(wkw1,,wk1)\log P(w_1,\dots,w_n)=\sum_{k=1}^{n}\log P(w_k\mid w_1,\dots,w_{k-1})
Log-probabilidad de la oración: suma de los logaritmos de cada paso.
Comprobando el ejemplo de cuatro palabras (logaritmo base 10)
  1. log0,50,301, log0,40,398, log0,20,699, log0,1=1\displaystyle \log 0{,}5\approx -0{,}301,\ \log 0{,}4\approx -0{,}398,\ \log 0{,}2\approx -0{,}699,\ \log 0{,}1=-1 Calcula el logaritmo de cada factor.
  2. 0,3010,3980,6991=2,398\displaystyle -0{,}301-0{,}398-0{,}699-1=-2{,}398 Suma los valores.
  3. 102,3980,004\displaystyle 10^{-2{,}398}\approx 0{,}004 Regresa de la escala logarítmica y compara con el producto directo.

Coincide: 0,004 por ambos caminos. En el caso de 50 palabras guardamos solo 50-50 en lugar de 105010^{-50}. Como el logaritmo es creciente, la oración con mayor log-probabilidad también es la más probable.

Orden de magnitud y notación científica

El tamaño de estos modelos se describe con frases como “miles de millones de parámetros”. Aquí ayuda la notación científica: mil millones es 10910^{9} y un billón (en español) es 101210^{12}. Si un modelo hipotético A tiene 10910^{9} parámetros y otro B tiene 101110^{11}, B es dos órdenes de magnitud mayor, es decir, 100 veces mayor, no “el doble”.

Errores comunes

  • Creer que softmax es solo dividir entre la suma. Sin la exponencial, los puntajes negativos darían “probabilidades” negativas.
  • Sumar probabilidades de pasos consecutivos. Los eventos en secuencia se multiplican.
  • Olvidar que las log-probabilidades son negativas. Más cerca de 0 significa más probable.
  • Confundir órdenes de magnitud. De 10910^{9} a 101210^{12} es 1,000 veces más, no 3 veces.
  • Tomar probabilidad alta como certeza. Un 66,5% todavía deja 33,5% para otras palabras.

Preguntas frecuentes

¿Softmax siempre da valores entre 0 y 1?

Sí. Cada término es positivo y se divide entre una suma que lo incluye; con más de una palabra queda estrictamente entre 0 y 1, y todos suman 1.

¿Por qué usar la base e?

Cualquier base mayor que 1 serviría. Se prefiere e porque su derivada es ella misma, lo que simplifica el entrenamiento.

¿El logaritmo cambia cuál oración es la más probable?

No. Es una función creciente y conserva el orden.

¿Necesito cálculo para entender esto?

No para lo que se muestra aquí. Bastan probabilidad condicional y las propiedades de potencias y logaritmos.