赞
踩
(1)数据标注
数据标注平台doccano:https://github.com/doccano/doccano
安装doccano:
pip install doccano
完成安装后,运行:
- doccano init
- doccano createuser --username admin --password pass
- doccano webserver --port 8000
在另一个终端,运行:
doccano task
然后打开网址 http://127.0.0.1:8000/.
(2)训练数据生成
将标注好的文件doccano_ext.jsonl直接下载并放入./data目录。执行以下脚本进行数据转换,执行后会在./data目录下生成训练/验证/测试集文件。
python doccano.py --doccano_file ./data/doccano_ext.jsonl --task_type ext --save_dir ./data --splits 0.8 0.2 0 --schema_lang ch
(3)开始训练
选择合适的模型:
参考训练参数:
- export finetuned_model=./checkpoint/model_best
-
- python finetune.py \
- --device gpu \
- --logging_steps 10 \
- --save_steps 50 \
- --eval_steps 50 \
- --seed 42 \
- --model_name_or_path uie-medium\
- --output_dir $finetuned_model \
- --train_path data/train.txt \
- --dev_path data/dev.txt \
- --max_seq_length 1500 \
- --per_device_eval_batch_size 16 \
- --per_device_train_batch_size 16 \
- --num_train_epochs 20 \
- --learning_rate 1e-5 \
- --label_names "start_positions" "end_positions" \
- --do_train \
- --do_eval \
- --do_export \
- --export_model_dir $finetuned_model \
- --overwrite_output_dir \
- --disable_tqdm True \
- --metric_for_best_model eval_f1 \
- --load_best_model_at_end True \
- --save_total_limit 1
带注释版:
- export finetuned_model=./checkpoint/model_best
-
- python finetune.py \
- --device gpu \
- --logging_steps 10 \ # 训练过程中日志打印的间隔 steps 数
- --save_steps 50 \
- --eval_steps 50 \
- --seed 42 \ # 全局随机种子,默认为 42。
- --model_name_or_path uie-medium\
- --output_dir $finetuned_model \
- --train_path data/train.txt \
- --dev_path data/dev.txt \
- --max_seq_length 1500 \
- --per_device_eval_batch_size 16 \
- --per_device_train_batch_size 16 \
- --num_train_epochs 20 \ #训练轮次,使用早停法时可以选择 100;默认为10。
- --learning_rate 1e-5 \ # 训练最大学习率,UIE 推荐设置为 1e-5;默认值为3e-5
- --label_names "start_positions" "end_positions" \
- --do_train \
- --do_eval \
- --do_export \
- --export_model_dir $finetuned_model \
- --overwrite_output_dir \
- --disable_tqdm True \ # 关闭tqdm
- --metric_for_best_model eval_f1 \
- --load_best_model_at_end True \
- --save_total_limit 1
去除换行版:
python finetune.py --device gpu --logging_steps 10 --save_steps 50 --eval_steps 50 --seed 42 --model_name_or_path uie-medium --output_dir $finetuned_model --train_path data/train.txt --dev_path data/dev.txt --max_seq_length 1500 --per_device_eval_batch_size 16 --per_device_train_batch_size 16 --num_train_epochs 20 --learning_rate 1e-5 --label_names "start_positions" "end_positions" --do_train --do_eval --do_export --export_model_dir $finetuned_model --overwrite_output_dir --disable_tqdm True --metric_for_best_model eval_f1 --load_best_model_at_end True --save_total_limit 1
运行结果:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。