使用Huggingface在矩池云快速加载预训练模型和数据集
作为NLP领域的著名框架,Huggingface(HF)为社区提供了众多好用的预训练模型和数据集。本文介绍了如何在矩池云使用Huggingface快速加载预训练模型和数据集。
1.环境
HF支持Pytorch,TensorFlow和Flax。您可以根据HF官方文档安装对应版本,也可以使用矩池云HuggingFace
镜像(基于Pytorch),快速启动。
如果使用其他镜像,你需要手动安装 transformers 和 datasets 两个包:
pip install transformers datasets
HF具体使用方式和代码请参考官方https://github.com/huggingface/transformers
2.预训练模型
2.1 预训练模型简介
HF里有非常多的预训练模型,支持不同软件版本,可用于Pipeline和模型微调。你可以选择从HF官方Model Hub下载预训练模型(可能耗时较长),另外矩池云提供了部分常用的预训练模型。访问路径:/public/model/nlp/
预训练模型名称(定时更新,也可以联系矩池云小助手补充):
模型名称 |
---|
albert-base-v2 |
albert-xxlarge-v2 |
bert-base-cased |
bert-base-chinese |
bert-base-uncased |
bert-large-uncased |
xlm-roberta-base |
chinese-bert-wwm-ext |
chinese-electra-180g-base-discriminator |
chinese-roberta-wwm-ext |
clip-vit-base-patch32 |
code_trans_t5_small_program_synthese_transfer_learning_finetune |
deberta-v3-base |
deberta-v3-large |
distilbart-cnn-12-6 |
distilbert-base-uncased-finetuned-sst-2-english |
distilgpt2 |
gpt2-chinese-cluecorpussmall |
gpt2 |
roberta-base |
t5-base |
xlm-roberta-base |
2.2 预训练模型使用方法
首先需要将自己需要使用的预训练模型zip文件解压到矩池云网盘或者机器中其他目录(存到网盘后下次可以直接使用),使用模型时填入本地存储路径即可调用。
以使用albert-base-v2
模型为例子:
- 解压
unzip /public/model/nlp/albert-base-v2.zip -d /mnt/
- 代码中使用
如果环境中没有transformers
包,可以先pip install transformers
安装。
from transformers import AutoModel
model = AutoModel.from_pretrained('/mnt/albert-base-v2')
# 注意 /mnt/albert-base-v2 是你解压后模型文件所在路径
3.数据集
3.1 数据集简介
数据集存放路径:/public/data/nlp
数据集名称(定时更新,也可联系矩池云小助手):
名称 | 描述 |
---|---|
dbpedia_14 | 基于DBpedia2014的14个不重叠的分类数据集,包含40,000训练样本和5,000测试样本。源自维基百科的语义词条 |
glue | 通用语言理解评估基准,面向9项任务的数据集,参考gluebenchmark |
newsgroup | 用于文本分类、文本挖据和信息检索研究的国际标准数据集之一。数据集收集了大约20,000左右的新闻组文档,均匀分为20个不同主题的新闻组集合 |
squad | 斯坦福问答数据集,一个阅读理解数据集 |
super_glue | 更新版的Glue数据集 |
wikitext | 英语词库数据是由Salesforce MetaMind 策划的包含1亿个词汇的大型语言建模语料库。这些词汇都是从维基百科一些经典文章中提取得到 |
yahooAnswers | 数据集源于 Yahoo!Answers Comprehensive Questions and Answers 1.0 的 10 个主要分类数据,每个类别分别包含 140000 个训练样本和 5000 个测试样本 |
yelp_review_full | 这个数据集是Yelp业务、评论和用户数据的一个子集。包含大量的评论、业务、用户、提示和签到数据 |
3.2 数据集使用方法
首先需要将自己需要使用的数据集zip文件解压到矩池云网盘或者机器中其他目录(存到网盘后下次可以直接使用),使用数据集时在代码抬头添加代码from datasets import load_from_disk
,并将代码中加载数据集函数load_dataset
更改为load_from_disk(数据集存放路径)
即可。部分数据集需指定Subset。
以使用dbpedia_14
数据集为例子:
- 解压,将数据集解压到网盘中(确保网盘空间足够)
unzip /public/data/nlp/dbpedia_14.zip -d /mnt/
- 代码中使用
如果环境中没有datasets
包,可以先pip install datasets
安装。
from datasets import load_from_disk
data = load_from_disk('/mnt/dbpedia_14')
# 注意 /mnt/dbpedia_14 是你解压后数据集文件所在路径
使用Huggingface在矩池云快速加载预训练模型和数据集的更多相关文章
- [Pytorch]Pytorch加载预训练模型(转)
转自:https://blog.csdn.net/Vivianyzw/article/details/81061765 东风的地方 1. 直接加载预训练模型 在训练的时候可能需要中断一下,然后继续训练 ...
- pytorch中修改后的模型如何加载预训练模型
问题描述 简单来说,比如你要加载一个vgg16模型,但是你自己需要的网络结构并不是原本的vgg16网络,可能你删掉某些层,可能你改掉某些层,这时你去加载预训练模型,就会报错,错误原因就是你的模型和原本 ...
- pytorch加载预训练模型参数的方式
1.直接使用默认程序里的下载方式,往往比较慢: 2.通过修改源代码,使得模型加载已经下载好的参数,修改地方如下: 通过查找自己代码里所调用网络的类,使用pycharm自带的函数查找功能(ctrl+鼠标 ...
- Tensorflow加载预训练模型和保存模型(ckpt文件)以及迁移学习finetuning
转载自:https://blog.csdn.net/huachao1001/article/details/78501928 使用tensorflow过程中,训练结束后我们需要用到模型文件.有时候,我 ...
- Tensorflow加载预训练模型和保存模型
转载自:https://blog.csdn.net/huachao1001/article/details/78501928 使用tensorflow过程中,训练结束后我们需要用到模型文件.有时候,我 ...
- 在矩池云使用Disco Diffusion生成AI艺术图
在 Disco Diffusion 官方说明的第一段,其对自身是这样定义: AI Image generating technique called CLIP-Guided Diffusion.DD ...
- 矩池云上cifar10使用说明
矩池云将 keras 预训练模型保存目录为 /public/keras_pretrained_model/ 使用方法: 先执行命令,创建目录 mkdir -p ~/.keras/models/ 然后将 ...
- 如何使用 PuTTY 远程连接矩池云主机
PuTTY 是一款开源的连接软件,用来远程连接服务器,支持 SSH.Telnet.Serial 等协议. 矩池云的主机支持 SSH 登录,以下为使用 PuTTY 连接矩池云 GPU 的使用教程. 如您 ...
- 矩池云 | 高性价比的GPU租用深度学习平台
矩池云是一个专业的国内深度学习云平台,拥有着良好的深度学习云端训练体验.在性价比上,我们以 2080Ti 单卡为例,36 小时折扣后的价格才 55 元,每小时单价仅 1.52 元,属于全网最低价.用户 ...
随机推荐
- IOC创建对象的方式
1,采用无参构造创建(默认) 2,假设我们要使用有参构造创建对象 (1)下标赋值 <!--第一种 下标赋值 --><bean id="user" class=&q ...
- Spring Cloud Feign+Hystrix自定义异常处理
开启Hystrix spring-cloud-dependencies Dalston版本之后,默认Feign对Hystrix的支持默认是关闭的,需要手动开启. feign.hystrix.enabl ...
- docker使用详解
一.docker简介 docker 是一个开源的应用容器引擎,docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化 ...
- mysql Bad handshake
由于 Java 程序访问 MySQL 时,MySQL 抛出 Bad handshake 错误,导致接口抛错,然后在 MySQL 配置文件新增 skip_ssl 配置(忽略 SSL 密钥和证书文件),重 ...
- 使用 AgileConfig 动态配置 NLog
NLog 是我们在 .NET 领域使用非常广泛的日志组件.它默认使用 xml 来维护它的配置.最近有几个同学问我当使用 AgileConfig 的时候如何配置 NLog .因为 AgileConfig ...
- 难对齐、难保障、难管理?一文了解字节跳动如何解决数据SLA治理难题
基于字节跳动分布式治理的理念,数据平台数据治理团队自研了SLA保障平台,目前已在字节内部得到广泛使用,并支持了绝大部分数据团队的SLA治理需求,每天保障的SLA链路数量过千,解决了数据SLA难对齐.难 ...
- Python模块Ⅱ
Python模块2 part3 模块的分类: 内置模块200种左右:python自带的模块,time os sys hashlib等 第三方模块6000种左右:需要pip install beauti ...
- HMS Core AR Engine 2D图片/3D物体跟踪技术 助力打造更智能AR交互体验
AR技术已经被广泛应用于营销.教育.游戏.展览等场景.通过2D图像跟踪技术和3D物体跟踪技术,用户只需使用一台手机进行拍摄,即可实现海报.卡牌等平面物体以及文物.手办等立体物体的AR效果.尽管近年来2 ...
- Crane-scheduler:基于真实负载进行调度
作者 邱天,腾讯云高级工程师,负责腾讯云 TKE 动态调度器与重调度器产品. 背景 原生 kubernetes 调度器只能基于资源的 resource request 进行调度,然而 Pod 的真实资 ...
- Flink中如何实现一个自定义MetricReporter
什么是 Metrics 在 flink 任务运行的过程中,用户通常想知道任务运行的一些基本指标,比如吞吐量.内存和 cpu 使用情况.checkpoint 稳定性等等.而通过 flink metric ...