我使用完全连接的网络从编码器的最后状态获取整个单词分布。
例如,词汇表中有5个单词。
P = [0.1, 0.1, 0.2, 0.2, 0,4]
基本事实是一句话'为这列火车数据设定。
我从5个单词中抽取3个单词,如果目标集包含3个单词,那么我希望P
中3个单词的概率增加,对于此状态。
如果3个单词中的一个不在目标集中,那么我希望P
中单词的概率减少,对于此状态。
所以我写了这些代码:
reward = [0,0,0]
假设前3个单词是从P
中采样的,并且只有3个单词中的前2个单词位于目标集中。第三个词不在目标集中。然后
reward = [1,1,-1]
然后我计算reward
的负和和积,并将3 P2=[0.1, 0.1, 0.2]
作为损失
loss = -sum(reward * P2.log())
但是我没有得到结果:可以从每个州的词汇表中选择最高概率词。