1

恢复GPT2微调,从run_clm.py

GPT2 huggingface是否 有一个参数可以从保存的检查点恢复训练,而不是从头开始训练?假设 python 笔记本在训练时崩溃,检查点将被保存,但是当我再次训练模型时,它仍然从头开始训练。

来源:这里

微调代码:

!python3 run_clm.py \
    --train_file source.txt \
    --do_train \
    --output_dir gpt-finetuned \
    --overwrite_output_dir \
    --per_device_train_batch_size 2 \
    --model_name_or_path=gpt2 \
    --save_steps 100 \
    --num_train_epochs=1 \
    --block_size=200 \
    --tokenizer_name=gpt2

从上面的代码来看,run_clm.py是huggingface提供的一个脚本,用于微调gpt2以使用自定义数据集进行训练

4

1 回答 1

4

要从检查点恢复训练,请使用--model_name_or_path参数。因此,与其提供默认值,不如将其gpt2定向到最新的检查点文件夹。

所以你的命令变成:

!python3 run_clm.py \
    --train_file source.txt \
    --do_train \
    --output_dir gpt-finetuned \
    --overwrite_output_dir \
    --per_device_train_batch_size 2 \
    --model_name_or_path=/content/models/checkpoint-5000 \
    --save_steps 100 \
    --num_train_epochs=1 \
    --block_size=200 \
    --tokenizer_name=gpt2
于 2021-01-04T12:55:30.517 回答