gpt4 book ai didi

python - 对于语言模型微调(BERT 通过 Huggingface Transformers),输入文件的格式究竟应该如何设置?

转载 作者:行者123 更新时间:2023-12-01 02:44:34 31 4
gpt4 key购买 nike

我想雇用 examples/run_lm_finetuning.py来自 Huggingface Transformers repository在预训练的 Bert 模型上。然而,根据文档,语料库文件的结构并不明显(除了引用 Wiki-2 数据集)。我试过了

  • 每行一个文档(多个句子)
  • 每行一句。文档由一个空行分隔(这是我在一些较旧的 pytorch-transformers 文档中找到的)

  • 通过查看 examples/run_lm_finetuning.py的代码下一句预测目标的序列对是如何形成的并不直接明显。请问 --line-by-line选项帮助在这里?如果有人能给我一些提示文本语料库文件应该是什么样子,我将不胜感激。

    非常感谢和欢呼,

    脑洞

    最佳答案

    首先,我强烈建议在 Huggingface 库中将此作为一个问题打开,因为他们可能最有兴趣回答这个问题,并可能将其视为他们应该更新/澄清他们的文档的标志。
    但是为了回答你的问题,这个特定的示例脚本似乎基本上返回了 LineByLineTextDataset (如果您将 --line_by_line 传递给训练),否则为 TextDataset ,见 ll。 144-149 中 the script (稍微格式化以获得更好的可见性):

    def load_and_cache_examples(args, tokenizer, evaluate=False):
    file_path = args.eval_data_file if evaluate else args.train_data_file
    if args.line_by_line:
    return LineByLineTextDataset(tokenizer, args,
    file_path=file_path, block_size=args.block_size)
    else:
    return TextDataset(tokenizer, args,
    file_path=file_path, block_size=args.block_size)
    A TextDataset简单地将文本拆分为特定( token )长度的连续“块”,例如,它会每 512 个 token (默认值)剪切您的文本。
    Next Sentence Prediction 任务仅针对默认的 BERT 模型实现,如果我没记错的话(似乎与我在 the documentation 中发现的一致),并且不幸的是不是这个特定微调脚本的一部分。 lm_finetuning 中没有使用任何 BERT 模型脚本利用​​该特定任务,据我所知。

    关于python - 对于语言模型微调(BERT 通过 Huggingface Transformers),输入文件的格式究竟应该如何设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60001698/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com