首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用谷歌的T5嵌入单词?

用谷歌的T5嵌入单词?
EN

Stack Overflow用户
提问于 2022-05-31 16:19:16
回答 1查看 566关注 0票数 1

有可能用谷歌的T5生成单词嵌入吗?

我想这是可能的。但是,我找不到我需要的代码,以便能够在相关的Github (https://github.com/google-research/text-to-text-transfer-transformer)或HuggingFace (doc/t5)页面上生成单词嵌入。

EN

回答 1

Stack Overflow用户

发布于 2022-06-02 21:11:46

是的,这是可能的。只需将单词的ids输入到单词嵌入层:

代码语言:javascript
复制
from transformers import T5TokenizerFast, T5EncoderModel

tokenizer = T5TokenizerFast.from_pretrained("t5-small")
model = T5EncoderModel.from_pretrained("t5-small")
i = tokenizer(
    "This is a meaningless test sentence to show how you can get word embeddings", return_tensors="pt", return_attention_mask=False, add_special_tokens=False
)

o = model.encoder.embed_tokens(i.input_ids)

输出张量具有以下形状:

代码语言:javascript
复制
#print(o.shape)
torch.Size([1, 19, 512])

这19个向量是每个令牌的表示。根据任务的不同,您可以使用ids将它们映射回单个单词。

代码语言:javascript
复制
i.word_ids()

输出:

代码语言:javascript
复制
[0, 1, 2, 2, 3, 3, 3, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 12, 12, 12]
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72451171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档