Bert中文预训练模型(Bert-base-chinese)

介绍

Bert-base-chinese模型是一个在简体和繁体中文文本上训练得到的预训练模型,具有以下特点:

  • 12个隐层
  • 输出768维张量
  • 12个自注意力头
  • 110M参数量

该模型的主要作用是获取每个汉字的向量表示,后续通过微调可应用于各种简体和繁体中文任务。

使用

python 复制代码
import torch
from transformers import BertTokenizer, BertModel

# 第一步:离线下载
# from transformers import BertModel, BertTokenizer
# model_name = "bert-base-chinese"
# # 下载模型和分词器
# model = BertModel.from_pretrained(model_name)
# tokenizer = BertTokenizer.from_pretrained(model_name)
# # 保存模型和分词器到本地路径
# model.save_pretrained("./bert-base-chinese")
# tokenizer.save_pretrained("./bert-base-chinese")

# 第二步:加载模型和分词器
model_path = "./bert-base-chinese"
tokenizer = BertTokenizer.from_pretrained(model_path)
model = BertModel.from_pretrained(model_path)


def encode_text_with_bert(text):
    """
    使用bert-base-chinese模型对文本进行编码
    :param text: 输入的文本
    :return: 编码后的张量
    """
    # 使用tokenizer对文本进行编码,并去掉起始和结束标志
    encoded_text = tokenizer.encode(text)[1: -1]
    # 把列表转成张量
    encoded_tensor = torch.LongTensor([encoded_text])

    # 不自动进行梯度计算
    with torch.no_grad():
        output = model(encoded_tensor)

    # 返回编码后的张量(取last_hidden_state)
    return output[0]


if __name__ == '__main__':
    text1 = "你好,美丽中国"
    result = encode_text_with_bert(text1)
    print('text1编码的形状:', result.size())
    print('text1编码:\n', result)

text1编码的形状: torch.Size(1, 7, 768)

text1编码:

tensor(\[\[ 0.0781, -0.7386, -0.5120, ..., 1.0695, -0.4252, -0.3970,

0.3118, -0.2283, -0.2513, ..., -0.0618, 0.8715, -0.0833,

0.0287, -0.4937, -0.5554, ..., 0.1643, 0.8771, 0.0019,

...,

-0.3068, -0.3406, 0.0525, ..., 0.5506, 0.8915, -0.3713,

-0.1079, -0.0951, -0.1549, ..., 0.8432, 0.7255, -0.5235,

-0.0414, -0.3786, 0.1590, ..., 0.3844, 0.7464, -0.4266]])

相关推荐
不要额外加糖几秒前
给 Codex 戴上紧箍, 治一治 AI 的过度发挥
前端·人工智能·代码规范
weixin_46846685几秒前
空洞卷积与膨胀卷积新手入门指南
图像处理·人工智能·深度学习·ai·机器视觉·卷积·空洞卷积
小江的记录本1 分钟前
【JVM虚拟机】类加载机制:类加载器、双亲委派模型、好处、破坏双亲委派的场景(附《思维导图》+《面试高频考点清单》)
java·jvm·spring boot·后端·python·spring·面试
AI创界者2 分钟前
ComfyUI v8 极致整合包发布!Win/Mac 双平台完美适配 + 多卡并行加速,开启 AI 绘画新时代
人工智能·macos
zhangfeng11332 分钟前
本账号 自媒体 csdn 账号诊断和改进建议,记录一下
人工智能·机器学习·媒体
镭封3 分钟前
影视解说、小说推文、情感语录,分别适合什么AI声音?
人工智能
ZPC82104 分钟前
前馈补偿原理 + 分类 + 公式 + 工程实现(配合 PID 使用,从根源减轻闭环收敛压力)
人工智能·分布式·机器人
sensen_kiss4 分钟前
CPT306 Principles of Computer Games Design 电脑游戏设计原理 Pt.8 Game AI(游戏里的“人工智能系统”)
人工智能·游戏
weixin_468466855 分钟前
ResNet 残差网络新手入门与实战指南
人工智能·深度学习·ai·残差网络·resnet·机器视觉
jiayong235 分钟前
harness 与 hermes-agent 扩展性、安全与运维
运维·人工智能·安全·ai·架构·智能体·harness