"Tokens" (神经网络编码器)
NetEncoder["Tokens"]
表示一个编码器,使用标准的英文词汇将字符串中的单词转换成整数代码序列.
NetEncoder[{"Tokens","language"}]
表示一个编码器,对于给定的语言使用标准的词汇.
NetEncoder[{"Tokens",{token1,token2,…}}]
表示一个编码器,使用指定的令牌列表作为词汇.
NetEncoder[{"Tokens",…,"param"value}]
表示一个编码器,其中,其他参数已被指定.
更多信息
- NetEncoder[…][input] 把编码器应用于输入,产生一个输出.
- NetEncoder[…][{input1,input2,…}] 把编码器应用于输入列表,产生输出列表.
- 编码器的输入必须是字符串或带有表示令牌的字符串序列的 TextElement. 如果是字符串,会使用基于"SplitPattern" 值的正则表达式分割成令牌.
- 编码器的输出是介于 1 和 d+1 间的整数序列,其中,d 是词汇中的令牌数. 使用整数 d+1 表示输入中没有出现在词汇中的令牌.
- 输出 NumericArray 的类型是最小的无符号整数,可表示所有可能的输出整数值.
- 在构建网络时,通过指定 "port"->NetEncoder[…] 把编码器附加在网络的输入端口.
- 可以指定以下参数:
-
"IgnoreCase" True 当匹配字符串中的令牌时是否忽略大小写 "SplitPattern" 为了拆分输入字符串为令牌使用的字符串模式 "TargetLength" All 剪裁或填充的最终序列长度 - 当参数 "IgnoreCase"->True,编码前,令牌被有效地转换成小写.
- 当参数 "TargetLength"->All,所有在输入字符串中找到的令牌已被编码.
- 当参数 "TargetLength"->n,输入字符串中找到的前 n 个令牌已被编码,如果找到小于 n 个令牌则会进行填充. 填充值是 d+1,其中 d 是词汇中的令牌数.
- 当参数 "SplitPattern"->None,编码器的输入被假设为形式为 {"token1","token2",…}的字符串的预令牌化列表.
参数
范例
打开所有单元关闭所有单元基本范例 (1)
范围 (6)
使用 TextElement 的自定义令牌化:
使用 TextStructure 的输出计算令牌索引列表: