【HuggingFace】RoBERTa分词器RobertaTokenizer编码完整单词

简介: 在用RobertaTokenizer对单词进行分词的时候,发现单词acquire会被分词两个词根,但是RobertaForMaskedLM可以预测出来单词acquire。

问题描述


  在用RobertaTokenizer对单词进行分词的时候,发现单词acquire会被分词两个词根,但是RobertaForMaskedLM可以预测出来单词acquire


 下面的代码可以看到把单词acquire分词成了'ac''quire'

from transformers import AutoTokenizer, RobertaForMaskedLM
import torch
tokenizer = AutoTokenizer.from_pretrained("./@_PLMs/roberta/roberta-base")
model = RobertaForMaskedLM.from_pretrained("./@_PLMs/roberta/roberta-base")
inputs = tokenizer("acquire", return_tensors="pt")
# {'input_ids': tensor([[    0,  1043, 17446,     2]]), 'attention_mask': tensor([[1, 1, 1, 1]])}
tokenizer.decode([1043])
# 'ac'
tokenizer.decode([17446])
# 'quire'



  但是把它们放在一起解码的时候,就会合成一个单词:


tokenizer.decode([1043, 17446])
# 'acquire'



  RobertaForMaskedLM在预测的时候也可以预测合成词:



  观察上图,发现RobertaForMaskedLM给出的候选词前面全都有一个空格。所以如果我们想要编码一个完整的单词,需要在前面加个空格。


解决方案:在想要编码成完整的单词前面加个空格


 在想要编码成完整的单词前面加个空格:


tokenizer(" acquire", return_tensors="pt")
# {'input_ids': tensor([[   0, 6860,    2]]), 'attention_mask': tensor([[1, 1, 1]])}
相关文章
|
存储 缓存 Linux
如何在Linux环境下对pip的缓存地址进行修改
如何在Linux环境下对pip的缓存地址进行修改
3484 0
|
人工智能 自然语言处理 语音技术
创新场景丨下一个iPhone 时刻,AI+AR 加速虚实融合世界的到来
仅仅以大模型通用能力帮助 AR 眼镜实现了多个场景下的交互还不够,关键在于大模型没有针对 AR 眼镜的需求做深度的定制和匹配。
|
人工智能 编解码
CogVideoX-Flash:智谱首个免费AI视频生成模型,支持文生视频、图生视频,分辨率最高可达4K
CogVideoX-Flash 是智谱推出的首个免费AI视频生成模型,支持文生视频、图生视频,最高支持4K分辨率,广泛应用于内容创作、教育、广告等领域。
1670 5
CogVideoX-Flash:智谱首个免费AI视频生成模型,支持文生视频、图生视频,分辨率最高可达4K
|
人工智能 自然语言处理 API
深入浅出LangChain与智能Agent:构建下一代AI助手
LangChain为大型语言模型提供了一种全新的搭建和集成方式,通过这个强大的框架,我们可以将复杂的技术任务简化,让创意和创新更加易于实现。本文从LangChain是什么到LangChain的实际案例到智能体的快速发展做了全面的讲解。
283967 62
深入浅出LangChain与智能Agent:构建下一代AI助手
|
网络协议 安全
QT多线程
本文详细介绍了在Qt中如何正确使用QThread以及信号槽跨线程的使用方式,包括线程的正确退出方法和QObject在不同线程中创建子对象时可能遇到的问题。同时,文章还提供了相关博客和资料的链接,用于进一步学习和参考。
503 3
|
存储 Go PHP
Go语言中的加解密利器:go-crypto库全解析
在软件开发中,数据安全和隐私保护至关重要。`go-crypto` 是一个专为 Golang 设计的加密解密工具库,支持 AES 和 RSA 等加密算法,帮助开发者轻松实现数据的加密和解密,保障数据传输和存储的安全性。本文将详细介绍 `go-crypto` 的安装、特性及应用实例。
807 0
|
监控 数据挖掘 数据安全/隐私保护
ERP系统中的财务合规与审计
【7月更文挑战第25天】 ERP系统中的财务合规与审计
1114 1
|
Shell Windows
vscode添加gitbash终端(最新)
vscode添加gitbash终端(最新)
2322 1
|
数据可视化
Open3d Point cloud outlier removal 点云异常值移除
Open3d Point cloud outlier removal 点云异常值移除
824 1