【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

相关推荐
爱偷懒的。。21 小时前
基于 WebSocket 协议的实时弹幕通信机制分析-抖音
网络·python·websocket·网络协议·学习·js
东方芷兰1 天前
LLM 笔记 —— 08 Embeddings(One-hot、Word、Word2Vec、Glove、FastText)
人工智能·笔记·神经网络·语言模型·自然语言处理·word·word2vec
知识分享小能手1 天前
微信小程序入门学习教程,从入门到精通,自定义组件与第三方 UI 组件库(以 Vant Weapp 为例) (16)
前端·学习·ui·微信小程序·小程序·vue·编程
Rock_yzh1 天前
AI学习日记——深度学习
人工智能·python·深度学习·神经网络·学习
@小张要努力1 天前
STM32学习记录-0.1 STM32外设
stm32·嵌入式硬件·学习
li星野1 天前
打工人日报#20251010
笔记·程序人生·fpga开发·学习方法
聪明的笨猪猪1 天前
Java Redis “Sentinel(哨兵)与集群”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
康妮猫1 天前
建模的终点,是WPS/Office
数据库·学习
东风西巷1 天前
MobiPDF安卓版(PDF阅读编辑工具) 修改版
学习·pdf·电脑·软件需求
CVer_1 天前
Pytorch学习之Dataset类
学习