位置: IT常识 - 正文

训练自己的GPT2-Chinese模型(训练自己的GPT)

编辑:rootadmin
训练自己的GPT2-Chinese模型 文章目录效果抢先看准备工作环境搭建创建虚拟环境训练&预测项目结构模型预测续写训练模型遇到的问题及解决办法显存不足生成的内容一样文末效果抢先看

推荐整理分享训练自己的GPT2-Chinese模型(训练自己的GPT),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:训练自己的GPT模型,训练自己的GPT模型,训练自己的gpt 问答库,训练自己的大语言模型,训练自己的GPT模型,训练自己的GPT,训练自己的gpt模型有什么用,训练自己的gpt模型有什么用,内容如对您有帮助,希望把文章链接给更多的朋友!

准备工作

从GitHub上拉去项目到本地,准备已训练好的模型百度网盘:提取码【9dvu】。

gpt2对联训练模型gpt2古诗词训练模型gpt2通用中文模型gpt2通用中文小模型gpt2文学散文训练模型gpt2中文歌词模型环境搭建配置好GPU的pytorch环境 a. 安装Anaconda环境 b. NIVIDA配置流程 桌面右键鼠标,找到NVIDIA控制面板,在左边找到开发者下管理GPU性能计数器,导航栏点击桌面选择启用开发者设置,弹出的系统信息中找到组件,找到产品名前缀为NVIDIA CUDA的那一条,记住其后面的版本号。 c. 进入NVIDIA官网下载CUDA,找到上一步记录的NVIDIA CUDA后的版本号相对应的链接。如版本信息为11.4就选择11.4 d. 下载完点击安装就行了 e. 安装cuDNN,选择相应的版本。这个地方要登录账号,没有账号可以注册,也可以选择QQ或微信登录,选择刚才的CUDA版本,下载压缩包 f. 下载完成后解压缩,并修改根目录名为cudnn g. 将整个文件复制到xxx\NVIDIA GPU Computing Toolkit\CUDA\v11.4目录下 h. 设置变量环境,添加两个环境变量路径,根据自己的实际情况目录修改

pytorch配置 a. 去pytorch官网找到相应的gpu版本或cpu版本,找到后安装命令会出现在command栏 找不到自己的版本点击previous version链接 b. 使用管理员身份执行cmd,否则会安装失败

conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch

安装完成之后执行命令conda list查看是否安装成功

训练自己的GPT2-Chinese模型(训练自己的GPT)

打开终端输入python,使用以下代码查看torch显示GPU不可用状态

>>>import torch>>>torch.cuda.is_available()False

c. 标准查看torch版本

>>>import torch>>>torch.__version__1.10.2

pytorch轮子配置 a. whl轮子配置,根据CUDA版本选择相应的版本。其中cu表示GPU版本,cpu表示CPU版本 b. 下载完成之后本地使用pip install 安装

pip install .\torchvision-0.13.1+cpu-cp39-cp39-win_amd64.whlpip install .\torch-1.10.2+cu113-cp39-cp39-win_amd64.whl

c. 安装完成之后验证torch

>>>import torch>>>torch.cuda.is_available()True创建虚拟环境为了能够顺利使用环境,推荐使用python3.7.1版本conda create -n venv_name python=3.7.1激活 虚拟环境conda activate venv_namepip安装所需库pip install transformers==2.1.1pip install tensorflow==2.0.0 pip install numpypip install tqdmpip install sklearnpip install keraspip install tb-nightlypip install futurepip install thulacpip install setuptools==59.5.0pip install torch==1.10.2+cu113 torchvision==0.3.0 --extra-index-url 训练&预测项目结构config: 存放模型的配置文件data: 存放训练数据model: 存放模型cache: 用于模型训练之前的数据预处理sample: 用于存放生成样本的目录generate.py: 生成代码train.py: 训练多文本启动代码train_single.py: 训练但文本启动代码tokenizations: 用于文本数据转换tokenizations的脚本模型预测续写

参数说明:

length: 生成的最长长度prefix: 文章开头fast_pattern: 快速生成模式save_samples: 保存生成文本结果的位置temperature: 越小越遵循训练样本,续写的内容的思维越发散# 通用模型预测文本python ./generate.py --length=100 --nsamples=4 --prefix=天津是一座美丽的城市。 --fast_pattern --save_samples ----model_path=model/use_model --model_config=config/model_config_small.json --topk=8 --temperature=0.8 --batch_size=2# 制定模型输出python ./generate.py --length=300 --nsamples=4 --prefix=萧炎,斗之力。 --fast_pattern --save_samples --model_path=model/model_epoch18 --model_config=model/model_epoch18/config.json --topk=8 --temperature=1 --batch_size=1

其他参数参考:

训练模型

将训练语料以train.json的格式放入data目录中

如果文件格式为train.json格式,那么将train.py文件中的读取方式为:lines = json.load(f) 如果文件格式为train.txt格式,即数据格式为[”正文1“, ”正文2“, ”正文3“],那么将train.py文件中的读取方式为:lines = f.readlines()

运行train.py文件并设定--raw参数,会自动预处理数据,预处理完成之后,会自动执行训练。

python train.py --raw遇到的问题及解决办法显存不足语料太大:在config文件中选择小一点的json文件batch_size过大:默认训练是8,可以改成4或者6尝试生成的内容一样修改generate.py中的batch_size=1文末

此训练结果生成比较简单的文章还可以,但是需要达到理想的效果,还需要更大的数据体系和语料以及长期的模型训练,基于原有的算法二次开发,门槛也比较高,而且这种业务比较吃硬件资源。

本文链接地址:https://www.jiuchutong.com/zhishi/298719.html 转载请保留说明!

上一篇:路由懒加载及实现方式(vue-router)(路由加载的几种方式)

下一篇:2022前端面经---改变this指向问题(call、apply、bind)(2021年前端面试)

  • 小米10s是否防水(小米10s防水怎么样)

    小米10s是否防水(小米10s防水怎么样)

  • 微信怎么取消黑名单的人(微信怎么取消黑名单上的人)

    微信怎么取消黑名单的人(微信怎么取消黑名单上的人)

  • 有线耳机连接不上手机(有线耳机连接不稳定怎么办)

    有线耳机连接不上手机(有线耳机连接不稳定怎么办)

  • 拼多多拒收钱怎么退回呢(拼多多拒收怎么说)

    拼多多拒收钱怎么退回呢(拼多多拒收怎么说)

  • 抖音公司名称叫什么(抖音公司取名字有哪些)

    抖音公司名称叫什么(抖音公司取名字有哪些)

  • 腾讯会议一屏显示多少人(腾讯会议一屏显示9人怎么改手机)

    腾讯会议一屏显示多少人(腾讯会议一屏显示9人怎么改手机)

  • airpods可以连windows系统的电脑吗(airPods可以连上别的牌子吗)

    airpods可以连windows系统的电脑吗(airPods可以连上别的牌子吗)

  • 苹果11怎么消除用过的应用(苹果11怎么消除按键音)

    苹果11怎么消除用过的应用(苹果11怎么消除按键音)

  • 开淘宝直播卖货是不是要有淘宝店铺(开淘宝直播卖货需要给平台多少钱)

    开淘宝直播卖货是不是要有淘宝店铺(开淘宝直播卖货需要给平台多少钱)

  • 微信修改实名认证后还是原微信号吗(微信修改实名认证没有银行卡怎么办)

    微信修改实名认证后还是原微信号吗(微信修改实名认证没有银行卡怎么办)

  • vivo怎么开启语音唤醒(vivo手机语音功能怎么设置)

    vivo怎么开启语音唤醒(vivo手机语音功能怎么设置)

  • 快门的定义是什么(何为快门)

    快门的定义是什么(何为快门)

  • 荣耀20pro支持防水吗(荣耀20pro支持防抖吗)

    荣耀20pro支持防水吗(荣耀20pro支持防抖吗)

  • 剪映多出来的音乐怎么办(剪映多出来的音频怎么删)

    剪映多出来的音乐怎么办(剪映多出来的音频怎么删)

  • 手环对身体有没有伤害(手环对身体有没有影响)

    手环对身体有没有伤害(手环对身体有没有影响)

  • iphone图片格式怎么改(iphone图片的格式)

    iphone图片格式怎么改(iphone图片的格式)

  • 苹果8支持5g网络吗(苹果支持5g网络的手机有哪些)

    苹果8支持5g网络吗(苹果支持5g网络的手机有哪些)

  • 虎扑如何删除自己评论(虎扑如何删除自己的帖子)

    虎扑如何删除自己评论(虎扑如何删除自己的帖子)

  • 华为p30pro什么时候上市的(华为p30pro什么时候停产的)

    华为p30pro什么时候上市的(华为p30pro什么时候停产的)

  • 4g手机5g卡能用5g网络吗(4g卡用5g手机可以用5g网络吗)

    4g手机5g卡能用5g网络吗(4g卡用5g手机可以用5g网络吗)

  • 手机号能查到姓名吗(手机号能查到姓名和住址吗)

    手机号能查到姓名吗(手机号能查到姓名和住址吗)

  • 怎么增加c盘空间(怎么增加c盘空间容量)

    怎么增加c盘空间(怎么增加c盘空间容量)

  • (全网最详细!!)npm:无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称(全网最详细的破解卡密软件教程[2021首发])

    (全网最详细!!)npm:无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称(全网最详细的破解卡密软件教程[2021首发])

  • 税务局退回个税手续费会计分录
  • 税务师报名入口官网2022
  • 未开票收入缴纳增值税怎么冲减补开发票
  • 应付票据和应付债券
  • 修缮服务开票项目一览表
  • 计提个人社会保险费
  • 票据和结算凭证上的签章
  • 接受实物投资纳印花税怎么缴纳?
  • 期初应收帐款
  • 厂房面积测绘收费标准
  • 公司和员工之间
  • 无形资产土地需要折旧吗
  • 企业录用失业人员有税收优惠吗
  • 技术研发阶段的费用如何做分录
  • 自产自销农产品企业所得税
  • 税务局买税控盘需要的资料
  • 车辆租赁的增值税率
  • 用户风险是什么意思
  • 私立医院适用什么法律
  • 增值税专票怎么认证
  • 承兑汇票怎么换算
  • 预收房款属于什么科目
  • 发票代码会有一样的吗
  • 安装服务需要预缴税款吗
  • 企业向个人赠送礼品
  • 把快速打开
  • 销售商品包装材料怎么做
  • 汇算清缴是哪个报表
  • 第一启动盘设置为u盘
  • mac教程视频
  • 在承租的土地上建房
  • PHP:session_register_shutdown()的用法_Session函数
  • 现金结算的范围及内部控制
  • 小规模纳税人缴税标准是什么
  • 原材料运费可以计入制造费用吗
  • 哪些费用可以在开办费中列支
  • 蒙特勒和日内瓦的关系
  • 大雾笼罩的早晨
  • 安装windows(install windows)
  • thinkPHP5 tablib标签库自定义方法详解
  • yolov5m
  • vue-router query
  • php网站安全防护
  • 支票的提示付款期限为自出票日期
  • 实收资本注入怎么操作
  • 未认证发票如何导出
  • 行政事业单位资产管理办法
  • java中同步
  • 数据库 sql优化
  • 存货出入库需要什么凭证
  • 一次性用品可以做什么东西
  • 合伙企业要不要每月做账?报税是不是与一般的有限公司一样,每月申报纳税吗?
  • sql2000日志清理
  • 政府补助会计处理方法由总额法变为净额法
  • 购买机器的运费计入什么科目
  • 收到工程款怎么入账
  • 银行对公账户季度
  • 公司里的废品的处理一般是谁负责
  • 银行对账单上借贷方什么意思
  • 固定资产帐怎么做
  • 建账的基本要求
  • mysql数据源
  • mysql服务无效
  • centos 安装选择
  • u盘怎么安装驱动程序
  • win10edge浏览器如何切换到ie
  • win10预览版和正式版区别
  • linux安装virsh
  • Win8出现奇怪爆音的完美解决方法
  • 好看的css样式代码
  • cocos2dx 3.17
  • javascript深入理解
  • python发送mq消息
  • unity游戏开发的技术路线有哪些
  • javascript含义
  • node怎么实现多线程
  • python中按下某个按键
  • unity3d人物模型
  • android实现选择题模式
  • 弥补亏损怎么算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设