Transformer 中不同任务的bert模型

文章介绍了如何使用Bert模型进行文本处理任务,如加载预训练模型所需的vocab.txt、config.json、pytorch_model.bin等文件,以及BertModel的输出和常用参数。它强调了Bert对于文本分类和命名实体识别的应用,如AutoModelForSequenceClassification和AutoModelForTokenClassification。
摘要由CSDN通过智能技术生成

        使用 Bert 做各种文本任务,主要是使用 transformer 包来完成,可通过pretrain_from加载预训练模型,传入的参数为预训练模型所在文件夹路径,需要三种文件,vocab.txt、config.json、pytorch_model.bin;加载Tokenizer时候可能还需要tokenizer.json和tokenizer_config.json文件。

        BertModel 相当于是一个 bert 基础实现,最后的输出为 hidden 层的数据输出,对下游任务需要再增加最后的处理,模型默认的输出是BaseModelOutputWithPoolingAndCrossAttentions。

经常使用的方法

        last_hidden_state (torch.FloatTensor of shape (batch_size, sequence_length, hidden_size)) — 模型最后一层输出的隐藏状态序列.
        hidden_states (tuple(torch.FloatTensor), optional, returned when output_hidden_states=True is passed or when config.output_hidden_states=True) — 形状为(batch_size、sequence_length、hidden_​​size)的torch.FloatTensor 的元组(一个用于嵌入的输出,如果模型有嵌入层,+ 一个用于每一层的输出)

参数意义

        input_ids (torch.LongTensor of shape (batch_size, sequence_length)) — 词汇表中输入序列标记的索引
        attention_mask (torch.FloatTensor of shape (batch_size, sequence_length), optional) — 对输入数据mask,解决pad问题,掩码值:1 表示未屏蔽的标记,0 表示已屏蔽的标记。
        token_type_ids (torch.LongTensor of shape (batch_size, sequence_length), optional) — 分段标记索引以指示输入的第一和第二部分。在 [0, 1] 中选择索引:0对应一个句子A的token,1对应一个句子B的token。

不同类型的Bert类

        针对文本分类的有AutoModelForSequenceClassification

        针对NER的有:AutoModelForTokenClassification

参考:

【Transformers】BertModel模块的输入与输出_科皮子菊的博客-CSDN博客

Hugging Face – The AI community building the future.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值