你好!我正在使用管道从huggingface加载BiomedNLP-BiomedBERT-base-uncased-abstract-fulltext模型,但似乎出了问题。以下是我的代码和错误。请帮我解决。
embedding_model = pipeline("feature-extraction", model=r"D:\A-编程\生物医药\BiomedNLP-BiomedBERT-base-uncased-abstract-fulltext")
topic_model = BERTopic(
language='english',
embedding_model=embedding_model,
#verbose=True
)
topics,probilities=topic_model.fit_transform(df_value['text'].tolist())
RuntimeError: The size of tensor a (678) must match the size of tensor b (512) at non-singleton dimension 1
翻译结果:
嗨!我正在使用管道从huggingface加载BiomedNLP-BiomedBERT-base-uncased-abstract-fulltext模型,但似乎出了问题。以下是我的代码和错误。请帮我解决。
3条答案
按热度按时间pu82cl6c1#
你能分享一下你的完整错误信息吗?没有它,很难确定错误来自哪里。
oaxa6hgo2#
从错误信息来看,问题出在模型的词嵌入层。错误提示“The size of tensor a (678) must match the size of tensor b (512) at non-singleton dimension 1...”,意味着输入Tensora的大小为678,而词嵌入层期望的大小为512。这可能是因为预处理过程中文本长度不一致导致的。
为了解决这个问题,你可以尝试以下方法:
torch.nn.utils.rnn.pad_sequence
函数对文本进行填充,使它们具有相同的长度。例如:BertTokenizer
和BertModel
来实现这一点。例如:原始邮件
发件人: "Maarten ***@***.***>",发送时间: 2024年3月3日(星期天)晚上7:09
收件人: "***@***.***>",抄送: "***@***.***>", "***@***.***>",主题: "Re: [MaartenGr/BERTopic] RuntimeError: The size of tensor a (678) must match the size of tensor b (512) at non-singleton dimension 1 (Issue #1852) Could you perhaps share your full error message? It is difficult to say where it originates from without it." — 回复此电子邮件,直接查看GitHub上的版本,或取消订阅。您收到此邮件是因为您创建了该主题。消息ID: "***@***.***"
tcomlyy63#
感谢lucgyn分享错误信息,但由于有太多的
标签,错误信息难以阅读。你能分享一下控制台中出现的完整错误信息吗?