您现在的位置是:主页 > MT4外汇平台 >

用mT5模型微调中文分类任务示例

2022-04-05 10:55MT4外汇平台 人已围观

简介用mT5模型微调中文分类任务示例 mT5模子是T5模子正在众讲话数据集C4上的络续锻炼,T5自身是比力早了,是2019年的一个模子,不过其后又有良众次分歧的升级。 最初是prompt tuning,即是咱...

  用mT5模型微调中文分类任务示例mT5模子是T5模子正在众讲话数据集C4上的络续锻炼,T5自身是比力早了,是2019年的一个模子,不过其后又有良众次分歧的升级。

  最初是prompt tuning,即是咱们现正在一经有了良众好像bert/gpt/t5如许的预锻炼模子,不过它们都很大,或者有几十亿或者几百亿个参数。

  那这些模子实行普通的fine-tune自身就很糜掷资源,而一个公司或者项目或者须要良众分歧的职责基于这些模子,每个职责又须要孤单安插,也很糜掷资源。

  咱们通过gpt-2/gpt-3的极少zero-shot/few-shot learning为策动点,即是咱们给分歧职责分歧的提示(prompt),就能够很少的锻炼就能够正在统一个模子结束分歧的职责。

  最初阶,这些prompt即是极少格外的句子,好比说咱们给gpt3的提示是:“1+1=2;2+2=4;4+5=9;5+6=”如许的提示,让模子络续天生,欲望能输出5+6的准确谜底。

  那么咱们如何找到每个职责的最好的prompt呢?当然咱们能够人工计划去一点一点测验,或者痛快穷举,当然也有良众基于分歧步骤的测试,能够参考上面提到的综述论文。

  除了hard-prompt以外,假设咱们念要更好的结果,是不是咱们能够计划极少格外的好像token的东西,咱们称之为prompt embedding,把它和素来模子自身的embedding对齐。 如许操纵self-attention的机制,让模子自身能够读取咱们参与的embedding。

  而锻炼,即是只更新咱们参与的prompt embedding的梯度,也即是只锻炼模子的至极小的一局限参数,而不去更新举座模子。

  如许明显模子锻炼用的资源就会更好,安插的时分咱们也只须要安插一个原版模子,只须要遵照分歧职责,插入分歧的prompt embedding就好了。

  咱们说了咱们要做中文的分类职责,mT5如许的encoder-decoder布局原来自然的做的是sequence-to-sequence布局,好像呆板翻译/对话闲扯之类的

  咱们先定位职责为,输入一句(段)中文文本,输出一个三分类的标签,0,1,2。

  decoder的输入,也没什么好说的,终究咱们不是seq2seq职责,不须要格外的输入。

  正在代码中的encoder和decoder的输入中,参与了prompt embedding的占位符,是肆意token id都能够,反正城市被咱们的代码替代掉的。

  咱们要获取的是decoder终末的输出,并把输出中的极少格外字符处所,看成咱们的三分类结果。

  decoder默认断定会输出一个词外长度的向量,咱们只拿个中3个利用,本质代码中我是利用3,4,5,三个格外token id行动鉴定三分类的结果。

  咱们整个算计loss也只算计终末decoder输出的这三个token的概率比力,好比3的概率最大,那么即是分类0,4的大即是分类1,5的大即是分类2。

  最初利用tansformers就能够很轻易的去下载和挪用谷歌的T5/mT5模子

  然后咱们修建一个替代原版模子的输入器,用来把用于锻炼的prompt embedding参与到模子。

  下面代码紧要参考github.com/kipgparker/soft-prompt-tuning这个repo实行窜改,由于这个repo的锻炼时基于GPT的,而咱们是基于mT5的,是以举座代码上略有区别,并且这个repo的锻炼代码也不太完备。

Tags: 外汇骗局案例 

广告位
    广告位
    广告位

标签云