位置: IT常识 - 正文

Bert 得到中文词向量(bert获取中文词向量)

编辑:rootadmin
Bert 得到中文词向量

推荐整理分享Bert 得到中文词向量(bert获取中文词向量),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:bert英文发音,bert读,bert获取中文词向量,bert翻译成中文,bert分词得到词向,bert翻译成中文,bert中文分词,bert中文分词,内容如对您有帮助,希望把文章链接给更多的朋友!

通过bert中文预训练模型得到中文词向量和句向量,步骤如下: 下载 bert-base-chiese模型 只需下载以下三个文件,然后放到bert-base-chinese命名的文件夹中

得到中文词向量的代码如下

import torchfrom transformers import BertTokenizer, BertModeltokenizer = BertTokenizer.from_pretrained('bert-base-chinese') # 加载base模型的对应的切词器model = BertModel.from_pretrained('bert-base-chinese')print(tokenizer) # 打印出对应的信息,如base模型的字典大小,截断长度等等token = tokenizer.tokenize("自然语言处理") # 切词print(token) # 切词结果indexes = tokenizer.convert_tokens_to_ids(token) # 将词转换为对应字典的idprint(indexes) # 输出idtokens = tokenizer.convert_ids_to_tokens(indexes)# 将id转换为对应字典的词print(tokens) # 输出词# 使用这种方法对句子编码会自动添加[CLS] 和[SEP]input_ids = torch.tensor(tokenizer.encode("自然语言处理")).unsqueeze(0)print(input_ids)outputs = model(input_ids)# cls_id = tokenizer._convert_token_to_id('[CLS]')# sep_id = tokenizer._convert_token_to_id('[SEP]')# print(cls_id, sep_id)sequence_output = outputs[0]print(sequence_output)print(sequence_output.shape) ## 字向量Bert 得到中文词向量(bert获取中文词向量)

输出的结果如下

PreTrainedTokenizer(name_or_path='bert-base-chinese', vocab_size=21128, model_max_len=512, is_fast=False, padding_side='right', truncation_side='right', special_tokens={'unk_token': '[UNK]', 'sep_token': '[SEP]', 'pad_token': '[PAD]', 'cls_token': '[CLS]', 'mask_token': '[MASK]'})['自', '然', '语', '言', '处', '理'][5632, 4197, 6427, 6241, 1905, 4415]['自', '然', '语', '言', '处', '理']tensor([[ 101, 5632, 4197, 6427, 6241, 1905, 4415, 102]])tensor([[[-0.5707, 0.1999, -0.0637, ..., -0.0916, -0.3997, 0.1751], [ 0.1549, 0.2454, 0.8372, ..., -0.7411, -0.8433, 0.5498], [ 0.1983, -0.5007, -0.6416, ..., 0.0322, -0.2561, 0.0599], ..., [ 0.1960, 0.4055, 1.6229, ..., 0.1070, -0.2448, 0.1766], [ 0.0846, 0.9084, 0.5164, ..., 0.0235, 0.6487, -0.0858], [-0.5326, -0.0390, 1.9163, ..., 0.1597, -0.2909, 0.6810]]], grad_fn=<NativeLayerNormBackward0>)torch.Size([1, 8, 768])

当然还可以通过bert-as-service得到词向量,网上有很多,步骤如下:

安装肖涵博士的bert-as-service: pip install bert-serving-server pip install bert-serving-client

下载训练好的Bert中文词向量: https://storage.proxy.ustclug.org/bert_models/2018_11_03/chinese_L-12_H-768_A-12.zip

启动bert-as-service: 找到bert-serving-start.exe所在的文件夹(我直接用的anaconda prompt安装的,bert-serving-start.exe在F:\anaconda\Scripts目录下。)找到训练好的词向量模型并解压,路径如下:G:\python\bert_chinese\chinese_L-12_H-768_A-12 打开cmd窗口,进入到bert-serving-start.exe所在的文件目录下,然后输入:

bert-serving-start -model_dir G:\python\bert_chinese\chinese_L-12_H-768_A-12 -num_worker=1#后台启动服务(nohup .... &)nohup bert-serving-start -model_dir G:\python\bert_chinese\chinese_L-12_H-768_A-12 -num_worker=1 &

即可启动bert-as-service(num_worker好像是BERT服务的进程数,例num_worker = 2,意味着它可以最高处理来自 2个客户端的并发请求。) 启动后结果如下: 获取Bert预训练好的中文词向量:

from bert_serving.client import BertClient bc = BertClient() print(bc.encode([“NONE”,“没有”,“偷东西”]))#获取词的向量表示 print(bc.encode([“none没有偷东西”]))#获取分词前的句子的向量表示 print(bc.encode([“none 没有 偷 东西”]))#获取分词后的句子向量表示

结果如下:其中每一个向量均是768维。

本文链接地址:https://www.jiuchutong.com/zhishi/295945.html 转载请保留说明!

上一篇:Java - token的存储与获取(javatoken生成机制)

下一篇:vue项目根据不同环境动态配置接口请求ip及全局变量(vue环境变量配置)(vue调用同一个组件)

  • 以前年度遗留的个税怎么处理
  • 什么是免税合并
  • 人民大学税务专硕学费
  • 改签费可以进项转出吗
  • 电梯维保费属于建筑服务吗
  • 金税盘可以用安卓的线吗
  • 应付款多付了怎么处理
  • 自产自销发票可以抵扣增值税发票吗
  • 小规模纳税人农产品进项税抵扣
  • 视同销售不开票如何计算增值税?
  • 金融资产转回
  • 有发票无明细能报销吗
  • 分期收款销售会计分录(现销)
  • 调增企业所得税怎么算
  • 固定资产投资转化为gdp比例
  • 工会经费按什么计算的
  • 自产的产品无偿赠送职工
  • 城建税及教育附加税怎么算
  • 工程款先开票
  • 一次性奖励随工资发
  • 显示器件属于什么设备
  • 企业完税凭证入账后怎么办理退税?
  • 发票一直显示报送中怎么处理
  • 招待用酒可以抵扣所得税吗
  • 纳税人识别号和税号是一个意思吗
  • 个人所得税起征点什么时候调整的
  • 公司成立后一直没有收入
  • 土地增值税的纳税人是在我国境内
  • 没有车船税证明可以年检吗
  • 小企业会计准则适用于哪些企业
  • 以前年度的库存商品出现负数今年如何入账
  • 全资的子公司
  • 公司名下的车怎么上牌
  • 华为鸿蒙双击背面打开健康码
  • 怎么在bios设置启动项
  • 如何修改系统时间为12/24小时制
  • macos怎么看
  • php几天可以速成
  • Win10版本21H2卡死
  • 做胃镜多少钱了
  • 如何批量清理桌面
  • 房地产开发企业增值税怎么算
  • 自产应税消费品用于在建工程要交增值税吗
  • 中草药进销差价会计分录
  • 材料成本差异的会计分录
  • 【Netty系列・高级篇】Netty核心源码解析
  • br命令怎么用
  • 材料采购计入哪个账本
  • 固定资产处置科目有哪些
  • 库存商品用于研发要进项税额转出吗
  • mysql一次io
  • sql2008用ip连接不了
  • 为什么收款金额跟实时入帐金额会不一样农村信用社
  • 申报成功后怎么更正申报
  • 跨年发票分录
  • 商业地产收税
  • 单位食堂收费制度
  • 公司购买车
  • 货款还没收到有违法所得吗
  • 个体工商户达到多少缴税
  • 吸收的三种方式
  • mysql8.0 主从
  • 组策略禁止打开文件对话框输入路径
  • linux增加命令
  • centos 常用命令教程
  • scm是啥
  • 修改注册表命令
  • win8运行速度慢怎么办
  • qt widget opengl
  • python re 查找
  • jquery删除节点的元素
  • js中递归是什么意思
  • js修改css文件
  • python lambda的用法
  • asyncio 的 coroutine对象 与 Future对象使用指南
  • python直接访问私有属性的简单方法
  • android 进程启动流程
  • 广东省国家税务总局稽查局局长
  • 岗位能手竞赛
  • 增值税综合税率是什么意思啊造价
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设