字符嵌入文本编码器
- class CharacterEmbeddingTextEncoder(dim: int = 32, character_representation: str | Representation | type[Representation] | None = None, vocabulary: str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~ \t\n\r\x0b\x0c', aggregation: str | Callable[[...], Tensor] | None = None)[源代码]
基础类:
TextEncoder一个简单的基于字符的文本编码器。
该编码器使用给定字母表中每个字符的基本表示,以及两个特殊标记用于未知字符和填充。要编码一个句子,它将其转换为字符序列,获取各个字符的表示,并将这些表示聚合为一个单一的表示。
使用
pykeen.nn.representation.Embedding字符表示和torch.mean()聚合, 这个编码器类似于一个带有可训练字符嵌入的字符袋模型。因此,它对字符的顺序是不变的:>>> from pykeen.nn.text import CharacterEmbeddingTextEncoder >>> encoder = CharacterEmbeddingTextEncoder() >>> import torch >>> torch.allclose(encoder("seal"), encoder("sale")) True
初始化编码器。
- Parameters:
dim (int) – 嵌入维度
character_representation (str | Representation | type[Representation] | None) – 字符表示或其提示
词汇表 (str) – 词汇表,即允许的字符
aggregation (str | Callable[[...], Tensor] | None) – 用于池化字符嵌入的聚合方法
方法总结
forward_normalized(texts)编码一批文本。
方法文档