首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于释义的MT5机器学习模型

用于释义的MT5机器学习模型
EN

Stack Overflow用户
提问于 2022-10-21 05:17:45
回答 1查看 54关注 0票数 0

我正在尝试创建一个机器学习模型来解释波斯语文本。我被介绍给mt5作为一种多语言的文本到文本模型。然而,我不知道如何实现这一点。我已经收集了数据。下面是数据的一个示例:数据样本

--更新--

我试着用T5模型来解释,它对英语很有用。但是,我无法从MT5模型中得到逻辑结果。以下是T5版本代码:

代码语言:javascript
复制
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM

tokenizer = AutoTokenizer.from_pretrained("Vamsi/T5_Paraphrase_Paws")
model = AutoModelForSeq2SeqLM.from_pretrained("Vamsi/T5_Paraphrase_Paws")
代码语言:javascript
复制
sentence = sentence_1

text =  "paraphrase: " + sentence + " </s>"

encoding = tokenizer.encode_plus(text,pad_to_max_length=True, return_tensors="pt")
input_ids, attention_masks = encoding["input_ids"], encoding["attention_mask"]


outputs = model.generate(
    input_ids=input_ids, attention_mask=attention_masks,
    max_length=256,
    do_sample=True,
    top_k=120,
    top_p=0.95,
    early_stopping=False,
    num_return_sequences=5
)

print ("\n")
print("Origianl sentence:")
print(sentence)
print ("\n")
print("Paraphrasing:")

for output in outputs:
    line = tokenizer.decode(output, skip_special_tokens=True,clean_up_tokenization_spaces=True)
    print(line)

当我给出模型以下句子时,它会返回以下结果:

原文:

  • 适当地洗手会让你远离新冠肺炎。

释义:

  • 适当地洗手,你将远离新冠肺炎。
  • 正确洗手会让你远离新冠肺炎。
  • 正确洗手会让你远离新冠肺炎。
  • 正确洗手会让你远离新冠肺炎。
  • 适当地洗手会让你远离新冠肺炎。

但当我将模型改为MT5基时,结果是荒谬的。下面是一个示例:

代码语言:javascript
复制
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM

tokenizer = AutoTokenizer.from_pretrained("google/mt5-base")
model = AutoModelForSeq2SeqLM.from_pretrained("google/mt5-base")

原文:

  • 适当地洗手会让你远离新冠肺炎。

释义:

  • ,左。
  • 也是。
  • 。评论
  • o。
EN

回答 1

Stack Overflow用户

发布于 2022-11-21 14:23:51

IMHO mT5不能像T5那样被用于开箱即用的释义生成.您可以找到用于在T5集线器上进行转换生成的T5模型的精调版本,如这一个。有一篇与模型相关的论文,你可以在那里找到解决方案。据我所知,您需要一个标记的数据集,使用该数据集对T5模型进行微调,以便在您的语言中生成释义。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74149057

复制
相关文章

相似问题

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