了解 Huggingface 转换器库中 bert 分词器中参数“text”和“text_target”之间的区别

问题描述 投票:0回答:1

来自 Huggingface 的变形金刚库

from transformers import BertTokenizer
tb = BertTokenizer.from_pretrained("bert-base-uncased")

tb
不是单词分词器。它有参数
text
text_target
。两者有什么区别?您能同时给出功能差异吗?

文档说:

text (str, List[str], List[List[str]], 可选) — 要编码的序列或一批序列。每个序列可以是一个字符串或字符串列表(预标记化字符串)。如果序列作为字符串列表(预标记化)提供,则必须设置 is_split_into_words=True (以消除一批序列的歧义)。

text_target (str, List[str], List[List[str]], 可选) — 要编码为目标文本的序列或一批序列。每个序列可以是一个字符串或字符串列表(预标记化字符串)。如果序列作为字符串列表(预标记化)提供,则必须设置 is_split_into_words=True (以消除一批序列的歧义)。

我不明白上面的描述中两者的区别

huggingface-transformers tokenize bert-language-model huggingface-tokenizers
1个回答
0
投票

Hugging Face 的 Transformers 库中的

BertTokenizer
有两个参数:
text
text_target
,它们在各种 NLP 任务中具有不同的用途。

text
参数用于需要编码的输入序列,其格式可以是单个字符串、字符串列表或字符串列表列表(对于预标记化输入)。例如,在问答等任务中,
text
将是问题,而在翻译中,它将是源语言中的句子。

另一方面,

text_target
参数用于充当标签的目标序列或给定输入序列的所需输出。它的格式也可以是单个字符串、字符串列表或字符串列表的列表。回到上面的任务示例,在问答中,
text_target
将是问题的答案,而在翻译中,它将是目标语言中的句子。

这两个参数之间的主要区别在于它们的预期用途。在没有配对序列的任务中,例如简单的文本分类,仅使用

text
参数。然而,在涉及配对序列的任务中,例如问答或翻译,text 和 text_target 都用于对输入和所需的输出序列进行编码。然后模型学习两个序列之间的关系。

© www.soinside.com 2019 - 2024. All rights reserved.