什么是 Tensorflow 中关于文本数据的分词?

什么是 Tensorflow 中关于文本数据的分词?

分词是将文本分成单词一样的单元的行为。这在分隔单词时使用空格字符时使用,但某些语言(如中文和日语)不使用空格。一些语言,例如德语,包含需要拆分以分析其含义的长复合词。

处理自然语言的模型处理具有不同字符集的不同语言。 Unicode 被认为是用于表示几乎所有语言中的字符的标准编码系统。每个字符都使用介于 0 和 0x10FFFF 之间的唯一整数代码点进行编码。 Unicode 字符串是零个或多个代码值的序列。

让我们了解如何使用 Python 表示 Unicode 字符串,并使用 Unicode 等价物来操作Unicode字符串。首先,我们使用标准字符串操作的Unicode等价项将Unicode字符串分成基于脚本检测的标记。

我们使用 Google Colaboratory 来运行以下代码。 Google Colab 或 Colaboratory 可以在浏览器上运行 Python 代码,并且不需要配置即可免费访问 GPU(图形处理单元)。 Colaboratory 是基于 Jupyter Notebook 构建的。

print("以下是已处理的句子")
sentence_texts = [u'Hello, there.', u'世界こんにちは']
print("句子中字符的代码点值")
sentence_char_codepoint = tf.strings.unicode_decode(sentence_texts, 'UTF-8')
print(sentence_char_codepoint)
print("句子中字符的 Unicode 脚本值")
sentence_char_script = tf.strings.unicode_script(sentence_char_codepoint)
print(sentence_char_script)

代码来源:https://www.tensorflow.org/tutorials/load_data/unicode

更多Python相关文章,请阅读:Python 教程

输出

以下是已处理的句子
句子中字符的代码点值

句子中字符的 Unicode 脚本值
<tf.RaggedTensor [[25, 25, 25, 25, 25, 0, 0, 25, 25, 25, 25, 25, 0], [17, 17, 20, 20, 20, 20, 20]]>

说明

  • 分词指将文本分成单词一样的单元的任务。
  • 当使用空格字符分隔单词时,通过使用文本近似单词边界而不使用 ML 模型可以执行粗略的分词。这适用于像“NY株価”(纽约证券交易所)这样的字符串。对于大多数使用空格的语言,因为各个脚本的空格字符都被分类为 USCRIPT_COMMON,这是与任何实际文本的脚本代码不同的特殊脚本代码。
  • 这适用于一些语言,如德语等包含需要拆分以分析其含义的长复合词。
  • 在上面的代码中,生成了每个句子中每个字符的代码点。
  • 接下来,生成了每个句子中每个字符的 Unicode 脚本。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程