為什么GAN不能直接用於NLP中?
生成圖像是用隨機的向量做實值的映射變換,是連續的過程。因此可以將判別器的誤差反向傳播到生成器。
在自然語言處理中,encoder解碼生成文本的過程中,模型生成詞的過程其實是在詞表中選詞的過程,它是根據當前網絡輸出的詞語的整個概率分布,選取概率最大的詞。這個選詞的過程argmax是一個離散的過程,是不可導的。因此,無法通過D的梯度反向傳播到G,故無法更新G的參數。
文本GAN的解決方法:
1. 直接將生成器softmax之后的概率傳給鑒別器,不進行argmax采樣,可以反向傳播
2. 策略梯度 policy network
3. Gumble-softmax