O único dial entre o seguro e o surpreendente.

SRC·06 Source
O modelo não escolhe a próxima palavra — ele rola dados viciados.

O modelo não escolhe a próxima palavra — ele rola dados viciados.

Do softmax sai uma tabela completa de probabilidades para a próxima palavra. O modelo não pega simplesmente a do topo — ele rola os dados, sorteando uma palavra na proporção de sua probabilidade. A temperatura é o único botão que define o quanto esses dados estão viciados: abaixe e ele joga seguro, aumente e ele fica ousado.
Sempre seguro é robótico. Sempre aleatório é absurdo.

Sempre seguro é robótico. Sempre aleatório é absurdo.

Pegue sempre a palavra mais provável e o modelo fica duro — a mesma resposta toda vez, frases presas em loops. Amostre direto das probabilidades cruas e ele divaga, soltando de vez em quando uma palavra do nada. Como uma linha de montagem travada: um único ajuste estampa peças idênticas para sempre. Queremos um botão entre o morto e o desvairado.
O dial: divida cada pontuação por <em>T</em> antes do softmax.

O dial: divida cada pontuação por T antes do softmax.

pi=ezi/Tjezj/Tp_i = \dfrac{e^{z_i/T}}{\sum_j e^{z_j/T}}
Antes de as pontuações virarem probabilidades, divida cada uma por um número T. Um T pequeno (abaixo de 1) estica as diferenças — o favorito dispara. Um T grande as achata — os azarões ganham uma chance real. Com T = 1, nada muda. Como uma panela no fogão: em fogo baixo mal se mexe e o mais pesado assenta; em fervura forte tudo se agita de uma vez.
Ponha em zero e congela; no infinito, puro caos.

Ponha em zero e congela; no infinito, puro caos.

limT0+pi=1 ⁣[i=argmaxjzj]limTpi=1n\lim_{T\to 0^{+}} p_i = \mathbb{1}\!\left[\,i=\operatorname*{argmax}_j z_j\,\right] \qquad \lim_{T\to\infty} p_i = \frac{1}{n}
Empurre o dial até os extremos. Quando T→0, a pontuação mais alta engole todas as probabilidades — sempre a única palavra mais provável, a mesma resposta fixa toda vez (é isto que significa 'temperatura 0'). Quando T→∞, cada palavra se achata para a mesma probabilidade — um cara ou coroa às cegas sobre todo o vocabulário. Como uma bolinha de gude numa tigela: deixada em paz, ela sempre rola para o único ponto mais baixo; sacuda com força suficiente e ela pode parar em qualquer lugar.
Mesmo domada, uma longa cauda de palavras ruins espreita.

Mesmo domada, uma longa cauda de palavras ruins espreita.

Escolha uma temperatura sensata e um problema permanece: um vocabulário tem dezenas de milhares de palavras, e as milhares quase impossíveis guardam, cada uma, uma migalha de probabilidade. Migalhas somam. Amostre por tempo suficiente e mais cedo ou mais tarde você vai sortear uma que descarrilha a frase inteira. Como uma nuvem de mosquitos: nenhum importa sozinho, mas o enxame é tão vasto que, cedo ou tarde, algo pica.
Então corte a cauda: fique com os poucos que cobrem a massa.

Então corte a cauda: fique com os poucos que cobrem a massa.

S=arg minS{S:iSpip}p^i=pijSpjS=\operatorname*{arg\,min}_{S'}\Big\{\,|S'| : \textstyle\sum_{i\in S'} p_i \ge p\,\Big\} \qquad \hat p_i=\frac{p_i}{\sum_{j\in S} p_j}
Ordene as palavras da mais provável para baixo e fique só com o menor grupo cujas probabilidades já somem, digamos, 0.9, e jogue o resto fora antes de rolar. Reajuste o peso dos sobreviventes para que somem um de novo. (Fique com um número fixo no lugar, e isso é top-k.) Como peneirar ouro: rode a areia sem valor por cima da borda, guarde as poucas pepitas pesadas e trabalhe só com elas.
Um modelo, um dial — escrevente cuidadoso ou poeta selvagem.

Um modelo, um dial — escrevente cuidadoso ou poeta selvagem.

Essa é a receita inteira. A temperatura distorce as probabilidades — nítidas e seguras, ou planas e ousadas. O corte apara o absurdo da cauda. Então o modelo rola. Nada mudou dentro da rede; você apenas girou um botão. Como o forno de um soprador de vidro: a mesma gota incandescente, e só o calor decide se ela se firma em algo rígido e exato ou flui para algo selvagem.
🌱 Existe uma próxima palavra certa — ou só uma temperatura que você escolheu?

🌱 Existe uma próxima palavra certa — ou só uma temperatura que você escolheu?

🌱 Se cada palavra não passa de uma jogada de dados com pesos, eis o que inquieta: talvez não haja uma única próxima palavra certa esperando para ser encontrada — apenas aquela que a temperatura que você escolheu acabou favorecendo. Gire o dial e uma frase diferente, igualmente fluente, aparece. Então, quando o modelo soa seguro de si, ele está dizendo o que é verdade — ou só o que era provável no calor que você escolheu?
toque →deslize ↑ para maisdeslize ↓ para sair