当前位置:   article > 正文

NLP学习过程中的特殊概念及方法_n-gram teacher forcing

n-gram teacher forcing

目录

1.负采样:

2.高频词亚采样:

3.seq2seq 训练技巧:先验知识

3.1目的:  在文本摘要,问答等任务中,尽量使用原文中出现过的词。

4.seq2seq 训练技巧:Teacher Forcing:

即Exposure Bias 问题

5.PGN网络:pointer-generation network

6.优化器的选择


1.负采样

https://blog.csdn.net/weixin_42253689/article/details/113873657

 

2.高频词亚采样

也是在w2v训练过程中使用的采样方法,简称trick

作用:其一 提升训练过程5-10倍。   其二:增加低频次采用的概率,减小高频词采用的概率

p是丢弃概率,词频越高,丢弃概率越大。  sample是参数。   freq是词wi的词频

 

3.seq2seq 训练技巧:先验知识

3.1目的:  在文本摘要,问答等任务中,尽量使用原文中出现过的词。

定义一个向量θ = (θ1,……θv),v为vocab的size。如果一个词在文章中出现过,那么对应位置就置1,否则置0。然后y` = s*θ+t。 然后y和y`求平均,对原文中出现过的词进行了加强。 这样能够是的输出的词尽量使用原文中出现过的词。

 

4.Teacher Forcing:

seq2seq 训练技巧:就是在decode的过程中,不能够保证生成的结果都是正确的,如果前面预测的结果是错误的,那么忧郁传递的作用,后面预测的结果就错的离谱。那么引入Teacher Forcing,就是给定一个正确的输出结果,不管你预测的结果是否正确,下一时刻输入的都按正确的输入。

 

但这也会造成一定的缺陷:就是在test的时候,没有正确的结果,也就是没有teacher,模型的实战效果就没有那么好。就像学习的时候,一学就懂。做题时一做就错。

即Exposure Bias 问题

如何解决上述缺陷:

1.计划采样(Scheduled sampling

用 y = α1*y_teacher + α2*y_student。    通过不断调整两个α参数,刚开始使teacher的权重多一点,后面使teacher的权重少一点。就像先学习后做题一样。实现teacher作用的衰减,来增强模型在test集上的性能。

衰减方式可以使:线性衰减,指数衰减,逆sigmoid衰减

2.构造负样本:

将样本中输出结果的一部分位置来mask掉,不让所有位置都有teacher的作用,来增加对模型的干扰性,提高模型在训练集上的效果。

3.对抗训练(梯度惩罚)

在训练过程中,针对梯度下降问题补充一个梯度上升。  不太懂,待搜集。

 

5.PGN网络:pointer-generation network

论文:Get To The Point- Summarization with Pointer-Generator Networks(1)

5.1 作用:

通过复制输入文本,解决了文本摘要中的oov问题和word_repetition问题。

引入Pgen参数作为软开关,选择最终的序列是copy attention-sequences多一点还是copy Decoder-output多一点。通过引入coverage参数,记录之前注意的信息,解决生成结果的重复

5.2 PGN网络的优点:

1.很容易的赋值输入的文本内容,可以通过Pgen调节更关注生成还是原始的词。(是通过确定输入序列的位置来找到输入的那个词,复制为当前oov的词

2.可以从输入的文本内容中赋值oov词汇,这是最大的优点。因此可以采用更小的词汇表vocabulary减少计算量和存储空间

                

6.优化器的选择

Adam能够更容易的跳出局部最优解,更快地寻找全局最优解

SGD+momentum 能够做微调,寻找更精确的解

7.coverage:

pgen网络提出的,在生成的过程中,能够记录生成词注意力,避免重复注意在一个词上,导致生成重复

8.n-gram

pgen网络提出的,在生成过程中制定的一些规则,比如生成结构如aab的形式式不可以的,就直接去掉。n-gram的规则是只有连续的n个字才能被选择

9.beam_search

相对于greedy_search,在每一步取概率最高的k个词,然后输入下一步,两步生成结果就有k*n个结果,再选其中的k个,作为下一步的输入,一次类推,获取最终最优的生成结果。

10.top-K采样、 top-P采样、 核采样

??????????

11.BERT模型Fine-Turn阶段策略:

11.1对抗训练:??????????????

11.2多任务学习:???????????????

12.BERT模型优化策略

12.1 剪枝:??????????

12.2 量化:?????????

12.3 知识蒸馏:??????????

13.BERTSUM:

在BERT模型的基础上修改了输入embedding,并且添加了一个输出二分类器,选择句子是否作为摘要句。用在抽取式文本摘要中

14.MATCHSUM

用bertsum生成文章的摘要候选句,在组合得到候选摘要,再利用孪生网络计算候选摘要和文本之间的相似度.本文提出了 pearl-summary问题。本文认为,好的摘要应该和原文更接近。

15.孪生网络

两个网络参数共享,通过两个不同的输入得到两个结果,对两个结果特征进行计算。可以用于文本匹配,文本相似度计算

16.PRESUM:

???????

17..SBERT:

sentence-BERT:只是用bert模型做文本匹配,比如从一万句子中国找出最想四的一对句子,计算量非常大。但是结合了孪生网络中之后,计算时间显著减少。本文用了孪生网络和三联体网络的bert模型,利用孪生网络简洁的设计和平稳高效训练,做了文本匹配任务。

孪生网络的两条枝上用了bert提取文本特征,然后将bert输出的字向量用池化层进一步提取压缩。得到的两条枝上的向量有三种处理方法,concatination、直接计算余弦相似度、如果是输入的三元组重新做了个loss

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/547163
推荐阅读
相关标签
  

闽ICP备14008679号