【发布时间】:2020-07-03 08:06:09
【问题描述】:
我想执行一个句子相似度任务并尝试了以下方法:
from transformers import XLNetTokenizer, XLNetModel
import torch
import scipy
import torch.nn as nn
import torch.nn.functional as F
tokenizer = XLNetTokenizer.from_pretrained('xlnet-large-cased')
model = XLNetModel.from_pretrained('xlnet-large-cased')
input_ids = torch.tensor(tokenizer.encode("Hello, my animal is cute", add_special_tokens=False)).unsqueeze(0)
outputs = model(input_ids)
last_hidden_states = outputs[0]
input_ids = torch.tensor(tokenizer.encode("I like your cat", add_special_tokens=False)).unsqueeze(0)
outputs1 = model(input_ids)
last_hidden_states1 = outputs1[0]
cos = nn.CosineSimilarity(dim=1, eps=1e-6)
output = cos(last_hidden_states, last_hidden_states1)
但是,我收到以下错误:
RuntimeError: The size of tensor a (7) must match the size of tensor b (4) at non-singleton dimension 1
谁能告诉我,我做错了什么?有没有更好的方法?
【问题讨论】:
标签: python nlp embedding cosine-similarity transformer