如何使用TensorFlow结合tf.data API和分词器?
‘tf.data’ API 可用于对字符串进行分词。分词是将字符串分解成标记的方法。这些标记可以是单词、数字或标点符号。
阅读更多: 什么是TensorFlow以及Keras如何与TensorFlow协作创建神经网络?
我们将使用Keras Sequential API,它有助于构建一个顺序模型,该模型用于处理简单的层堆栈,其中每一层只有一个输入张量和一个输出张量。
包含至少一层卷积层的神经网络称为卷积神经网络。我们可以使用卷积神经网络来构建学习模型。
TensorFlow Text包含一系列与文本相关的类和操作,可与TensorFlow 2.0一起使用。TensorFlow Text可用于预处理序列建模。
我们使用Google Colaboratory运行以下代码。Google Colab或Colaboratory帮助在浏览器上运行Python代码,无需任何配置,并可免费访问GPU(图形处理单元)。Colaboratory构建在Jupyter Notebook之上。
重要的接口包括Tokenizer和TokenizerWithOffsets,每个接口分别具有单个方法tokenize和tokenize_with_offsets。有多个分词器,每个分词器都实现了TokenizerWithOffsets(它扩展了Tokenizer类)。这包括获取原始字符串中字节偏移量的选项。这有助于了解创建标记的原始字符串中的字节。
示例
print("Tokenizer with tf.data API") docs = tf.data.Dataset.from_tensor_slices([['Never tell me about the odds.'], ["It's not trye!"]]) print("Whitespace tokenizer is being called") tokenizer = text.WhitespaceTokenizer() tokenized_docs = docs.map(lambda x: tokenizer.tokenize(x)) iterator = iter(tokenized_docs) print(next(iterator).to_list()) print(next(iterator).to_list())
代码来源 −https://tensorflowcn.cn/tutorials/tensorflow_text/intro
输出
Tokenizer with tf.data API Whitespace tokenizer is being called [[b'Never', b'tell', b'me', b'about', b'the', b'odds.']] [[b"It's", b'not', b'trye!']]
解释
- tf.data API与分词器一起使用。
- 完成此操作后,将对输入调用空格分词器。
- 迭代标记,然后将其存储在列表中。
广告