当前位置: 首页 > news >正文

网站做tips网站开发人员岗位描述

网站做tips,网站开发人员岗位描述,免费crm系统下载,腾讯云域名控制台简介 Baichuan 2是多语言大模型#xff0c;目前开源了70亿和130亿参数规模的模型。在公开基准如MMLU、CMMLU、GSM8K和HumanEval上的评测#xff0c;Baichuan 2达到或超过了其他同类开源模型#xff0c;并在医学和法律等垂直领域表现优异。此外#xff0c;官方还发布所有预…简介 Baichuan 2是多语言大模型目前开源了70亿和130亿参数规模的模型。在公开基准如MMLU、CMMLU、GSM8K和HumanEval上的评测Baichuan 2达到或超过了其他同类开源模型并在医学和法律等垂直领域表现优异。此外官方还发布所有预训练模型的checkpoints帮助研究社区更好地理解Baichuan 2的训练过程。总结下Baichuan 2特点 多语言支持Baichuan 2专注于训练在多种语言中表现优异的模型包括不仅限于英文。这使得Baichuan 2在处理各种语言的任务时能够取得显著的性能提升。广泛的训练数据Baichuan 2 是从头开始训练的训练数据约有2.6万亿个token。相对于以往的模型Baichuan 2 提供了更丰富的数据资源从而能够更好地支持多语言的开发和应用。垂直领域优化Baichuan 2不仅在通用任务上表现出色还在特定领域如医学和法律的任务中展现了卓越的性能。这为特定领域的应用提供了强有力的支持。 GitHub https://github.com/baichuan-inc/Baichuan2 技术报告 https://cdn.baichuan-ai.com/paper/Baichuan2-technical-report.pdf 预训练 Baichuan 2 base模型(即基座模型)和其他模型的对比评测结果如下可以看出多数评测数据上Baichuan 2遥遥领先 预训练数据集 在构建数据的时候本着追求数据的全面性和代表性从多个来源收集数据包括一般的互联网网页书籍研究论文代码库等。训练语料库的组成如Figure 1所示 可以看出数据类型比较广泛Top3数据类型是科技、商业和娱乐。 数据处理主要关注数据的数量和质量。 数量构建了一个大规模的聚类和去重系统支持LSH局部敏感哈希类和embedding类形式的数据特征。该系统能够在几小时内对万亿级的数据进行聚类和去重从而保证数据的高效利用。基于聚类技术对文档、段落和句子进行去重和评分。这些分数用于后续预训练步骤的数据抽样。不同数据处理阶段的训练数据规模如Figure 2 所示 质量句子级别质量过滤过滤暴力、色情、种族歧视、仇恨言论等有害内容。 模型架构 在模型架构层面主要还是基于Transformer但是做了如下修改 Tokenizer 分词器Tokenizer需要平衡两个关键因素高压缩率以实现高效推理以及适当大小的词汇表以确保每个词嵌入被充分训练。为此Baichuan 2的词汇表大小从 Baichuan 1的 64,000 扩展到 125,696。 在Tokenizer方面使用来自 SentencePiece 的字节对编码BPE。需要补充说明的是不对输入文本使用任何规范化也不像 Baichuan 1那样添加虚拟前缀。此外将数值分割成单个数字以更好地编码数值数据。为了处理包含额外空格的代码数据在Tokenizer中添加了仅包含空格的token。字符覆盖率设置为0.9999稀有字符回退到 UTF-8 字节。将token到最大长度设置为32以兼容较长的中文短语。Baichuan 2 Tokenizer的训练数据来自 Baichuan 2 预训练语料库为了提高覆盖范围采样更多代码示例和学术论文数据。Table 2展示了Baichuan 2分词器与其他分词器的详细比较。 位置编码。在 Baichuan 1 的基础上为 Baichuan 2-7B 采用 Rotary Positional EmbeddingRoPE为 Baichuan 2-13B 采用 ALiBi。ALiBi是一种较新的位置编码技术可以改善外推性能。然而大多数开源模型使用 RoPE 作为位置embeddings像 Flash Attention这样的注意力机制优化方法。这是因为Flash Attention是基于乘法的无需将 attention_mask 传递给注意力操作所以采用RoPE更合适。尽管如此从初步实验结果发现位置嵌入的选择对模型性能影响不大。为了促进关于bias-based 和 multiplication-based注意力机制的进一步研究在 Baichuan 2-7B 上应用 RoPE在 Baichuan 2-13B 上应用 ALiBi(与Baichuan 1 保持一致)。 激活函数和归一化 使用 SwiGLU 激活函数这是一种 switch-activated 的 GLU 变体。然而SwiGLU有一个“双线性”层并包含三个参数矩阵与 原始Transformer的前馈层有两个矩阵不同因此将隐层尺寸从 4 倍隐层尺寸减少到 8/3 隐层尺寸并四舍五入为 128 的倍数。 对于 Baichuan 2 的注意力层采用由 xFormers2 实现的内存高效注意力。通过利用 xFormers 的优化注意力和偏置能力可以在降低内存开销的同时有效地结合 ALiBi 的基于偏置的位置编码。这为 Baichuan 2 的大规模训练提供了性能和效率优势。 在Transformer Block的输入应用层归一化Layer Normalization这对于warm-up更具鲁棒性。此外使用 RMSNorm(均方根归一化)这种方法只计算输入特征的方差效率更高。 优化器 选用AdamW优化器β1 和 β2 分别设置为 0.9 和 0.95。使用 0.1 的权重衰减并将梯度范数剪切到 0.5。模型先用 2,000 个线性缩放step进行warmed up达到最大学习率然后应用余弦衰减直到最小学习率。参数和学习率详情见于Table 3 混合精度 模型训练使用 BFloat16 混合精度在前向和反向计算中使用BFloat16而在优化器更新中使用Float32。与Float16相比BFloat16 具有更好的动态范围使其对训练大型语言模型中的大值更具鲁棒性。然而BFloat16 的低精度在某些设置中会引发一些问题。例如在一些 RoPE 和 ALibi 的实现中当整数超过 256 时torch.arange 操作会由于碰撞而失败导致无法区分附近位置。因此对于一些对于值敏感的操作如位置嵌入使用完整精度。 NormHead 为了稳定训练并提高模型性能对输出嵌入也称为“head”进行归一化。NormHead在实验中有两个优点。 稳定训练。在实验中发现head的范数容易不稳定训练过程中稀有token嵌入的范数变小会扰乱训练动态。NormHead 可以显著稳定训练动态。降低了L2距离在计算logits时的影响。实验中发现语义信息主要通过嵌入的余弦相似性而不是 L2 距离编码。由于当前的线性分类器通过点积计算 logits它是 L2 距离和余弦相似性的混合。NormHead 减轻了在计算 logits 时 L2 距离的干扰。 Max-z 损失 在训练过程中LLM 的 logits 可能变得非常大。虽然 softmax 函数对于绝对 logits 值是不可知的因为它只依赖于它们的相对值。大的 logits 在推理过程中会带来问题因为常见的重复惩罚实现如 Hugging Face 实现3中的 model.generate直接将标量应用于 logits。以这种方式收缩非常大的 logits 可以显著改变 softmax 之后的概率使模型对重复惩罚超参数的选择敏感。受到 NormSoftmax 和 PaLM 中的辅助 z-损失的启发添加一个max-z loss 对logit值进行归一化 其中z是最大的logit值。这有助于稳定训练并使推理时对超参数更具鲁棒性。 Scaling Laws 随着模型大小、数据集大小和用于训练的计算浮点数的增加模型的性能会提高。并且为了获得最佳性能所有三个因素必须同时放大。当不受其他两个因素的制约时模型性能与每个单独的因素都有幂律关系。当这种幂率关系出现时可以提前对模型的性能进行预测。基于该定律可以在深度学习和大型语言模型的训练代价变得越来越昂贵的当下确保性能。 具体如何操作呢在训练数十亿参数的大型语言模型之前先训练一些小型模型并为训练更大模型拟合缩放定律。训练了从 10M 到 3B 一系列模型(最终模型的 1/1000 到 1/10)并且每个模型最多训练 1 万亿个token使用的超参数和数据集与Baichuan 2相同。根据不同模型的最终损失可以获取从训练 flops 到目标损失的映射。为了拟合模型的缩放定律采用了 Henighan 等人2020给出的公式 其中是不可约损失第一项是可约损失它被表示为一个幂律缩放项。是训练 flops 是在该 flops 中模型的最终损失。使用 SciPy4 库的 curve_fit函数来拟合参数。最终拟合的缩放曲线以及预测的 70 亿和 130 亿参数模型的最终损失如Figure 4 所示。可以看到拟合的缩放定律准确地预测了 Baichuan 2 的最终损失。 通过这个实验研究人员可以确定最终的模型规模并为训练提供相应的资源配置以保证训练的高效性和性能表现。 Infrastructure 为了实现GPU资源的高效利用研究人员为弹性训练框架和智能集群调度策略开发了一种协同设计方法。 由于 GPU 在多用户和任务之间共享每个任务的具体行为不可预测这通常导致集群中出现空闲的 GPU 节点。由于配置8块A800 GPUs的单个机器足以满足 Baichuan 7B 和 Baichuan 13B模型的内存需求因此训练框架的设计主要集中在机器级弹性。机器级弹性使其能够根据集群状态动态修改任务资源从而为智能调度算法奠定基础。 为满足机器级弹性的要求训练框架集成了张量并行和ZeRO 驱动的数据并行。在每台机器内部设置张量并行并使用ZeRO共享数据并行以实现机器之间的弹性缩放。 此外采用张量分割技术。通过分割某些计算以减少峰值内存占用如大词汇表的交叉熵计算。这种方法使其能够在不增加额外计算和通信的情况下满足内存需求使系统更高效。 为了在不影响模型准确性的前提下进一步加速训练研究人员实现了混合精度训练在这里使用 BFloat16 执行前向和反向计算而在优化器更新时使用Float32。此外为了有效地将训练集群扩展到数千个GPU整合了以下技术以避免降低通信效率 拓扑感知的分布式训练。在大规模集群中网络连接经常跨越多层交换机。通过策略性地安排分布式训练的排名以最大程度地减少不同交换机之间的频繁访问从而减少延迟并提高整体训练效率。ZeRO 的混合和分层分区。通过将参数分区到 GPUZeRO3 以增加全收集通信开销为代价减少内存消耗。当扩展到数千个 GPU 时这种方法会带来显著的通信瓶颈。为了解决这个问题研究人员提出了一种混合和分层分区方案。具体来说首先将优化器状态分区到所有 GPU 然后自适应地决定哪些层需要激活ZeRO3以及是否分层分区参数。 通过整合这些策略该系统能够在 1,024 个 NVIDIA A800 GPU 上高效地训练 Baichuan 2-7B 和 Baichuan 2-13B 模型实现超过 180 TFLOPS 的计算效率。 对齐 Baichuan 2 还引入了对齐过程从而产生了两个Chat模型Baichuan 2-7B-Chat 和 Baichuan 2-13B-Chat。Baichuan 2的对齐过程包括两个部分有监督微调SFT和来自人类反馈的强化学习RLHF。 监督微调 在监督微调阶段标注人员为各种数据源的提示(Prompt)进行注释每个提示根据与Claude类似的关键原则被标记为有帮助或无害。使用交叉验证到方式验证数据质量会让一位权威的标注者检查特定标注工作组标注的批次样本的质量拒绝任何不符合质量标准的批次数据。最终收集超过 100k 的监督微调样本并基于这些数据训练基座模型。接下来通过 RLHF做强化学习以进一步改进结果。整个 RLHF 过程包括 RM 和 RL 训练如Figure 5 所示。 Reward Model(RM) 为提示(Prompt)设计一个3层次的分类系统包括6个主要类别、30个次要类别和超过200个三级类别。从用户的角度来看希望分类系统能够全面覆盖所有类型的用户需求从训练奖励模型的角度来看每个类别中的提示应具有足够的多样性以确保奖励模型能够很好地泛化。给定一个提示用不同大小和阶段SFTPPO的 Baichuan 2 模型生成多样化的回应。在训练RM时只使用由 Baichuan 2 模型族生成的回应。用于训练奖励模型的损失函数与InstructGPT的损失函数一致。训练得到的奖励模型表现与LLaMA 2一致这表明两个回应之间的分数差距越大奖励模型的区分准确性越高 PPO 获得奖励模型之后使用PPO算法进一步训练语言模型。具体使用了4种模型actor模型负责生成回应、reference模型用于计算固定参数的KL惩罚、reward模型提供整个回应的总体奖励固定参数以及 critic模型用于学习每个token的值。 在RLHF训练过程中critic模型在初始训练时先做20个step的warmed up。再通过标准PPO算法更新critic和actor模型。对于所有模型使用了0.5的梯度裁剪、5e-6的恒定学习率、PPO裁剪阈值ϵ 0.1。将KL惩罚系数β设为0.2并随着step的增加逐渐减小到0.005。对于所有Chat模型包括Baichuan 2-7B-Chat和Baichuan 2-13B-Chat进行350次迭代。 安全 百川的研究人员认为模型的安全性改进不仅在于数据清洗或对齐阶段的约束还在于所有训练阶段中积极获取正面知识并识别负面知识。在整个Baichuan 2训练过程基于这一理念增强了模型的安全性。 预训练阶段 在预训练阶段主要关注数据的安全性。整个预训练数据集进行严格的数据过滤流程从而增强安全性。官方制定了一套规则和模型以去除有害内容如暴力、色情、种族歧视、仇恨言论等。 此外策划了一个中英文双语数据集包括数百家知名网站的数百万网页这代表了各种正面价值领域涵盖政策、法律、弱势群体、普遍价值观、传统美德等。同时提高对该数据集的采样概率。 对齐阶段 建立了一个包含6种类型攻击和100多种细粒度安全价值类别的红队程序由10名具有传统互联网安全经验的专家标注团队初始化安全对齐提示(Prompt)。这些初始化提示是从预训练数据集中检索相关片段然后创建回应最终产生了约1,000个初始化的标注提示数据。 专家标注团队通过初始化的对齐模型引导了一个50人的外包标注团队进行红蓝对抗生成了20万个攻击提示。通过使用专门的多值监督采样方法最大程度地利用攻击数据以生成不同安全级别的回应。 在RL优化阶段也将安全性作为首要考虑 在安全性强化的开始DPO 方法有效地利用了有限数量的标注数据以增强对特定脆弱性问题的性能。通过使用集成有益和无害目标的奖励模型进行了PPO安全性强化训练。 总结 模型百川2参数量7b,13b训练token数2.6万亿tokenizerBPE词表大小125696位置编码7b:RoPE ; 13b:ALiBi (影响不大)最长上下文4096激活函数SwiGLU归一化Layer Normalization RMSNorm注意力机制xFormers2优化器AdamWNormHeadMax-z损失 参考 【论文阅读】《Baichuan 2: Open Large-scale Language Models》
http://www.tj-hxxt.cn/news/133175.html

相关文章:

  • 域名注册管理中心网站百度号码认证
  • 网站开发技术路线与规范wordpress页面没有
  • 如何做网站的seo优化wordpress 更换空间阿里云
  • 上海建站模板搭建中国刚刚发生8件大事
  • 网站开发台州关于电子商务的推广软文
  • 四川省住房和城乡建设厅网站无法进入网站备案 域名证书
  • 工商网站查询企业信息官网全国网站主机要多少钱
  • 网站建设与客户价格谈判技巧开发网站开票名称是什么
  • 钓鱼网站下载汽车网站建设工作室
  • 商城系统开源英文seo是什么意思
  • 淘宝网站开发语言企业标识系统
  • 大连做网站谁家好城市建设游戏模拟网站
  • 定制网站 报价外链管理
  • 一个完整的企业网站网站建设和优
  • wordpress营销型主题关键词优化一般收费价格
  • 潍坊网站定制公司企业营销型网站建设规划
  • 绩溪做网站做机械设备哪个网站好
  • 让做网站策划没经验怎么办网上商城推广方案
  • 广州网站建设 全包怎么给wordpress加rss
  • 电子商务平台网站推广公司网络规划设计方案
  • 网站新闻前置备案如何把代码wordpress
  • 网站开发者模式wordpress主题xstore
  • 商城展示网站wordpress 代码 视频
  • 青岛市黄岛区网站建设西安企业名录电话资料
  • 云浮东莞网站建设怎么做网页广告
  • 建站seo是什么表白网页制作源代码
  • 公司网站招聘费如何做会计分录提高网站排名的方法
  • 成都wap网站建设温州企业建站系统
  • 长春网站建设网科技网站域名
  • 书本翻页 网站模板ppt电子商务网站建设