transformers学习笔记3

news/2024/11/8 16:40:36/

创建model的方法

automodel创建预训练模型

  1. 使用automodel直接创建,使用的是hug face官网上的预训练好的模型参数,完成创建后再使用自己本地的数据集进行迁移训练

  1. automodel api 去官网上下载用户指定类型模型的config file 和model file,config说明了如何创建模型,model包括该模型的参数。

  1. automodel api首先根据config去创建model类,再实例化model并随机初始化其参数

  1. 最后采用model file里面的参数来修改model 实例

  1. 代码:

import transformersmodel = AutoModel.from_pretrained("bert-base-uncased") 
  1. config的样子:它是创建模型的蓝图

autoconfig创建初始化模型

  1. autoconfig api 直接去官网下载相应的模型的config file,并且按照该标准初始化一个config class,使用该config class可以实例化一个模型,但此时模型是随机初始化的,需要用户自己找大量数据去从头开始训练,很麻烦、不环保

  1. 代码:

import Transformersmy_config = AutoConfig.from_pretrained("bert-base-uncased")
model = AutoModel(my_config)
  1. 使用特定类创建模型,不推荐这样做,因为实际做项目的时候总是换各种模型,还是推荐用auto api

from Transformers import BertConfigmy_config = BertConfig.from_pretrained("bert-base")
model = BertModel(my_config)
  1. 在创建模型的时候还可以自己修改参数:

import Transformersmy_config = BertConfig.from_pretrained("bert-base")
# my_config = BertConfig()model = BertModel(my_config, num_hidden_layers=10)

保存model的方法

from Transformers import BertConfigmy_config = BertConfig.from_pretrained("bert-base")
model = BertModel(my_config)# training model# 保存模型
model.save_pretrained("directory_on_my_computer")# 重新加载自己训练的模型
model2 = BertModel.from_pretrained("directory_on_my_computer")

在directory_on_my_computer文件夹下有这两个文件:

  1. config.json

  1. pytorch_model.bin


http://www.ppmy.cn/news/18477.html

相关文章

基于自适应降噪的深度神经网络对抗图像检测【论文阅读】

近年来,许多研究表明,深度神经网络(DNN)分类器可能会被对抗性示例所欺骗,这种对抗性示例是通过对原始样本引入一些扰动来设计的。据此,提出了一些强大的防御技术。然而,现有的防御技术往往需要修改目标模型或依赖于攻击…

Java基础练习题(二)

5.整数幂 题目描述 输入3个整数,输出它们的1次幂、2次幂和3次幂。 输入 输入3整数,用空格隔开。 输出 输出3行,每行3个整数,分别是它们的1次幂、2次幂和3次幂,每个整数占9列,不足9列左对齐。 样例输入

单片机堆栈知识总结

堆栈 在片内RAM中,常常要指定一个专门的区域来存放某些特别的数据 它遵循顺序存取和后进先出(LIFO/FILO)的原则,这个RAM区叫堆栈。 其实堆栈就是单片机中的一些存储单元,这些存储单元被指定保存一些特殊信息,比如地址&#xff0…

【Linux杂篇】Windows远程登陆Linux、Linux静态IP配置

前言 如果要长期连接Linux环境,就需要给Linux配置一个静态IP,否则可能每次连接的IP都不一样而且还很麻烦。 除此之外,我们使用ssh远程登录的时候,每次都要输入密码,也很麻烦,所以建议配置ssh密钥&#xff…

Java反射学习

反射的概念 Reflection(反射)是Java被视为动态语言的关键 反射机制允许程序在执行期借助于Reflection API获得任何类的内部信息, 并能直接操作任意对象的内部属性及方法。 加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象&…

数据结构---set篇

第一次超时是因为用memsetmemsetmemset不得不超时,第二次超时是我用vectorvectorvector数组的时候,然后以O(n)O(n)O(n)复杂度查找元素之后使用eraseeraseerase方法进行删除,第三次超时是我把查找元素改成了O(logn)O(logn)O(logn)之后用vector…

【数据库】必须知道的MySQL优化

文章目录SQL语言有哪几部分组成为什么要进行MySQL优化?优化方法有哪些?SQL层面优化MySQL配置方面架构设计方面硬件和操作系统方面.SQL语言有哪几部分组成 数据定义语言,简称DDL:DROP,CREATE,ALTER等语句。数据操作语言&#xff0…

DPU网络开发SDK—DPDK(六)

rte_eal_init() 接上次内容继续对rte_eal_init()所做的工作进行分析。 20. 大页内存配置 internal_conf中的no_hugetlbfs指明是否禁用大页内存,通过命令行参数"--no-huge"设置禁用,默认情况下大页内存是开启的。DPDK根据进程是primary还是s…