第六项工作是讨论 Transformer 在 NLP 任务中的实用性。除了一些基础任务,如文本分类、问答、序列

作者:禅与计算机程序设计艺术

1.简介

Transformer

概述

transformer模型是2017年NIPS上提出的一种基于self-attention机制的神经网络结构,其代表了在机器学习领域里一个重要的进步。它通过将注意力机制应用到encoder-decoder结构中,从而可以对长或短序列进行建模并处理文本数据。该模型相比于之前的RNN或者CNN模型在序列建模方面都有明显的优势,尤其是在翻译、文本摘要、语言模型等高级任务上表现出色。其主要特点如下:

  • 模型结构灵活:使用全连接层替换卷积层,降低计算资源消耗;提出多头注意力机制,充分利用不同子空间的信息;使用残差连接优化梯度传播,加速训练速度。
  • 自适应函数选择:对于softmax或者sigmoid函数来说,它们的激活范围受限于输入特征的值,导致模型性能不佳,因此提出更复杂的非线性激活函数,比如GELU函数。
  • 使用位置编码:引入位置编码,使得模型能够学习到绝对的位置信息。

为什么要使用Transformer?

1. 规模可控

Transformer结构的训练时间复杂度和参数数量都远小于RNN等模型,因此在大规模预训练任务上,模型能够达到更好的效果。由于每个GPU只需要处理一个batch的数据,并且采用多线程加速训练,因此无需担心内存和硬件约束的问题。

2. 可并行化

Transformer模型的并行化设计可以有效地实现多个GPU之间的并行计算,能够大幅度减少训练时间。

猜你喜欢

转载自blog.csdn.net/universsky2015/article/details/132222898