TensorFlow 如何用于不同字符串表示之间的转换?
编码的字符串标量可以使用“decode”方法转换为代码点向量。代码点向量可以使用“encode”方法转换为编码的字符串标量。“transcode”方法可以将编码的字符串标量转换为不同的编码。
阅读更多:什么是 TensorFlow,以及 Keras 如何与 TensorFlow 协作创建神经网络?
让我们了解如何使用 Python 表示 Unicode 字符串,以及如何使用 Unicode 等效项来操作它们。首先,我们借助标准字符串操作的 Unicode 等效项,基于脚本检测将 Unicode 字符串分成标记。
我们使用 Google Colaboratory 来运行以下代码。Google Colab 或 Colaboratory 帮助在浏览器上运行 Python 代码,无需任何配置,并可免费访问 GPU(图形处理单元)。Colaboratory 基于 Jupyter Notebook 构建。
print("Converting encoded string scalar to a vector of code points") tf.strings.unicode_decode(text_utf8,input_encoding='UTF-8') print("Converting vector of code points to an encoded string scalar") tf.strings.unicode_encode(text_chars, output_encoding='UTF-8') print("Converting encoded string scalar to a different encoding") tf.strings.unicode_transcode(text_utf8, input_encoding='UTF8', output_encoding='UTF-16-BE')
代码来源:https://tensorflowcn.cn/tutorials/load_data/unicode
输出
Converting encoded string scalar to a vector of code points Converting vector of code points to an encoded string scalar Converting encoded string scalar to a different encoding <tf.Tensor: shape=(), dtype=string, numpy=b'\x8b\xed\x8a\x00Y\x04t\x06'>
解释
- 函数 'unicode_decode' 用于将编码的字符串标量转换为代码点向量。
- 函数 'unicode_encode' 用于将代码点向量转换为编码的字符串标量。
- 函数 'unicode_transcode' 用于将编码的字符串标量转换为不同的编码。
广告