Sim, os GANs podem ser usados para texto. No entanto, há um problema na combinação de como os GANs funcionam e como o texto é normalmente gerado pelas redes neurais:
- Os GANs trabalham propagando gradientes através da composição de Gerador e Discriminador.
- Normalmente, o texto é gerado por uma camada softmax final sobre o espaço do token, ou seja, a saída da rede é normalmente a probabilidade de gerar cada token (isto é, uma unidade estocástica discreta).
Essas duas coisas não funcionam bem juntas por si mesmas, porque você não pode propagar gradientes através de unidades estocásticas discretas. Existem duas abordagens principais para lidar com isso: o algoritmo REINFORCE e a reparameterização Gumbel-Softmax (também conhecida como distribuição de concreto ). Leve em consideração que o REINFORCE é conhecido por ter alta variação, portanto, você precisa de grandes quantidades de dados para obter boas estimativas de gradiente.
Como um exemplo de REFORÇAR para GANs de texto, você pode verificar o artigo SeqGAN . Um exemplo do Gumbel-Softmax, você pode conferir neste artigo .
Outra opção completamente diferente é não ter uma unidade estocástica discreta como saída do gerador (por exemplo, gerar tokens deterministicamente no espaço incorporado), eliminando o problema original de retropropagação através deles.