0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

大语言模型背后的Transformer,与CNN和RNN有何不同

Carol Li 来源:电子发烧友网 作者:李弯弯 2023-12-25 08:36 次阅读

电子发烧友网报道(文/李弯弯)近年来,随着大语言模型的不断出圈,Transformer这一概念也走进了大众视野。Transformer是一种非常流行的深度学习模型,最早于2017年由谷歌(Google)研究团队提出,主要用于处理自然语言。

2018年10月,Google发出一篇论文《BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding》,BERT模型横空出世,并横扫NLP领域11项任务的最佳成绩。而在BERT中发挥重要作用的结构就是Transformer,之后又相继出现XLNET、roBERT等模型击败了BERT,但是他们的核心没有变,仍然是Transformer。

与传统CNN和RNN相比,Transformer计算效率更高

Transformer是一种基于注意力机制的序列模型,与传统的循环神经网络(RNN)和卷积神经网络(CNN)不同,Transformer仅使用自注意力机制(self-attention)来处理输入序列和输出序列,因此可以并行计算,极大地提高了计算效率。

自注意力机制是注意力机制的一个特例。注意力机制类似于人类的注意力,能够根据任务的需要分配不同权重给输入序列中的不同部分。自注意力机制则更像是一种“全知”的能力,系统可以同时关注输入序列中的所有位置,而不受序列中位置的限制。

自注意力机制是Transformer的核心部分,它允许模型在处理序列时,将输入序列中的每个元素与其他元素进行比较,以便在不同上下文中正确地处理每个元素。

Transformer模型由编码器(Encoder)和解码器(Decoder)两部分组成。编码器将输入序列(例如一句话)转化为一系列上下文表示向量(Contextualized Embedding),它由多个相同的层组成。每一层都由两个子层组成,分别是自注意力层(Self-Attention Layer)和前馈全连接层(Feedforward Layer)。具体地,自注意力层将输入序列中的每个位置与所有其他位置进行交互,以计算出每个位置的上下文表示向量。前馈全连接层则将每个位置的上下文表示向量映射到另一个向量空间,以捕捉更高级别的特征。

解码器将编码器的输出和目标序列(例如翻译后的句子)作为输入,生成目标序列中每个位置的概率分布。解码器由多个相同的层组成,每个层由三个子层组成,分别是自注意力层、编码器-解码器注意力层(Encoder-Decoder Attention Layer)和前馈全连接层。其中自注意力层和前馈全连接层的作用与编码器相同,而编码器-解码器注意力层则将解码器当前位置的输入与编码器的所有位置进行交互,以获得与目标序列有关的信息

Transformer在自然语言处理中广泛应用,例如机器翻译、文本摘要、语言生成、问答系统等领域。相比于传统的递归神经网络(RNN)和卷积神经网络(CNN),Transformer的并行计算能力更强,处理长序列的能力更强,且可以直接对整个序列进行处理。

比如,在问答系统中,Transformer模型主要用于对问题和答案进行匹配,从而提供答案。具体而言,输入序列为问题和答案,输出为问题和答案之间的匹配分数。Transformer模型通过编码器将问题和答案分别转化为向量表示,然后通过Multi-Head Attention层计算问题和答案之间的注意力分布,最终得到匹配分数。

CNN和RNN的特点及应用领域

卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一 。卷积神经网络具有表征学习(representation learning)能力,能够按其阶层结构对输入信息进行平移不变分类(shift-invariant classification),因此也被称为“平移不变人工神经网络(Shift-Invariant Artificial Neural Networks, SIANN)”。

卷积神经网络的研究始于二十世纪80至90年代,时间延迟网络和LeNet-5是最早出现的卷积神经网络;在二十一世纪后,随着深度学习理论的提出和数值计算设备的改进,卷积神经网络得到了快速发展,并被应用于计算机视觉、自然语言处理等领域 。

计算机视觉方面,卷积神经网络长期以来是图像识别领域的核心算法之一,并在学习数据充足时有稳定的表现。对于一般的大规模图像分类问题,卷积神经网络可用于构建阶层分类器(hierarchical classifier),也可以在精细分类识别(fine-grained recognition)中用于提取图像的判别特征以供其它分类器进行学习。对于后者,特征提取可以人为地将图像的不同部分分别输入卷积神经网络,也可以由卷积神经网络通过非监督学习自行提取。

卷积神经网络在计算机视觉方面的应用还包括字符检测(text detection)/字符识别(text recognition)/光学字符读取、物体识别(object recognition)等,此外,在图像语义分割(semantic segmentation)、场景分类(scene labeling)和图像显著度检测(Visual Saliency Detection)等问题中也有应用,其表现被证实超过了很多使用特征工程的分类系统。

然而,由于受到窗口或卷积核尺寸的限制,无法很好地学习自然语言数据的长距离依赖和结构化语法特征,卷积神经网络在自然语言处理(Natural Language Processing, NLP)中的应用要少于循环神经网络,且在很多问题中会在循环神经网络的构架上进行设计,但也有一些卷积神经网络算法在多个NLP主题中取得成功。

循环神经网络(Recurrent Neural Network, RNN)是一类以序列(sequence)数据为输入,在序列的演进方向进行递归(recursion)且所有节点(循环单元)按链式连接的递归神经网络(recursive neural network)。

循环神经网络的研究始于二十世纪80-90年代,并在二十一世纪初发展为深度学习(deep learning)算法之一 ,其中双向循环神经网络(Bidirectional RNN, Bi-RNN)和长短期记忆网络(Long Short-Term Memory networks,LSTM)是常见的循环神经网络。

循环神经网络具有记忆性、参数共享并且图灵完备(Turing completeness),因此在对序列的非线性特征进行学习时具有一定优势。循环神经网络在自然语言处理(Natural Language Processing, NLP),例如语音识别、语言建模、机器翻译等领域有应用,也被用于各类时间序列预报。引入了卷积神经网络(Convolutional Neural Network,CNN)构筑的循环神经网络可以处理包含序列输入的计算机视觉问题。

RNN在NLP问题中有得到应用。在语音识别中,有研究人员使用L双向STM对英语文集TIMIT进行语音识别,其表现超过了同等复杂度的隐马尔可夫模型(Hidden Markov Model, HMM)和深度前馈神经网络。在语音合成领域,有研究人员将多个双向LSTM相组合建立了低延迟的语音合成系统,成功将英语文本转化为接近真实的语音输出 。RNN也被用于端到端文本-语音(Text-To-Speech, TTS)合成工具的开发,例子包括Tacotron 、Merlin 等。RNN也被用于与自然语言处理有关的异常值检测问题,例如社交网络中虚假信息/账号的检测 。

RNN与卷积神经网络向结合的系统可被应用于在计算机视觉问题,例如在字符识别(text recognition)中,有研究使用卷积神经网络对包含字符的图像进行特征提取,并将特征输入LSTM进行序列标注 。对基于视频的计算机视觉问题,例如行为认知(action recognition)中,RNN可以使用卷积神经网络逐帧提取的图像特征进行学习。

总结

可以看到,Transformer以及CNN、RNN是不同的深度学习模型,Transformer是一种基于自注意力机制的特征提取网络结构,主要用于自然语言处理领域。CNN是一种基于卷积层的特征提取网络结构,主要用于图像处理领域。RNN是一种基于循环层的特征提取网络结构,用于自然语言处理,也用于计算机视觉。总体而言,因为使用自注意力机制(self-attention)来处理输入序列和输出序列,Transformer可以并行计算,相比之下计算效率大幅提升。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cnn
    cnn
    +关注

    关注

    3

    文章

    351

    浏览量

    22152
  • Transformer
    +关注

    关注

    0

    文章

    139

    浏览量

    5975
  • rnn
    rnn
    +关注

    关注

    0

    文章

    88

    浏览量

    6869
  • 大模型
    +关注

    关注

    2

    文章

    2298

    浏览量

    2402
收藏 人收藏

    评论

    相关推荐

    RNN与LSTM模型的比较分析

    RNN(循环神经网络)与LSTM(长短期记忆网络)模型在深度学习领域都具有处理序列数据的能力,但它们在结构、功能和应用上存在显著的差异。以下是对RNN与LSTM模型的比较分析: 一、基
    的头像 发表于 11-15 10:05 87次阅读

    【《大语言模型应用指南》阅读体验】+ 基础知识学习

    的表达方式和生成能力。通过预测文本中缺失的部分或下一个词,模型逐渐掌握语言的规律和特征。 常用的模型结构 Transformer架构:大语言
    发表于 08-02 11:03

    cnn常用的几个模型哪些

    CNN(卷积神经网络)是一种深度学习模型,广泛应用于图像识别、自然语言处理等领域。以下是一些常用的CNN模型: LeNet-5:LeNet-
    的头像 发表于 07-11 14:58 581次阅读

    Transformer语言模型简介与实现过程

    在自然语言处理(NLP)领域,Transformer模型以其卓越的性能和广泛的应用前景,成为了近年来最引人注目的技术之一。Transformer模型
    的头像 发表于 07-10 11:48 1228次阅读

    CNNRNN的关系​

    在深度学习的广阔领域中,卷积神经网络(CNN)和循环神经网络(RNN)是两种极为重要且各具特色的神经网络模型。它们各自在图像处理、自然语言处理等领域展现出卓越的性能。本文将从概念、原理
    的头像 发表于 07-08 16:56 577次阅读

    rnn是什么神经网络模型

    RNN(Recurrent Neural Network,循环神经网络)是一种具有循环结构的神经网络模型,它能够处理序列数据,并对序列中的元素进行建模。RNN在自然语言处理、语音识别、
    的头像 发表于 07-05 09:50 504次阅读

    rnn神经网络模型原理

    RNN(Recurrent Neural Network,循环神经网络)是一种具有循环结构的神经网络,它能够处理序列数据,具有记忆功能。RNN在自然语言处理、语音识别、时间序列预测等领域有着广泛
    的头像 发表于 07-04 15:40 475次阅读

    用于自然语言处理的神经网络哪些

    取得了显著进展,成为处理自然语言任务的主要工具。本文将详细介绍几种常用于NLP的神经网络模型,包括递归神经网络(RNN)、长短时记忆网络(LSTM)、卷积神经网络(CNN)、变换器(
    的头像 发表于 07-03 16:17 804次阅读

    NLP模型RNNCNN的选择

    在自然语言处理(NLP)领域,循环神经网络(RNN)与卷积神经网络(CNN)是两种极为重要且广泛应用的网络结构。它们各自具有独特的优势,适用于处理不同类型的NLP任务。本文旨在深入探讨RNN
    的头像 发表于 07-03 15:59 400次阅读

    卷积神经网络cnn模型哪些

    卷积神经网络(Convolutional Neural Networks,简称CNN)是一种深度学习模型,广泛应用于图像识别、视频分析、自然语言处理等领域。 CNN的基本概念 1.1
    的头像 发表于 07-02 15:24 643次阅读

    使用PyTorch搭建Transformer模型

    Transformer模型自其问世以来,在自然语言处理(NLP)领域取得了巨大的成功,并成为了许多先进模型(如BERT、GPT等)的基础。本文将深入解读如何使用PyTorch框架搭建
    的头像 发表于 07-02 11:41 1444次阅读

    语言模型:原理与工程时间+小白初识大语言模型

    解锁 我理解的是基于深度学习,需要训练各种数据知识最后生成自己的的语言理解和能力的交互模型。 对于常说的RNN是处理短序列的数据时表现出色,耳真正厉害的是Transformer,此框架
    发表于 05-12 23:57

    【大语言模型:原理与工程实践】大语言模型的基础技术

    Transformer有效避免了CNN中的梯度消失和梯度爆炸问题,同时提高了处理长文本序列的效率。此外,模型编码器可以运用更多层,以捕获输入序列中元素间的深层关系,并学习更全面的上下文向量表示。 预训练
    发表于 05-05 12:17

    【大语言模型:原理与工程实践】揭开大语言模型的面纱

    Transformer架构,利用自注意力机制对文本进行编码,通过预训练、监督微调和强化学习等阶段,不断提升性能,展现出强大的语言理解和生成能力。 大语言
    发表于 05-04 23:55

    基于Transformer模型的压缩方法

    基于Transformer架构的大型模型在人工智能领域中发挥着日益重要的作用,特别是在自然语言处理(NLP)和计算机视觉(CV)领域。
    的头像 发表于 02-22 16:27 604次阅读
    基于<b class='flag-5'>Transformer</b><b class='flag-5'>模型</b>的压缩方法