TensorFlow 支持 Unicode 编码

2018-12-22 13:40:38 来源:网络整理 作者:管理员

原标题:TensorFlow 支持 Unicode 编码

文 / Laurence Moroney, Google TensorFlow 团队;Edward Loper, Google Research 团队

TensorFlow 支持 Unicode 编码

TensorFlow 现在可以支持 Unicode,这是一种标准编码系统,可以表示几乎所有语言的字符。处理自然语言时,了解字符的编码方式非常重要。在像英语这样的小字符集的语言中,每个字符都可以使用 ASCII 进行表示。但是这种方法对于其他语言来说并不实用,例如中文,这些语言有数千个字符。即使处理英文文本,Emojis 等特殊字符也不能用 ASCII 表示。

定义字符及其编码的最常用标准是 Unicode,它几乎支持所有语言。对于 Unicode,每个字符使用唯一的整数 code point 表示,其值介于 0 和 0x10FFFF 之间。当按顺序放置 code point 时,将形成 Unicode 字符串。

Unicode tutorial colab 展示了如何在 TensorFlow 中表示 Unicode 字符串。使用 TensorFlow 时,有两种标准方式来表示 Unicode 字符串:

  • 作为整数向量,其中每个位置包含单个 code point
  • 作为字符串,使用字符编码将 code point 序列编码到字符串中。有许多字符编码,其中一些最常见的是 UTF-8,UTF-16 等

以下代码分别使用 code point、UTF-8 和 UTF-16 显示字符串 “语言处理” 的编码。

TensorFlow 支持 Unicode 编码

当然,您可能需要在各种表示方式之间进行转换,而 TensorFlow 1.13 已添加了执行此操作的函数

  • tf.strings.unicode_decode: 将字符串标量转换为 code point 的向量(https://www.tensorflow.org/versions/r1.13/api_docs/python/tf/strings/unicode_decode)
  • tf.strings.unicode_encode: 将 code point 向量转换为字符串标量(https://www.tensorflow.org/versions/r1.13/api_docs/python/tf/strings/unicode_decode)
  • tf.strings.unicode_transcode: 将字符串标量转换为不同的编码(https://www.tensorflow.org/versions/r1.13/api_docs/python/tf/strings/unicode_transcode)

因此,如果要将上述示例中的 UTF-8 解码为 code point 向量,则可以执行以下操作:

TensorFlow 支持 Unicode 编码

当解码包含多个字符串的 Tensor 时,字符串可能具有不同的长度。 unicode_decode 将结果作为 RaggedTensor 返回,其中内部维度的长度根据每个字符串中的字符数而变化。

TensorFlow 支持 Unicode 编码

要了解有关 TensorFlow 中 Unicode 支持的更多信息,请查看 Unicode tutorial colab并浏览 tf.strings 文档(https://www.tensorflow.org/tutorials/representation/unicode)

显示全文
为您推荐
怎么查微信好友的位置在什么地方
怎么查微信好友的位置在什么地方

【导读】 怎么查微信好友的位置在什么地方,下面是小编为你收集整理的,希望对你有帮助!怎么查微信好友的位置在哪里演示机型:Iphone 12&&华为P40&&小米11系统版本:iOS14.4&&EMUI11&&MIUI12.0.7APP版本:微信8.0.9查微信好友的位置共分为3步,本......

发布时间:2023-10-02 19:01:11

宋神宗为什么是昏君 宋神宗为何此生最恨司马光
宋神宗为什么是昏君 宋神宗为何此生最恨司马光

在中国历史上,一个国家如果是昏庸的皇帝执政,那将会是国家的梦魇,但是一位有想法有胆识,却没有能力的皇帝执政,同样也会将国家带入深渊。宋神宗一接位,便实施王安石变法,但由于大臣们害怕危及自身从中阻止,导致变法失败,让本来就处于水深火热中的国家更是雪上加霜,这也就是宋神宗“昏君”称号的由来。...

发布时间:2023-10-02 19:00:08

太白金星的真身是什么:李长庚(老子的徒弟)
太白金星的真身是什么:李长庚(老子的徒弟)

【导读】 太白金星的真身是什么:李长庚(老子的徒弟),下面是小编为你收集整理的,希望对你有帮助!对于太白金星本人的真身有很多说法,有的说太白金星就是李白,还有的说太白金星就是天上的金星。其实太白金星原名交李长庚,是老子的徒弟,太上老君原本是平凡之人,经过了多年修炼之后,终于领悟到了道德真言,并且......

发布时间:2023-10-02 18:01:15

宋仁宗张贵妃的爱情故事 宋仁宗张贵妃关系如何
宋仁宗张贵妃的爱情故事 宋仁宗张贵妃关系如何

宋仁宗在历史上绝对算得上是一位好皇帝,把宋朝治理的景景有条,皇上都有后宫佳丽三千,会有很多的妃子为皇后传宗接代。宋仁宗也有很多的妃子,但他最爱的就是张贵妃了,两人的爱情故事也被后人传颂。...

发布时间:2023-10-02 18:00:11

滑齿龙:欧洲大型海洋爬行类(体长6米/长有鱼鳍)
滑齿龙:欧洲大型海洋爬行类(体长6米/长有鱼鳍)

【导读】 滑齿龙:欧洲大型海洋爬行类(体长6米/长有鱼鳍),下面是小编为你收集整理的,希望对你有帮助!滑齿龙是一种上龙亚目的海洋爬行动物,生存于1亿7000万年前的侏罗纪中期,外形非常像是蛇颈龙,四肢呈现鱼鳍状,而脖子较短,嘴巴像鳄鱼,它最大的特点就是会利用鼻孔在水中搜寻猎物的气味,体长可达6米,属于......

发布时间:2023-10-02 17:01:17

宋仁宗无子的真实原因 宋仁宗孩子为什么死了那么多
宋仁宗无子的真实原因 宋仁宗孩子为什么死了那么多

宋仁宗没有儿子的原因就是他儿子在没出生多长时间就死了。本来宋仁宗有四个儿子,十二个女儿,没想到后来四个儿子都去世了,十二个女儿也才只剩下四个,这对宋仁宗来说是很大的打击,后来宋仁宗不得不让自己的义子来接替他的皇位。...

发布时间:2023-10-02 17:00:11

QQ象棋分几个级别
QQ象棋分几个级别

【导读】 QQ象棋分几个级别,下面是小编为你收集整理的,希望对你有帮助!QQ普通中国象棋与QQ新中国象棋均为13个级别。QQ普通中国象棋级别由低到高分别如下:草民、县丞、县令、都尉、校尉、常侍、中郎将、太守、刺史、将军、太尉、大将军、王。QQ新中国象棋级别由低到高分别如下......

发布时间:2023-10-02 16:01:13

宋仁宗四个公主是谁 这些公主结果怎么样下场如何
宋仁宗四个公主是谁 这些公主结果怎么样下场如何

宋仁宗的孩子是比较多的,但是有很多都夭折了。宋仁宗的命运是比较坎坷的,自己身为明君,但是并没有好的报应,本来有十三个女儿,最后只活下来四个,有三个儿子全部夭折,当时宋仁宗也是比较痛苦的,宋仁宗的四个闺女是比较优秀的。...

发布时间:2023-10-02 16:00:09

宋仁宗多爱张贵妃 宋仁宗为何唯独偏爱张贵妃
宋仁宗多爱张贵妃 宋仁宗为何唯独偏爱张贵妃

宋仁宗是很爱张贵妃,虽然张贵妃不是皇后,但是宋仁宗对张贵妃是很好的,后宫佳丽三千唯独宠张贵妃一人。张贵妃所拥有的魅力是其他人所没有的。...

发布时间:2023-10-02 15:41:11

旧鲨齿龙:最古老的鲨齿龙科(最长10米/仅出土尾椎骨)
旧鲨齿龙:最古老的鲨齿龙科(最长10米/仅出土尾椎骨)

【导读】 旧鲨齿龙:最古老的鲨齿龙科(最长10米/仅出土尾椎骨),下面是小编为你收集整理的,希望对你有帮助!旧鲨齿龙是一种兽脚亚目下的鲨齿龙科恐龙,也是目前已经发现的最原始的鲨齿龙科恐龙,诞生于侏罗纪的末期,平均体长可以达到8.5-10米,属于大型肉食恐龙的一种,它的第一批化石是在非洲的坦桑尼亚发现的。旧鲨......

发布时间:2023-10-02 15:01:16

宋朝最昏庸的皇帝是谁 他为什么可以成功登位
宋朝最昏庸的皇帝是谁 他为什么可以成功登位

宋朝昏庸的皇帝有着许多,但是最有名的无疑就是宋徽宗。在宋徽宗当政时期,无恶不作并且还进行卖官的买卖。宋徽宗可以说是享受了足够的荣华富贵,所住之地,所做之事都彰显了他追求奢侈生活的追求,他持政对于全国的百姓来说都一种悲哀。...

发布时间:2023-10-02 15:00:13

怎么炒西瓜
怎么炒西瓜

【导读】 怎么炒西瓜,下面是小编为你收集整理的,希望对你有帮助!1、西瓜皮洗净切条,火腿肠切条备用。2、锅内热油炒香辣椒、蒜瓣。3、倒入西瓜皮、火腿肠,加入盐、鸡精翻炒均匀即可。西瓜皮:西瓜皮,别名西瓜翠衣。来源为葫芦科植物西瓜的外层果皮。采制7~8月收集西瓜皮,......

发布时间:2023-10-02 14:01:24