"SubwordTokens" (神经网络解码器)

NetDecoder[NetEncoder[{"SubwordTokens", }]]

表示一个解码器,该解码器根据给定的 "SubwordTokens" NetEncoder 的规范将概率矢量序列转换为字符串.

更多信息

  • NetDecoder[][input] 对一个输入应用解码器,产生一个输出.
  • NetDecoder[][{input1,input2,}] 将解码器应用于输入列表以产生输出列表.
  • 解码器输入 input 是概率向量或概率向量序列. 每个概率向量的总和为 1. 每个概率向量的长度是父级 NetEncoder 的令牌列表中元素的数量.
  • 对于每个输入概率向量,解码器通过选择具有最高关联概率的令牌列表中的元素来输出令牌.
  • NetDecoder[][input] 返回一个表达式.
  • 现在仅支持 "BPE" 方法. NetDecoder[NetEncoder[{"SubwordTokens", }]]不管父级编码器的方法如何,都会产生一个 "BPE" 解码器.
  • "BPE" 方法的子选项 "WhitespaceTrimming" 继承自父编码器的 "WhitespacePadding" 子选项(如果存在). 当设置为 LeftRight 时,解码器将从输出字符串的开头或结尾分别修剪单个空格(如果存在). 当设置为 None 时,将不执行任何修整.
  • 如果父编码器不支持 "WhitespacePadding",则 "WhitespaceTrimming" 将为 None.
  • 属性
  • NetDecoder[][data,prop] 可用于计算输入数据的指定属性.
  • 当一个 "SubwordTokens" 解码器附加在网络,net[data,prop]net[data,"oport"->prop] 可用于计算解码输出的指定属性.
  • "SubwordTokens" 解码器仅支持绕过 (bypass) 属性. 设置 propNone 绕过解码并返回输入给解码器.

范例

基本范例  (2)

生成一个 BPE 编码器:

生成一个 BPE 解码器:

解码概率向量的随机序列: