熵,交叉熵,NLL_loss,CrossEntropy_loss
信息量,信息熵 首先给出定义,信息量是对信息的度量。当我们观察到一个事件或者说一个变量的一个具体值后,我们接受到了多少的信息,这个程度用信息量来衡量。 那信息量和什么有关呢,一般的想法是和事件的概率挂钩,一个事件发生的概率越小那么这个事件发生所产生的信息量越大。因此一个具体事件的信息量应该是随着其发生概率而递减的,且不能为负。此外,如果我们有俩个不相关的事件 x 和 y,那么我们观察到的俩个事件同时发生时获得的信息应 该等于观察到的事件各自发生时获得的信息之和,即:
H(x,y)=H(x)+H(y) 由于 x,y 是俩个不相关的事件,那么满足,
p(x,y)=p(x)*p(y) 由上可以看出来,h(x)和p(x)的对数有关,可以设成对数形式,且信息量要大于等于0,因此有信息量的定义:
H(x)=-log_2{p(x)} 信息量度量的是一个具体事件发生了所带来的信息,而熵则是在结果出来之前对可能产生的信息量的期望——考虑该随机变量的所有可能取值,即所有可能发生事件所带来的信息量的 ...
Multilingual Neural Machine Translation with Deep Encoder and Multiple Shallow Decoders
提升一对多翻译速度和准确性的方法:增多decoder个数并减少decoder端层数,再将相近的语言都对应一个decoder。
Improving Zero-Shot Translation by Disentangling Positional Information
产生语言无关的表示可能有利于翻译,作者提出减弱encoder输入输出的位置关联(语序问题)的方法。
Improving Massively Multilingual Neural Machine Translation and Zero-Shot Translation
zero-shot的off-target问题,可以通过回译扩展数据的方法大大改进。
Language Tags Matter for Zero-Shot Neural Machine Translation
language token哪种比较好,当然是T-ENC.
Alternative Input Signals Ease Transfer in Multilingual Machine Translation
多语言之间的重叠信息太少怎么办?——尝试将文本句子转化为其他信号,多种信号融合。
Pre-Trained Multilingual Sequence-to-Sequence Models: A Hope for Low-Resource Language Translation?
能不能用PMSS模型去解决低资源语言翻译问题?————不能,把你的数据集改进了再说
Breaking Down Multilingual Machine Translation
多语言翻译不同方向对模型中不同组成的影响如何?模型中各部分的影响是怎样的?
wandb在fairseq的使用
注册wandb账号首先到wandb官网注册一个账号,可以用github账号注册。,可以提前创建个project,或者之后使用fairseq命令行创建新project。
在命令行中创建wandb项目在之前创建账号时会自动产生一个API key,需要记住这个API key,如果没找到也可以在个人设置中找到。和之前一篇fairseq文章相同,在训练时多增加一个命令行参数--wandb-project t,其中t是wandb project名,如果不存在自动新建。第一次启动wandb会要求输入API key,将其复制输入即可。打开wandb的个人project即可看到相应的图表记录。具体每个图表信息或者添加还需要进一步了解
图表对比主要目的:以train/loss为例对比不同参数或者模型下的loss曲线变化。随便打开一个project的train/loss图表,点击右上角的三个点,选择Add to report。在这个report中就可以添加想要对比的曲线,曲线可以是正在运行的模型,也可以是已经运行完的模型
vscode+win10远程调试linux服务器python项目
vscode远程连接linux服务器这部分较为简单,大部分网上都有教程,推荐看这个。连接上后vscode左下角有SSH连接标志。
接下来就可以打开相应的python项目了。
命令行参数设置以fair-generate为例,命令行如下:1234fairseq-generate data-bin/iwslt14.tokenized.de-en \ --path checkpoints/checkpoint_best.pt \ --batch-size 128 --beam 5 --remove-bpe找到该文件夹下的.vscode文件,打开其中的launch.json。在vscode中的launch.json文件中添加args参数,具体如下图所示。1234567891011121314151617{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 "version&qu ...