transformers学习笔记3

创建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 实例

transformers学习笔记3_第1张图片
  1. 代码:

import transformers

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

transformers学习笔记3_第2张图片

autoconfig创建初始化模型

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

  1. 代码:

import Transformers

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

from Transformers import BertConfig

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

import Transformers

my_config = BertConfig.from_pretrained("bert-base")
# my_config = BertConfig()

model = BertModel(my_config, num_hidden_layers=10)

保存model的方法

from Transformers import BertConfig

my_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

你可能感兴趣的:(transformers,transformer)