恒源云3090跑NLP预训练模型ELECTRA实录
Posted AI酱油君
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了恒源云3090跑NLP预训练模型ELECTRA实录相关的知识,希望对你有一定的参考价值。
文章来源 | 恒源云社区(专注人工智能/深度学习GPU云服务器免费租用平台,官方体验网址:https://gpushare.com)
原文地址 | 哪个男孩不想拥有自己的预训练模型(留下贫穷的眼泪) 作者 | junyu
本人使用RTX3090在openwebtext数据集上添加rotary-position-embedding,训练electra-small模型,由于openwebtext文件太大,故本教程提供本人处理好的数据集。
1、环境选择
- pytorch 1.8.1
- python 3.8
- cuda 11.1
2、准备openwebtext数据集
# 切换路径
cd /hy-tmp
# 登录oss
oss login
# 从公共数据集路径下载处理好的openwebtext.tar.gz压缩包
oss cp -public oss://junyu-dataset/openwebtext.tar.gz /hy-tmp
# 在当前目录解压文件
tar -zxvf openwebtext.tar.gz
3、下载electra预训练代码并安装依赖环境
# 切换路径
cd /hy-tmp
# 代码已经上传到github
git clone https://github.com/JunnYu/hy_tutorial.git
# 如果下载失败请使用镜像地址git clone https://hub.fastgit.org/JunnYu/hy_tutorial.git
# 切换路径
cd hy_tutorial
# 解压缩文件
unzip electra_small_pretrain_pytorch.zip
# 切换路径
cd electra_small_pretrain_pytorch
# 安装所需的python依赖包
pip install -r requirements.txt
4、注册wandb账号
(1)打开 https://wandb.ai/site
(2)点击头像下的Settings,寻找api key
下拉到api keys,如果没有就New key。复制该api key
(3)登录
# 登录wandb
wandb login
# 复制进去api key
5、后台运行预训练程序
# 切换路径,确保在这个路径
cd /hy-tmp/hy_tutorial/electra_small_pretrain_pytorch
# 后台运行程序
nohup python pretrain.py >> electra_small_pretrain.log 2>&1 &
# 查看训练日志
tail -f electra_small_pretrain.log
6、终止预训练程序
# 查看进程
ps -aux
# 终止进程
kill 2983
7、等待程序运行完毕(差不多需要55h)
# 同步训练损失等数据到wandb
wandb sync wandb/latest-run
8、复现结果(DEV DATASET)
Model | CoLA | SST | MRPC | STS | QQP | MNLI | QNLI | RTE | Avg. |
---|---|---|---|---|---|---|---|---|---|
ELECTRA-Small-OWT(original) | 56.8 | 88.3 | 87.4 | 86.8 | 88.3 | 78.9 | 87.9 | 68.5 | 80.36 |
ELECTRA-RoFormer-Small-OWT (this) | 55.76 | 90.45 | 87.3 | 86.64 | 89.61 | 81.17 | 88.85 | 62.71 | 80.31 |
9、 训练细节
- 数据集 openwebtext
- 训练batch_size 256
- 学习率lr 5e-4
- 最大句子长度max_seqlen 128
- 训练total step 50W
- GPU RTX3090
- 训练时间总共耗费55h
10、ROFORMER_ELECTRA 的 WANDB日志
https://huggingface.co/junnyu/electra_small_discriminator
https://huggingface.co/junnyu/roformer_small_discriminator
Reference
以上是关于恒源云3090跑NLP预训练模型ELECTRA实录的主要内容,如果未能解决你的问题,请参考以下文章