首页 > 其他分享 >BERT模型分析

BERT模型分析

时间:2024-10-31 17:35:16浏览次数:6  
标签:分析 BERT Transformer 训练 模型 NSP Block

      在2018年Google提出Transformer框架后,2019年,BERT作为最早期的大模型,便应运而生,因为BERT有强大的自然语言理解能力,因此在其被提出后便风靡NLP领域。

  研读BERT代码,是因为BERT作为大模型起源鼻祖,比GPT起源还早,弄明白其算法思想和其主体代码具体实现逻辑,有利于理解现行流行大模型为何演化为如今这样。

1、算法论文及代码

  • 论文

     《BERT Pre-training of Deep Bidirectional Transformers for Language Understanding》

      https://arxiv.org/pdf/1810.04805

  • 代码

      https://github.com/%20google-research/bert

2、算法模型

  图1为BERT模型简图,仅展示主要组件及其间的关系。

图1 BERT模型简图

       BERT模型主要是由多个Transformer Block构成,BERT默认配置有12个Transformer Block,而Transformer Block内部主要的计算是多头注意力计算,每一个Block为标准Transformer的一个Encoder,即BERT模型主体架构基于Transformer Encoder。

       图2为BERT默认配置,粗略预估其参数量公式如下,其中ffw_params为TransformerBlock中多头注意力计算之后的PositionWiseFeedForward:

 

图2 BERT默认配置

       表1为BERT模型在Transformer Block层数及隐藏层神经元大小取值不同时,根据1计算,得到最终总模型参数量的差异对比。

  BERT另一个比较有特点的是对原始输入的embedding操作,从token、position、segment三个维度提取原始输入中的信息,其中,token embedding即词嵌入,postion对输入信息的每个位置进行编码,segment对输入信息划分为不同的部分,每个部分有其唯一的段落编码。

3、模型预训练

  相较以前的中小模型,BERT模型的参数量比较大,所以需要大量的数据进行训练,为了减少标注数据的成本,BERT采用自监督的模式进行训练。

  图3为BERT的预训练框架,为了较好地训练BERT的自然语言理解能力,BERT特别定义了一个BERTLM的语言模型,其内包含MLM和NSP两个任务,这两个任务都依托于待训练的BERT语言模型,而用于评价训练效果的TrainingLoss,是MLM和NSP两个任务输出的损失之和,这样就有机地将MLM和NSP结合起来进行训练。

图3 BERT预训练框架

 

 

关注更多安卓开发、AI技术、股票分析技术及个股诊断等理财、生活分享等资讯信息,请关注本人公众号(木圭龙的知识小屋)

 

标签:分析,BERT,Transformer,训练,模型,NSP,Block
From: https://www.cnblogs.com/tgltt/p/18518487

相关文章

  • 性能测试业务模型中常用的性能指标说明
    企业在实践过程中不断深入和积累,逐渐对部分性能指标的标准进行了补充,特别是在结合业务场景的分析过程中。一、系统处理能力本文主要是对RPS(RequeslPerSecond,每秒请求数)进行补充。我们知道TPS主要从事务数的角度来进行统计,而RPS主要从请求数的角度来进行统计。其中一个事务......
  • 网络编程-OSI模型
    OSI模型OSI是opensysteminterconnection的缩写,译为“开放式系统互联”。OSI模型把网络通信的工作分为7层,从下到上分别是物理层,数据链路层,网络层,传输层,会话层,表示层和应用层。OSI七层网路模型和TCP/IP四层网络模型的对比。网络模型:就是进行数据封装的。当另一台计算机......
  • AI智能分析视频分析网关区域人数不足检测算法:智能监控的新篇章
    在当今社会快速发展的背景下,公共场所如购物中心、交通枢纽、教育机构等地的人群聚集现象越来越普遍。如何高效地管理和控制这些区域的人流,保障安全的同时提升服务水平,成为一个迫切需要解决的挑战。传统的人流统计方法,例如人工计数或基础的传感器技术,常常因效率低和准确度不足而受......
  • 系统分析师:知识整理(一)
    1、系统规划步骤:(1)对现有系统进行初步调查(2)分析和确定系统目标(3)分析子系统的组成和基本功能(4)拟定系统的实施方案(5)进行系统的可行性研究(6)制定系统建设方案2、需求分析的任务(1)绘制系统上下文范围关系图(2)创建用户界面原型(3)分析需求的可行性(4)确定需求的优先级(5)为需求创建模型(6)创建数据......
  • 构建第一个ArkTS应用(Stage模型)
    copy官网的留个记号:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/start-with-ets-stage-V5创建ArkTS工程若首次打开DevEcoStudio,请点击CreateProject创建工程。如果已经打开了一个工程,请在菜单栏选择File>New>CreateProject来创建一个新工程。选......
  • 智慧园区算法视频分析服务器区域入侵算法:开源免费的目标检测模型及关键特性
    在人工智能和计算机视觉领域,目标检测技术已成为理解和分析视频内容的关键。随着深度学习技术的不断进步,一系列优秀的开源目标检测模型应运而生,它们在提高检测精度和效率方面发挥着重要作用。这些模型不仅推动了学术界的发展,也为工业界提供了强大的工具。以下是一些在开源社区中广......
  • python实战(五)——构建自己的大模型助手
    一、任务目标    本文将利用大语言模型强大的对话能力,搭建一个PC端问答助手。具体来说,我们将使用API来调用我们想要的大模型,并结合Prompt让大模型根据任务类型生成对应的输出。为了更方便地调用大模型助手,我们将结合python第三方库中的语音识别库进行开发,实现调用麦克......
  • 常见大模型——LLama系列
    LLaMA简介LLaMA(LargeLanguageModelMetaAI)是由Meta开发的一种大规模语言模型,旨在提高自然语言处理任务的性能。LLaMA基于Transformer机构,并经过大规模数据训练,以便在多种语言任务中表现出色。LLaMA所采用的Transformer结构和细节,与标准的Transformer结构不同的地方是包......
  • 美畅物联丨掌握Wireshark:GB28181协议报文分析实战指南
    Wireshark,一款在网络安全与协议分析领域享有盛誉的网络嗅探器,凭借其强大的功能集、直观的图形用户界面以及广泛的跨平台兼容性,已成为众多开发者不可或缺的得力助手。其开源特性吸引了大量开发者的积极参与,不断推动其功能的完善与升级。在GB/T28181协议(专为视频监控系统设......
  • 从零开始认识大模型,小白入行必看!
    前言什么是ChatGPT?什么是GPT-4?Bard和PaLM又是什么?它们有什么关系?它们对我们有什么影响?AI技术第一次这么密集地冲击着非从业者们,身处变革之中的我们或许会迷茫,但这本来就是工业革命之后的常态,我们要做的就是像九十年代学习计算机一样拥抱未来。在ChatGPT刚出的时候,我对未......