【NLP学习笔记】transformers中的tokenizer切词时是否返回token_type_ids

结论

先说结论:

是否返回token_type_ids,可以在切词时通过 return_token_type_ids=True/False指定,指定了True就肯定会返回,指定False,不一定就不返回。

分析

  • Doc地址
    https://huggingface.co/docs/transformers/main/en/internal/tokenization_utils#transformers.PreTrainedTokenizerBase.call

  • 源码分析

    由上图可以,transformers的tokenization_utils_base.py明确指出,是否返回由return_token_type_idsself.model_input_names两个属性控制

    同时可见,如果return_token_type_ids是False,那么会判断model_input_names里有没有token_type_idsmodel_input_names顾名思义,就是当前的模型需要哪些输入。

    默认值是有token_type_ids的,所以即使不指定,像Bert的tokenizer,切词时没有指定return_token_type_ids,并且transformers的Bert的切词源码里也没指定model_input_names相关,但是依旧可以返回token_type_ids

    但是像GPT2的切词源码里,继承时重载了model_input_names这个变量,没有指定token_type_ids,所以默认情况下GPT2的切词方式是不返回token_type_ids

相关推荐
Starry_hello world1 小时前
MySql 表的约束
数据库·笔记·mysql·有问必答
汇能感知5 小时前
摄像头模块在运动相机中的应用
经验分享·笔记·科技
2401_8769075210 小时前
Python基础笔记
笔记
风已经起了10 小时前
FPGA学习笔记——IIC协议简介
笔记·学习·fpga开发
牧子与羊10 小时前
自学中医笔记(二)
笔记
lingggggaaaa10 小时前
小迪安全v2023学习笔记(六十二讲)—— PHP框架反序列化
笔记·学习·安全·web安全·网络安全·php·反序列化
我们从未走散12 小时前
JVM学习笔记-----StringTable
jvm·笔记·学习
胡萝卜3.012 小时前
数据结构初阶:排序算法(一)插入排序、选择排序
数据结构·笔记·学习·算法·排序算法·学习方法
xinzheng新政13 小时前
纸板制造制胶工艺学习记录4
学习·制造
我们从未走散15 小时前
JVM学习笔记-----类加载
笔记·学习