input_Ids, attention_mask

1, input_ids: 将输入到的词映射到模型当中的字典ID

input_ids = tokenizer.encode("I love China!", add_special_tokens=False)
# print:[100, 657, 436, 328]
 
# 可以使用 如下转回原来的词,在选用的模型是Roberta可以用这个转回原来的
#RoBERTa相较于BERT最大的改进有三点:
1.动态Masking
2.取消NSP (Next Sentence predict) 任务
3.扩大Batch Size
tokens= tokenizer.convert_ids_to_tokens(input_ids)
# print: ['I', 'Ġlove', 'ĠChina', '!']. Note: Ġ 代码该字符的前面是一个空格

2,attention_mask:在 self-attention 过程中,这一块 mask 用于标记 subword 所处句子和 padding 的区别,将 padding 部分填充为 0;

有时,需要将多个不同长度的sentence,统一为同一个长度,例如128 dim. 此时我们会需要加padding,以此将一些长度不足的128的sentence,用1进行填充。为了让模型avoid performing attention on padding token indices. 所以这个需要加上这个属性。如果处理的文本是一句话,就可以不用了。如果不传入attention_mask时,模型会自动全部用1填充。

input_ids = tokenizer(["I love China","I love my family and I enjoy the time with my family"], padding=True)
 
# print:
# {
#'input_ids': [[0, 100, 657, 436, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1],
#              [0, 100, 657, 127, 284, 8, 38, 2254, 5, 86, 19, 127, 284, 2]], 
#'attention_mask': [[1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],
#                   [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
#}

 


 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值