分类 二、深度学习 下的文章

Three Policies
Your assistant uses policies to decide which action to take at each step in a conversation. There are three different policies that the default config.yml file starts out with:

1.The RulePolicy handles conversations that match predefined rule patterns. It makes predictions based on any rules you have in your rules.yml file.
2.The MemoizationPolicy checks if the current conversation matches any of the stories in your training data. If so, it will predict the next action from the matching stories.
3.The TEDPolicy uses machine learning to predict the next best action. It is explained in full detail in our paper and on our YouTube channel.

FLAT主要创新点在于:
(1)基于Transformer设计了一种巧妙position encoding来融合Lattice结构,可以无损的引入词汇信息。
(2)基于Transformer融合了词汇信息的动态结构,支持并行化计算,可以大幅提升推断速度。

一、背景

ACL2020中一篇来自复旦大学邱锡鹏老师团队的 FLAT: Chinese NER Using Flat-Lattice Transformer 刷新了中文NER任务的新SOTA。
论文链接:https://arxiv.org/pdf/2004.11795.pdf

开源代码:https://github.com/LeeSureman/Flat-Lattice-Transformer

二、

r-drop本质上是一种有监督的数据增强方式
SimCse本质上是一种无监督的数据增强方式
对比学习标准流程:对比学习的标准流程是同一个样本通过不同的数据扩增手段得到的结果视为正样本对,而 batch 内的所有其他样本视为负样本,然后就是通过 loss 来缩小正样本的距离、拉大负样本的距离了。

一、相关背景

关注 NLP 新进展的读者,想必对2021年4月份发布的 SimCSE印象颇深,它通过简单的“Dropout 两次”来构造正样本进行对比学习,达到了无监督语义相似度任务的全面 SOTA。无独有偶,最近2021年6月份的论文《R-Drop: Regularized Dropout for Neural Networks》提出了 R-Drop,它将“Dropout两次”的思想用到了有监督任务中,每个实验结果几乎都取得了明显的提升。此外,笔者在自己的实验还发现,它在半监督任务上也能有不俗的表现
论文标题:R-Drop: Regularized Dropout for Neural Networks

论文链接:https://arxiv.org/abs/2106.14448

代码链接:https://github.com/dropreg/R-Drop

所以难度主要集中在数据扩增手段上。对于 NLP 来说,我们很难人工构建保证语义不变的数据扩增,所以 SimCSE 干脆不人工进行数据扩增,而是通过“Dropout 两次”的方式来得到同一个输入的不同特征向量,并将它们视为正样本对。奇怪的是,这个简单的“Dropout 两次”构造正样本,看上去是一种“无可奈何”的妥协选择,但消融实验却发现它几乎优于所有其他数据扩增方法,令人惊讶之余又让人感叹“大道至简”。

在实现上,SimCSE 也相当简单,所谓“Dropout 两次”,只需要将样本重复地输入到模型,然后计算相应的 loss 就行了,如上图所示。由于 Dropout 本身的随机性,每个样本的 Dropout 模式都是不一样的,所以只要单纯地重复样本,就可以实现“Dropout 两次”的效果。

二、算法结构

从结果上来看,SimCSE 就是希望 Dropout对模型结果不会有太大影响,也就是模型输出对 Dropout 是鲁棒的。所以很明显,“Dropout 两次”这种思想是可以推广到一般任务的,这就是 R-Drop(Regularized Dropout)。
未命名文件 (2).png

1.损失函数

损失函数由两部分组成:常规的交叉熵损失函数+KL散度约束的相对熵
cr.png
kls.png
zz.png

参考:
https://mp.weixin.qq.com/s/IvhGbFEMotpKJIUPExUklg

一、GPU驱动安装

1.查看驱动是否安装

用下面的指令,如果返回了显卡信息说明驱动已经安装:

nvidia-smi  

或者

sudo apt-get install mesa-utils  
glxinfo | grep rendering  

https://mirrors.aliyun.com/centos-vault/7.6.1810/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso?spm=a2c6h.25603864.0.0.365f12cfhbiLSE
参考:
1.驱动安装
https://www.jianshu.com/p/ee45d66e046c
2.cuda
https://blog.csdn.net/qq_29600137/article/details/122414416
https://blog.csdn.net/qq_43744723/article/details/119135242