首页 > 编程语言 >大语言模型的架构及其训练(目标函数和优化算法)

大语言模型的架构及其训练(目标函数和优化算法)

时间:2024-01-23 23:34:56浏览次数:26  
标签:存储 架构 函数 训练 模型 算法 掩码 优化

先占坑24号早上起来补

大模型的架构

 

大模型的训练

模型训练=目标函数+优化算法
可用任何模型将token序列映射到上下文嵌入中
一、目标函数
1.Decoder-only模型
①映射到上下文嵌入
②用嵌入矩阵获得每个token得分
③指数化、归一化得预测分布
用负对数最大似然作为目标函数
2.Encoder-only模型
①单向(上下文嵌入)一→双向(上下文嵌入)
②BERT目标函数=掩码语言模型+下一句预测
掩码语言模型:模型分布建模、生成随机噪声掩码、减少分布偏移
下一句预测:目标是第二句是否跟随第一句
③RoBERTa
3.Encoder--decoder模型
①BART变换了掩码文档中30%token,打乱子句
②T5、GPT2、GPT3将分类→自然语言生成
二、优化算法
1.小批量随机梯度下降
关键点:
①参数可快速收敛
②优化数值稳定
③内存高效
优化考虑的角度:
①经典优化:二阶方法和约束优化
②机器学习:随机方法、隐式正则化
③深度学习:初始化、归一化
④大语言模型:直觉
2.Adam(adaptive moment estimation)

①创新:a.动量b.自适应步长
②存储占用:模型参数2→4
3.AdaFactor:减少存储占用的优化算法
特点:
①不存储0(m×n)矩阵,存并重构矩阵(和矩阵)
O(m+n)
②除去动量
③用于训川练T5
④可能使训练变困难
4.混合精度训练:减少存储
主权重存储在(浮点)FP32中,在FP16中执行其他操作,使存储减少一半
5.Learning rate:随时间推移而衰减
Transform用warmup提高LR
原因:防止归一化梯度消失
6.initialization
标准初始化,GPT2、3还缩放权重,T5还给注意力矩阵加了一个常数
我的感想是,首先文章里提到的目标函数和优化算法都是我比较熟悉,也在吴恩达的课程作业里做过的,理解起来确实没什么难度。另一方面这次学到的不一样的应该是内存优化的算法了吧,之前学的时候对算法没有什么了解,也不懂内存优化空间优化,而现在对这件事的概念有了,知道了前人从参数方面优化内存的一些尝试和结果,这就是科研。这些参数的调整一定消耗了不少的训练资源和电量,除了有方向的尝试外,提高训练效率也是一个很重要的方向。

标签:存储,架构,函数,训练,模型,算法,掩码,优化
From: https://www.cnblogs.com/asandstar/p/17983660

相关文章

  • 《凤凰架构:构建可靠的大型分布式系统》PDF
    内容简介这是一本从架构视角讲解如何构建大型分布式系统的著作,是超级畅销书《深入理解Java虚拟机》的作者周志明多年架构和研发经验的总结,得到了多位行业资深架构专家的联袂推荐。全书共16章,分为演进中的架构、架构师的视角、分布式的基石、不可变基础设施和技术方法论五部分。第一......
  • OCaml入门-值与函数
    Ocaml使用;;来确认一个表达式的结束举例:#50*50;;-:int=2500OCaml告诉我们50*50的结果是int可以用x为常量50*50命名,注意这里x的值不可以被修改#letx=50*50;;-:valx:int=2500使用let...in...来定义局部变量,在下面这个例子中,y=5......
  • Romberg 数值积分算法+P3779 题解(马上写完)
    Romberg算法吊打Simpson的且不玄学(没有什么十五倍)的数值积分算法。缺点是过程复杂一点,但是只体现在证明上,代码很短。铺垫算法梯形求积公式公式\[\int_a^bf(x)dx\approx\frac{(f(a)+f(b))(b-a)}2\\\text{令}(1)=\frac{(f(a)+f(b))(b-a)}2\]计算梯形求积公式的误差......
  • ORACLE translate函数
     1.语法  2.用途   (1)translate的返回值,是将expr(源字符串)参数中,所有对应在from_string(源字符串中想要被替换的字符)参数中所出现的字符,均按from_string参数中在to_string(想要源字符串中被替换的对应目标字符)参数中对应的字符替换掉后的值。expre源字符串中有......
  • 发育学习:机器人智能发育算法
    看到了一个机器人领域的新概念,叫做“发育学习”,比较陌生,于是查了下资料,这里也是简单谈下个人的理解。在机器学习领域有个稍微相近的概念,叫做“终身学习”,也就是使用同一个模型对于相同类型的不同学习任务进行分别学习,不同任务时序出现,比如,先出现A任务,然后出现B任务,然后出现C任务,......
  • Java高级实战--高级开发和架构师的秘籍
    本JavaWeb高级实战教程全网最强!本教程是实际项目中真正会用到的技术,学完就能成为真正的技术大佬,有亮点的大佬!此教程包含:高并发、项目架构、全局处理、自动化处理、链路追踪、应用监控等,也包含Spring、SpringMVC、SpringBoot、Redis、MQ的高级用法等。很多人有这样的困惑:工作已经是......
  • Java高级实战--高级开发和架构师的秘籍
    ​本JavaWeb高级实战教程全网最强!本教程是实际项目中真正会用到的技术,学完就能成为真正的技术大佬,有亮点的大佬!此教程包含:高并发、项目架构、全局处理、自动化处理、链路追踪、应用监控等,也包含Spring、SpringMVC、SpringBoot、Redis、MQ的高级用法等。很多人有这样的困惑:工作已......
  • 机器人的运动控制是否可以引入生物学信息,生物学信息是否可以辅助机器人的智能控制算法
    相关内容:Roboticprostheticanklesimprove'natural'movement,stability看了上面的论文的介绍(内容没看到,不是openaccess论文),论文的主要思想就是利用人体腿部的神经信号来控制假肢脚踝的控制,从而使单侧下肢截肢后使用假肢的人获得更好的行动稳定性。这个研究的实验......
  • 基于信号功率谱特征和GRNN广义回归神经网络的信号调制类型识别算法matlab仿真
    1.算法运行效果图预览 2.算法运行软件版本MATLAB2022a 3.算法理论概述       本课题,我们主要对MPSK和MFSK调制类型进行识别。在进行信号调制方式区分之前,首先需要对PSK和FSK进行区分,提出了一种基于信号功率谱的PSK和FSK调制方式的识别方法。信号的功率谱计算过程......
  • 基于光流法的车辆检测计数算法matlab仿真,对比Horn-Schunck光流和Lucas-Kanade光流
    1.算法运行效果图预览HS光流 LK光流  2.算法运行软件版本matlab2022a 3.算法理论概述      光流法是一种用于估计图像中像素或特征点运动的方法。在车辆检测与计数应用中,光流法可用于检测图像中车辆的运动,从而进行计数。这里我们将详细介绍Horn-Schunc......