【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

相关推荐
saoys12 分钟前
Opencv 学习笔记:绘制动态随机直线(附实时展示)
笔记·opencv·学习
njsgcs15 分钟前
找门强化学习 笔记 ppo+yolo
笔记
智者知已应修善业19 分钟前
【编写函数求表达式的值】2024-4-3
c语言·c++·经验分享·笔记·算法
余俊晖26 分钟前
多页文档理解强化学习设计思路:DocR1奖励函数设计与数据构建思路
人工智能·语言模型·自然语言处理
Yeats_Liao28 分钟前
MindSpore开发之路(二十六):系列总结与学习路径展望
人工智能·深度学习·学习·机器学习
modelmd35 分钟前
Go 编程语言指南 练习题目分享
开发语言·学习·golang
Nan_Shu_61440 分钟前
学习: Threejs (2)
前端·javascript·学习
ljt27249606611 小时前
Compose笔记(六十九)--Pager
笔记
学历真的很重要1 小时前
LangChain V1.0 Context Engineering(上下文工程)详细指南
人工智能·后端·学习·语言模型·面试·职场和发展·langchain
koo3641 小时前
pytorch深度学习笔记13
pytorch·笔记·深度学习