bert预训练中文文本

import torch
import torch.nn as nn
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
# 通过torch.hub(pytorch中专注于迁移学习的工具)获得已经训练好的bert-base-chinese模型
model = torch.hub.load('huggingface/pytorch-transformers', 'model', 'bert-base-chinese')

# 获得对应的字符映射器,它将把中文的每个字段映射成一个数字
tokenizer = torch.hub.load('huggingface/pytorch-transformers', 'tokenizer', 'bert-base-chinese')

def a(text):


    indexed_tokens = tokenizer.encode(text)[1:-1]
    # 之后将列表结构转化为tensor
    tokens_tensor = torch.tensor([indexed_tokens])
    print(tokens_tensor)
    # 使模型不自动计算梯度
    with torch.no_grad():
        # 调用模型获得隐层输出
        encoded_layers, _ = model(tokens_tensor, return_dict=False)
    # 输出的隐层是一个三维张量, 最外层一维是1, 我们使用[0]降去它.
    print(encoded_layers.shape)
    encoded_layers = encoded_layers[0]
    return encoded_layers

text = '自定义添加'
outputs = a(text)
print(outputs)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值