论文辅助笔记:t2vec 模型部分

1 t2vec.py 函数

命令行参数

data 训练、测试数据路径
checkpoint 保存的检查点路径
prefix trjfile的前缀
pretrained_embedding 预训练的词(或称为单元)嵌入的路径 。默认值是None
num_layers RNN单元中的层数。默认值是3
bidirectional 在编码器中是否使用双向rnn。默认值是True
hidden_size RNN单元中的隐藏状态大小。默认值是256。
embedding_size 词(或称为单元)嵌入的大小。默认值是256。
dropout dropout的概率。默认值是0.2
max_grad_norm 最大梯度范数。默认值是5.0。
learning_rate 学习率。默认值是0.001
batch 批处理大小。默认值是128
generator_batch 每次生成的最大词数。数值越高,需要的内存越多。默认值是32。
t2vec_batch 每次在t2vec中编码的最大轨迹数。默认值是256。
start_iteration 开始的迭代次数。默认值是0。
epochs 训练的周期数。默认值是15。
print_freq 打印频率。默认值是50。
save_freq: 保存频率。默认值是1000。
cuda 是否使用GPU来训练模型。默认值是True
use_discriminative 如果给定此参数,将使用判别损失。
discriminative_w 判别损失的权重。默认值是0.1
criterion_name 使用的损失函数名称。可以是NLL(负对数似然)或KLDIV(KL 散度)。默认值是NLL
knearestvocabs KLDIVLoss中使用的k最近的单元和距离的文件,由预处理生成,如果使用KLDIVLoss则必需。
dist_decay_speed 在dist2weight中距离衰减的速度。数值越小,远离的单元的权重越高。默认值是0.8。
max_num_line 默认值是20000000
max_length 目标序列的最大长度。默认值是200
mode 运行模式(0: 训练,1:评估,2:t2vec)。默认值是0
vocab_size 词汇表大小。默认值是0
bucketsize

训练时的桶大小。默认值是一系列的元组

  • 桶是一种策略,用于在序列长度可变的情况下处理数据。
  • 例如,假设我们有不同长度的句子,我们可能不希望为每个句子单独创建一个批处理,因为这会非常低效。
  • 桶策略是将句子放入一个接近它们长度的桶中,以尽量减少填充。 

2 train t2vec (mode 0)

几个注意事项:

numpy 版本不能过高 1.23以下

原github给的vocab_size有点问题,调整到20000就好了

论文辅助笔记:t2vec 模型部分_第1张图片

论文辅助笔记:t2vec 模型部分_第2张图片

论文辅助笔记:t2vec 模型部分_第3张图片

3 evaluate mode 1

论文辅助笔记:t2vec 模型部分_第4张图片

你可能感兴趣的:(笔记)