notebook notebook
首页
  • 计算机网络
  • 计算机系统
  • 数据结构与算法
  • 计算机专业课
  • 设计模式
  • 前端 (opens new window)
  • Java 开发
  • Python 开发
  • Golang 开发
  • Git
  • 软件设计与架构
  • 大数据与分布式系统
  • 常见开发工具

    • Nginx
  • 爬虫
  • Python 数据分析
  • 数据仓库
  • 中间件

    • MySQL
    • Redis
    • Elasticsearch
    • Kafka
  • 深度学习
  • 机器学习
  • 知识图谱
  • 图神经网络
  • 应用安全
  • 渗透测试
  • Linux
  • 云原生
面试
  • 收藏
  • paper 好句
GitHub (opens new window)

学习笔记

啦啦啦,向太阳~
首页
  • 计算机网络
  • 计算机系统
  • 数据结构与算法
  • 计算机专业课
  • 设计模式
  • 前端 (opens new window)
  • Java 开发
  • Python 开发
  • Golang 开发
  • Git
  • 软件设计与架构
  • 大数据与分布式系统
  • 常见开发工具

    • Nginx
  • 爬虫
  • Python 数据分析
  • 数据仓库
  • 中间件

    • MySQL
    • Redis
    • Elasticsearch
    • Kafka
  • 深度学习
  • 机器学习
  • 知识图谱
  • 图神经网络
  • 应用安全
  • 渗透测试
  • Linux
  • 云原生
面试
  • 收藏
  • paper 好句
GitHub (opens new window)
  • 深度学习

    • Posts

      • 机器学习模型评估方法和优化
      • Dropout 技术一览
      • NLP 中的 Tokenization 方法总结
      • 基于深度神经网络的聚类算法
      • ERNIE 系列的设计思路
        • 1. ERINE
          • 1.1 ERINE 简介
          • 1.2 Knowledge Masking Task
        • 2. ERNIE 3.0
    • PyTorch 入门

    • 鱼书进阶-自然语言处理

    • 深度学习-李宏毅

    • 李宏毅-2017版

    • 李宏毅-2019版

    • 预训练语言模型-邵浩2021版

    • 王树森

  • 机器学习

  • 知识图谱

  • AI
  • 深度学习
  • Posts
yubin
2023-06-06
目录

ERNIE 系列的设计思路

参考 深度学习进阶篇-国内预训练模型[5]:ERINE、ERNIE 3.0、ERNIE-的设计思路、模型结构、应用场景等详解 (opens new window)

# 1. ERINE

ERNIE: Enhanced Representation through Knowledge Integration (opens new window)

# 1.1 ERINE 简介

ERINE 是百度发布一个预训练模型,它通过引入三种级别的 Knowledge Masking 帮助模型学习语言知识,在多项任务上超越了BERT。在模型结构方面,它采用了 Transformer 的 Encoder 部分作为模型主干进行训练。

接下来,我们将聚焦在ERNIE本身的主要改进点进行讨论,即三个层级的 Knowledge Masking 策略。这三种策略都是应用在ERNIE预训练过程中的预训练任务,期望通过这三种级别的任务帮助 ERNIE 学到更多的语言知识。

# 1.2 Knowledge Masking Task

训练语料中蕴含着大量的语言知识,例如词法,句法,语义信息,如何让模型有效地学习这些复杂的语言知识是一件有挑战的事情。BERT使用了MLM(masked language-model)和NSP(Next Sentence Prediction)两个预训练任务来进行训练,这两个任务可能并不足以让BERT学到那么多复杂的语言知识,特别是后来多个研究人士提到NSP任务是比较简单的任务,它实际的作用不是很大。

考虑到这一点,ERNIE提出了Knowledge Masking的策略,其包含三个级别:ERNIE将Knowledge分成了三个类别:

  • token级别(Basic-Level)、
  • 短语级别(Phrase-Level)
  • 实体级别(Entity-Level)。

通过对这三个级别的对象进行Masking,提高模型对字词、短语的知识理解。

下图展示了这三个级别的Masking策略和BERT Masking的对比,显然,Basic-Level Masking 同BERT的Masking一样,随机地对某些单词(如 written)进行Masking,在预训练过程中,让模型去预测这些被Mask后的单词;Phrase-Level Masking 是对语句中的短语进行masking,如 a series of;Entity-Level Masking是对语句中的实体词进行Masking,如人名 J. K. Rowling。

20230606143647

除了上边的Knowledge Masking外,ERNIE还采用多个异源语料帮助模型训练,例如对话数据,新闻数据,百科数据等等。通过这些改进以保证模型在字词、语句和语义方面更深入地学习到语言知识。当ERINE通过这些预训练任务学习之后,就会变成一个更懂语言知识的预训练模型,接下来,就可以应用ERINE在不同的下游任务进行微调,提高下游任务的效果。例如,文本分类任务。

异源语料:来自不同源头的数据,比如百度贴吧,百度新闻,维基百科等等

# 2. ERNIE 3.0

编辑 (opens new window)
上次更新: 2023/06/07, 13:42:57
基于深度神经网络的聚类算法
基础

← 基于深度神经网络的聚类算法 基础→

最近更新
01
Deep Reinforcement Learning
10-03
02
误删数据后怎么办
04-06
03
MySQL 一主多从
03-22
更多文章>
Theme by Vdoing | Copyright © 2021-2024 yubincloud | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×