"Characters" (神经网络编码器)
NetEncoder["Characters"]
表示一个编码器,将 ASCII 字符串中的字符转换成整数代码序列.
NetEncoder[{"Characters",table}]
表示一个编码器,将字符转换成由列表 table 中的字符组成的字符串.
NetEncoder[{"Characters",table,form}]
表示一个编码器,将字符串中的字符转换成输出形式 form.
NetEncoder[{"Characters",…,"param"value,…}]
表示一个编码器,其中指定了其他参数.
更多信息
- NetEncoder[…][input] 对一个输入应用编码器,产生一个输出.
- NetEncoder[…][{input1,input2,…}]对一系列输入应用编码器,产生一系列 输出.
- 由 table 指定的从字符到代码的映射关系可以有以下形式:
-
"c1c2…" 将每个字符 ci 映射到连续的可用代码 "c1c2…"n 将所有字符 ci 映射到代码 n "c1c2…"Automatic 将所有字符 ci 映射到下一个可用代码 n;;mspec 将 n 和 m 之间的字符映射到 spec {spec1,spec2,…} 从 speci 中按顺序分配代码 - table 中可使用以下符号字符集:
-
Automatic 所有可打印的 ASCII 字符,加上空格、制表符 (tab) 和换行符 LetterCharacter 字母 a 到 z,和字母 A 到 Z DigitCharacter 数字 0 到 9 WordCharacter LetterCharacter 和 DigitCharacter 的并集 PunctuationCharacter 所有可见的 ASCII 标点符号字符 WhitespaceCharacter 空格、制表符 (tab) 和换行符 StartOfString 出现在字符串开头前的虚拟字符 EndOfString 出现在字符串末尾后的虚拟字符 _ 任何未分配的字符 - NetEncoder["Characters"] 适用于典型的英文散文,由所有可打印的 ASCII 字符以及制表符、空格和换行符组成.
- NetEncoder["Characters"] 等价于 NetEncoder[{"Characters",{"\t","\n",FromCharacterCode[Range[32,126]]}}].
- 当 form 为 "Index" (默认)时,编码器的输出由与输入字符串中的字符对应的整数代码组成.
- 当 form 为 "UnitVector"时,编码器的输出由 n 维单位向量组成,其中第 i 个向量在第 pi 个方向上,其中 pi 是对应于第 i 个字符的代码.
- 在构建网络时,可通过指定 "port"->NetEncoder[…] 将编码器添加到网络的输入端口上.
- NetEncoder[{"Characters",…}][["Alphabet"]] 产生编码器可识别的字符的列表.
- NetDecoder[NetEncoder[{"Characters",…}]] 给出一个 NetDecoder[{"Characters",…}],与给定的编码器具有相同的编码.
- 当参数设置为 "IgnoreCase"True 时,大写字母和小写字母将被编码为相同的值. 默认值为 "IgnoreCase"False.
- 当参数设置为默认的 "TargetLength"->All 时,对在输入字符串中找到的所有字符进行编码.
- 当参数 "TargetLength"->n,输入字符串中发现的前 n 个令牌是被编码的,如果少于 n 个令牌,则进行填充. 如果 EndOfString 出现在令牌列表中,填充值是与之相关联的整数代码,否则,使用与最后一个令牌相关联的代码.