自然语言处理(NLP)-预训练模型:别人已经训练好的模型,可直接拿来用【ELMO、BERT、ERNIE(中文版BERT)、GPT、XLNet...】

本文主要是介绍自然语言处理(NLP)-预训练模型:别人已经训练好的模型,可直接拿来用【ELMO、BERT、ERNIE(中文版BERT)、GPT、XLNet...】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

预训练模型(Pretrained model):一般情况下预训练模型都是大型模型,具备复杂的网络结构,众多的参数量,以及在足够大的数据集下进行训练而产生的模型.

在NLP领域,预训练模型往往是语言模型,因为语言模型的训练是无监督的,可以获得大规模语料,同时语言模型又是许多典型NLP任务的基础,如机器翻译,文本生成,阅读理解等,常见的预训练模型有BERT, GPT, roBERTa, transformer-XL等.

一、Embeddings from Language Model (ELMO)

在这里插入图片描述

  • 在RNN模型中,每一个Word Embedding的输出是要参考前面已经输入过的数据。所以叫做:Contextualized Word Embedding
  • 不止要考虑每个Word Embedding前文,同时还要考虑后文,所以再从句尾向句首训练。
  • 使用多层Hidder Layer后,每个词最终的 Word Embedding = 该词所有层的 Word Embedding 进行加权平均

在这里插入图片描述

二、BERT/ERNIE:Encoder of Transformer

在这里插入图片描述

  • BERT stands for “Bidirectional Encoder Representations from Transformers”,用于非中文语言;
  • ERNIE stands for “Enhanced Representation through Knowledge Integration ”,用于中文;
  • 中文使用“字”作为输入,英文使用单词作为输入。

三、 Generative Pre-Training (GPT):Decoder of Transformer

在这里插入图片描述




参考资料:
BERT模型详解
BERT代码阅读
XLNet原理
XLNet代码分析
XLNet代码分析(二)
XLNet代码分析(三)
XLNet代码分析(四)
一文读懂Embedding的概念,以及它和深度学习的关系
自然语言处理中的语言模型预训练方法(ELMo、GPT和BERT)
【Semantic Embedding】: CDSSM(CLSM)模型
【Semantic Embedding】: BERT模型3
semantic embedding学习的三种损失函数
Contextual Word Representations:A Contextual Introduction
中文任务全面超越BERT:百度正式发布NLP预训练模型ERNIE
ERNIE: Enhanced Representation through Knowledge Integration
BERT Rediscovers the Classical NLP Pipeline
What Do You Learn From Context? Probing For Sentence Structure In Contextualized Word Representations
Beto, Bentz, Becas: The Surprising Cross-Lingual Effectiveness of BERT
Language Models are Unsupervised Multitask Learners
Talk to Transformer
XLNET
roBERT

这篇关于自然语言处理(NLP)-预训练模型:别人已经训练好的模型,可直接拿来用【ELMO、BERT、ERNIE(中文版BERT)、GPT、XLNet...】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1128928

相关文章

浅析Java中如何优雅地处理null值

《浅析Java中如何优雅地处理null值》这篇文章主要为大家详细介绍了如何结合Lambda表达式和Optional,让Java更优雅地处理null值,感兴趣的小伙伴可以跟随小编一起学习一下... 目录场景 1:不为 null 则执行场景 2:不为 null 则返回,为 null 则返回特定值或抛出异常场景

深入理解Apache Kafka(分布式流处理平台)

《深入理解ApacheKafka(分布式流处理平台)》ApacheKafka作为现代分布式系统中的核心中间件,为构建高吞吐量、低延迟的数据管道提供了强大支持,本文将深入探讨Kafka的核心概念、架构... 目录引言一、Apache Kafka概述1.1 什么是Kafka?1.2 Kafka的核心概念二、Ka

resultMap如何处理复杂映射问题

《resultMap如何处理复杂映射问题》:本文主要介绍resultMap如何处理复杂映射问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录resultMap复杂映射问题Ⅰ 多对一查询:学生——老师Ⅱ 一对多查询:老师——学生总结resultMap复杂映射问题

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Springboot处理跨域的实现方式(附Demo)

《Springboot处理跨域的实现方式(附Demo)》:本文主要介绍Springboot处理跨域的实现方式(附Demo),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录Springboot处理跨域的方式1. 基本知识2. @CrossOrigin3. 全局跨域设置4.

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

python+opencv处理颜色之将目标颜色转换实例代码

《python+opencv处理颜色之将目标颜色转换实例代码》OpenCV是一个的跨平台计算机视觉库,可以运行在Linux、Windows和MacOS操作系统上,:本文主要介绍python+ope... 目录下面是代码+ 效果 + 解释转HSV: 关于颜色总是要转HSV的掩膜再标注总结 目标:将红色的部分滤

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应