首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在opennmt变压器中使用自定义令牌程序?

如何在opennmt变压器中使用自定义令牌程序?
EN

Stack Overflow用户
提问于 2022-02-10 08:36:12
回答 1查看 247关注 0票数 0

我在找转换器用opennmt-py来翻译。

我已经用警句训练了记号器。

但我不知道如何在培训配置yaml中使用我的自定义标记程序。

我指的是opennmt (https://opennmt.net/OpenNMT-py/examples/Translation.html)的网站。

这是我的代码和错误。

代码语言:javascript
复制
# original_ko_en.yaml
## Where is the vocab(s)
src_vocab: /workspace/tokenizer/t_50k.vocab
tgt_vocab: /workspace/tokenizer/t_50k.vocab

# Corpus opts:
data:
   corpus_1:
       path_src: /storage/genericdata_basemodel/train.ko
       path_tgt: /storage/genericdata_basemodel/train.en
       transforms: [sentencepiece]
       weight: 1
   valid:
       path_src: /storage/genericdata_basemodel/valid.ko
       path_tgt: /storage/genericdata_basemodel/valid.en
       transforms: [sentencepiece]

#### Subword
src_subword_model: /workspace/tokenizer/t_50k.model
tgt_subword_model: /workspace/tokenizer/t_50k.model
src_subword_nbest: 1
src_subword_alpha: 0.0
tgt_subword_nbest: 1
tgt_subword_alpha: 0.0

# filter
# src_seq_length: 200
# tgt_seq_length: 200

# silently ignore empty lines in the data
skip_empty_level: silent

# Train on a single GPU
world_size: 1
gpu_ranks: [0]

# General opts
save_model: /storage/models/opennmt_v1/opennmt
keep_checkpoint: 100
save_checkpoint_steps: 10000
average_decay: 0.0005
seed: 1234
train_steps: 500000
valid_steps: 20000
warmup_steps: 8000
report_every: 1000

# Model
decoder_type: transformer
encoder_type: transformer
layers: 6
heads: 8
word_vec_size: 512
rnn_size: 512
transformer_ff: 2048
dropout: 0.1
label_smoothing: 0.1

# Optimization
optim: adam
adam_beta1: 0.9
adam_beta2: 0.998
decay_method: noam
learning_rate: 2.0
max_grad_norm: 0.0
normalization: tokens
param_init: 0.0
param_init_glorot: 'true'
position_encoding: 'true'

# Batching
batch_size: 4096
batch_type: tokens
accum_count: 8
max_generator_batches: 2

# Visualization
tensorboard: True
tensorboard_log_dir: /workspace/runs/onmt1

当我键入< onmt_train -config xxx.yaml >时

所以,问题有两个。

  1. ,我的句子标记器嵌入是浮动。如何解决int错误?当训练意外停止时,
  2. 或者我想训练更多的model.pt,从model.pt ?

开始训练的命令是什么?

我期待着任何意见。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-11 09:07:21

我知道答案了。

我们可以在onmt.

  • train_from参数中使用_
  1. /spm_to_vocab。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71062002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档