NLP模型的tokenize方法中return_tensors参数

NLP模型的tokenize方法中return_tensors参数

在许多NLP模型的tokenize方法中,return_tensors参数可以指定tokenize之后返回的张量类型,常见的可选值包括:

‘tf’: 返回TensorFlow的张量对象Tensor。
‘pt’: 返回PyTorch的张量对象torch.Tensor。
‘np’: 返回NumPy的ndarray对象。
None: 默认值,返回一个数字列表(list)。
这个参数可以根据使用的后端框架不同,选择返回不同的张量类型,以方便后续模型的输入。

例如:

import tensorflow as tf 
from transformers import AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")

# 返回TensorFlow张量
tokens = tokenizer("Hello world!", return_tensors='tf') 
print(type(tokens['input_ids'])) # <class 'tensorflow.python.framework.ops.Tensor'>

# 返回PyTorch张量
tokens = tokenizer("Hello world!", return_tensors='pt')
print(type(tokens['input_ids'])) # <class 'torch.Tensor'>

# 返回Numpy数组
tokens = tokenizer("Hello world!", return_tensors='np')
print(type(tokens['input_ids'])) # <class 'numpy.ndarray'>

# 返回列表
tokens = tokenizer("Hello world!") 
print(type(tokens['input_ids'])) # <class 'list'>

可以看到根据return_tensors不同,tokenizer返回的结果可以是TensorFlow/PyTorch/Numpy对象,或者默认的列表。

这提供了很大的灵活性,允许Tokenizer输出适应不同的后端框架,并且可以优化内存和速度。

完结!

猜你喜欢

转载自blog.csdn.net/engchina/article/details/132816042