Post

model,tokenizer,subword tokenization(huggingface)

Model

  • AutoModel:这是一个智能的wrapper,可以根据你给定的checkpoint名字,自动去寻找对应的网络结构,故名Auto。
  • 如果明确知道我们需要的是什么网络架构,就可以直接使用具体的*Model,比如BertModel,就是使用Bert结构。

随机初始化一个Transformer模型**:通过config来加载

*Config这个类,用于给出某个模型的网络结构,通过config来加载模型,得到的就是一个模型的架子,没有预训练的权重。

1
2
3
4
from transformers import BertModel, BertConfig

config = BertConfig()
model = BertModel(config)  # 模型是根据config来构建的,这时构建的模型是参数随机初始化的

更常用的做法则是直接加载预训练模型,然后微调。

初始化一个预训练的Transformer模型:通过from_pretrained来加载

1
2
3
from transformers import BertModel

model = BertModel.from_pretrained('bert-base-cased')

模型的保存:

1
model.save_pretrained("directory_on_my_computer")# 会在当前目录下创建名为directory_on_my_computer的文件夹,保存预训练模型
This post is licensed under CC BY 4.0 by the author.