def lm_hparams params = tfcontribtrainingHParams num_heads = 8 num_blocks = 6 # vocab input_vocab_size = 50 label_vocab_size = 50 # embedding size m
每个参数的含义和作用。
def lm_hparams():
# 定义一个超参数对象
params = tf.contrib.training.HParams(
# transformer模型中的头数
num_heads = 8,
# transformer模型中的block数
num_blocks = 6,
# 输入单词的词汇表大小
input_vocab_size = 50,
# 输出单词的词汇表大小
label_vocab_size = 50,
# 输入序列最大长度
max_length = 100,
# 隐藏单元的维度
hidden_units = 512,
# dropout的概率
dropout_rate = 0.2,
# 学习率
lr = 0.0003,
# 是否在训练中
is_training = True)
return params
注释已添加在代码中,其中每个参数的含义和作用分别是:
- num_heads:Transformer模型中的头数,即多头自注意力机制中的注意力头数。
- num_blocks:Transformer模型中的块数,即由多个相同的Transformer Block组成的整个模型。
- input_vocab_size:输入单词的词汇表大小,即输入序列中的单词数。
- label_vocab_size:输出单词的词汇表大小,即输出序列中的单词数。
- max_length:输入序列的最大长度。
- hidden_units:Transformer模型中隐藏单元的维度,也是模型中每个全连接层的输出维度。
- dropout_rate:dropout的概率,用于防止过拟合。
- lr:学习率,用于控制参数更新的步长。
- is_training:模型当前是否处于训练状态
原文地址: http://www.cveoy.top/t/topic/cVSI 著作权归作者所有。请勿转载和采集!