[UNILM]论文实现:Unified Language Model Pre-training for Natural Language.........

文章目录

论文:Unified Language Model Pre-training for Natural Language Understanding and Generation

作者:Li Dong, Nan Yang, Wenhui Wang, Furu Wei, Xiaodong Liu, Yu Wang, Jianfeng Gao, Ming Zhou, Hsiao-Wuen Hon

时间:2019

地址:https://github.com/microsoft/unilm

一、完整代码

这里我们使用python代码进行实现

python 复制代码
# 完整代码在这里
# 有时间再弄.......

二、论文解读

2.1 介绍

这篇论文主要讲的是一个统一的语言模型的预训练 ,其就是结合三种语言模型来对结果进行优化:unidirectional, bidirectional, sequence-to-sequence;前者的代表是GPT;中间的代表是BERT;后面很新奇,但是其本质也很简单,类似于GPT在mask加掩码;

这里并不是一个模型中包含这三种层来进行训练,而是共享参数然后对每一个语言模型的要求进行mask再来训练;

一个语言模型对应一个或几个下游任务,让模型理解这个下游任务,然后叠加,这个就是UNILM

2.2 架构

模型架构如图所示:

这个不就是mask一下吗,换着花样水,感觉就是统一了一下,没想到这也能发论文,哈哈哈哈;

以上是其架构的公式;注意这里在训练时M结构是不发生改变的;

2.3 输入端

这里在输入端和bert一样,选择加随机掩码的方式,把随机的字符换成[mask]

2.4 结果

Question Answering

第一个被称为extractive QA,其中答案是段落中的文本跨度。另一种称为generative QA,答案需要动态生成。

Question Generation

Given an input passage and an answer span, our goal is to generate a question that asks for the answer.

就是给一段文本和答案,输出该答案的问题;

Response Generation

这样可以说明我们结合三种模型的效果在训练步骤一致的情况下和BERT是不相上下的,但是这里要清楚的是:UNILM的初始架构是和BERT large是一致的,这样看来UNILM有种类似于regularization的效果;

三、过程实现

实现过程比较简单,有时间再弄;

四、整体总结

这篇文章最重要一点就是结合多种模型来适配多种任务得到的效果要比单一的模型要好;

相关推荐
一位正在转型AI全栈的前端工程师5 小时前
AI 全栈学习之旅 -Week 11:从 CLI 到浏览器:用 FastAPI、SSE 和 Vue 3 做一个可审核的 ReAct Agent
前端·python
洛阳纸贵6 小时前
AI-PyTorch(一)基础代码实操和自动求导
人工智能·pytorch·python
2601_962284506 小时前
uv:终结 Python 虚拟环境管理乱局
python·项目管理·uv·虚拟环境·依赖管理
Patrick在香港6 小时前
Claude + Python 数据管道:一次字段改名,786 行历史数据被静默重写
开发语言·windows·python·claude·数据工程·数据校验·数据管道
the局外人6 小时前
学习 FastAPI 的 Day 3:企业级目录与数据库迁移
后端·python·fastapi
Ray13336 小时前
交付级定时数据管道:改 JSON 声明调度,84 个单测全绿
python
mldong6 小时前
AI Agent 不能自己签字:用 Python 工作流引擎给 AI 加一道人类审批闸门
后端·python·agent
青少儿编程课堂6 小时前
贪心算法进阶:区间调度与最少资源整合解析
c++·python·算法·贪心·信息学竞赛·区间调度
Yanjun2i6 小时前
Agent学习记录六:Tool 类 + Tool Registry
开发语言·python·学习
2601_962381867 小时前
Python异步编程async/await核心用法
python·async/await·事件循环·异步编程·并发调度