AI System AI系统对大模型的影响有多深?

AI System AI系统对大模型的影响有多深?要回答这个问题之前,不妨从下面这个问题开始入手思考。

大模型进入了爆发期后,在 LLM 进化树中,BERT(Encoder-Only)、T5(Encoder-Decoder)、GPT(Decoder-Only)分别代表了不同的架构方向。那为什么在大模型时代,曾经风光无限的 BERT 家族 和 T5 家族会逐渐没落了?

从纯算法模型结构上,Google 的 T5 是比 GPT 更加优雅的神经网络模型结构, 但是由于 T5 的模型结构不是线性的,因为在 Decoder 和 Encoder 之间有复杂的连接关系(即对应的 Cross Attention 或者叫做 Cross Condition),导致 T5 在真正大规模堆叠的时候,实际上在工程领域,很难通过分布式并行高效的执行起来。因此,在目前已知的分布式并行优化上,T5 很难通过规模化扩展模型的规模,Scale 到千亿参数以上。

针对直接基于 Decoder-Only 实现的 GPT 模型,在工程领域实现分布式并行优化,会比 T5、BERT 等网络模型更加容易实现。或许不同的算法结构对于网络模型的具体效果上互有高低,但是在模型规模继续 Scale up 的大模型时代,工程上更容易实现分布式并行、更容易扩展、训练 Token 效率更高的模型,一定是更具备优势的,这就是AI 系统反过来影响算法发展,对算子作出的一种选择作用。

因此,我们正在迈进 AI 系统开始影响和决定大模型的发展方向的时代。也是称为计算机 AI 系统相关的工程人员最好的时代,我们可以切身地接触在之前难以想象的集群规模尺度上解决复杂的、最前沿的工程问题,且能为不同的网络模型算法,带来巨大的经济成本和时间成本收益。

目前预训练大模型成本居高( GPT-4 训练一次的成本超过 5000W 美金),再往上翻倍探索下一个 FLOPs 数量级也变得十分困难。因此百亿级别和千亿级别的 MoE 架构开始慢慢成为了大模型时代考虑的下一个主流方向,即如何用更低的成本,更快地训练更大的模型。这将是未来 AI 革命中的主流主题。

客观地预测,未来大模型算法研究也必然朝着 AI 系统的方向去探索:稀疏化(Sparse)将会是今明几年内,学术界和工业界主战场,训练速度每提升 5%,都将节省上千万人民币的训练成本,并在大模型竞赛中占据优势地位。

即使是稠密的大模型,也在探索诸如 GQA(Grouped Query Attention)等算法结构上的优化,推理阶段考虑如何使用 MHA 通过离线的方式转换成为 GQA,减少推理的计算量。这些算法优化并不是为了提升模型的使用效果,而是希望成倍的节省推理阶段 Inference 时的 KVCache 显存和计算峰值 Flops,从而使大模型可以在保存低时延下实现更高的吞吐性能。

因此,如果你是一个想在大模型时代有所建树的算法研究员,不懂 AI 系统将会是非常吃亏的事情。如果你来设计一个新的大模型算法, 一定需要在设计阶段就要考虑如下问题:

  • - 新设计的网络模型结构算法是否更容易进行分布式并行计算?
  • - 新设计的网络模型结构算法需要多久的时间才能训练出更好的效果?
  • - 新设计的网络模型结构算法如何实现超长的记忆能力(长上下文 Sequence Length?
  • - 新设计的网络模型结构算法如何训练和如何推理?

因此,如果你是一个想在大模型时代有所建树的系统研究员,不同 AI 系统将会是非常吃亏的事情。如果你来设计一个系统,满足未来的算法技术发展趋势,一定要在设计阶段开始就要考虑如下问题:

  • - 网络模型结构算法如何实现各种并行时所需的通信量更低?
  • - 网络模型结构算法如何优化实现更少计算量、 更少的显存需求、 更容易进行推理?
  • - 如何设计编译器使得网络模型计算自动优化、实现通信量、计算量、显存占用更少?
  • - 如何设计编译器使得网络模型结构算法能够适配到不同的AI 加速器上执行计算?
  • - 如何设计 AI 计算集群的网络拓扑,减少网络拥塞,降低网络传输耗时,提升线性度?

换言之,在大模型时代,如果提出新的网络模型算法结构可能有 5% 的效果提升,但是引入了额外 50% 的训练成本,那这个新的网络模型算法一定是一个负优化算法,而且不一定能够实现出来,还要支撑各种消融试验和对比实验。50% 的训练成本,基于 Scaling Laws 可以在原模型上多增加 50% 的上下文长度,或者网络模型的规模Scale up 增大一半,可能带来的最终效果提升,远大于新设计出来的网络模型结构算法所提升的 5%。

AI系统对于新算法研究的重要性日益凸显,如今已不仅仅是算法研究的辅助工具,而是成为了其不可或缺的一部分。随着AI系统的不断发展和进步,其在大模型研究中的影响力也愈发显著。可以说,AI系统已经成为了大模型研究中不可或缺的重要力量。因此,对于AI系统的深入研究和应用,对于推动大模型研究的进步和发展具有十分重要的意义。

参考:

  • 2024年大模型基础设施领域(训练、推理、硬件)有什么值得关注研究方向? - 知乎
  • https://zhuanlan.zhihu.com/p/65

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/1335.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

社交创新的标杆:解读Facebook的社交模式

引言 在当今数字化时代,社交媒体已成为人们日常生活和沟通的重要工具。作为全球最大的社交媒体平台,Facebook不仅改变了我们的社交模式,而且对全球的社交文化、商业活动和公共事务产生了深远的影响。本文将深入探讨Facebook的社交模式&#…

C++:面向对象三大特性之一:继承

继承 1.继承理解2.继承方式引起访问变化表格表格理解 3.赋值转换1.普通对象赋值2.继承对象赋值:赋值转换注意 4.继承的作用域5.派生类默认成员函数1.构造函数2.析构函数3.拷贝构造4.赋值重载 6.继承与友元7.继承与静态成员 1.继承理解 继承机制是面向对象程序设计使…

求a+aa+aaa+……(C语言)

一、题目&#xff1b; 二、N-S流程图&#xff1b; 三、运行结果&#xff1b; 四、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>int main() {//初始化变量值&#xff1b;int a 0;int n 0;int i 0;int result 0;int tn 0;//提示用户&am…

spring事务@Transactional

定义一个项目测试 spring 的事务支持情况 项目准备 创建一个名为 mybatis-transaction 的 spring boot 2.x 项目&#xff0c;引入 mybatis 的依赖&#xff0c;如下 使用 spring 官网的脚手架生成项目 https://start.spring.io/ 下载完毕后 pom.xml 如下 <?xml version&quo…

【GPTs分享】GPTs分享之 AskYourPDF Research Assistant​

一、简介 AskYourPDF Research Assistant 是一款高级人工智能研究助手&#xff0c;专门设计用于帮助用户高效从PDF文件和文章中提取信息。它结合了深度学习技术和自然语言处理能力&#xff0c;以便用户能够快速地查询、总结及处理文档内容&#xff0c;并能够生成与文章内容相关…

Redux入门:使用@reduxjs/toolkit构建React应用程序状态管理

随着应用程序复杂性的增加,有效管理应用程序状态变得越来越重要。Redux是一种流行的状态管理解决方案,随着应用程序复杂性的增加,有效管理应用程序状态变得越来越重要。Redux是一种流行的状态管理解决方案,但传统的Redux设置和使用过程比较繁琐。幸运的是,Redux官方团队推出了r…

Nginx防盗链:资源保护新利器,拒绝盗链行为!

点击下方关注我&#xff0c;然后右上角点击...“设为星标”&#xff0c;就能第一时间收到更新推送啦~~~ Nginx防盗链是一种安全机制&#xff0c;用于防止其他网站直接链接到你的网站上的资源&#xff08;如图片、视频、文件等&#xff09;&#xff0c;从而避免不必要的带宽消耗…

P1278 单词游戏 简单搜索+玄学优化

单词游戏 传送门 题目描述 Io 和 Ao 在玩一个单词游戏。 他们轮流说出一个仅包含元音字母的单词&#xff0c;并且后一个单词的第一个字母必须与前一个单词的最后一个字母一致。 游戏可以从任何一个单词开始。 任何单词禁止说两遍&#xff0c;游戏中只能使用给定词典中含有…

Linux 操作系统指令和Vscdoe安装

1、Linux系统介绍 Linux系统的背景介绍我就不介绍了&#xff0c;有兴趣的可以去看看其发展史。 1.1 Linux操作系统的主要特点 Linux操作系统的重要思想&#xff1a;一切皆文件 Linux操作系统的特性&#xff1a; 完全免费 支持多平台 支持多用户、多任务 有良好的界面 完美兼容…

温湿度LCD显示并上传服务器

项目需求 通过温湿度传感器将值传到LCD1602&#xff0c;并实时通过蓝牙透传到手机。 硬件介绍 温湿度传感器 DHT11温湿度传感器 DHT11_温湿度传感器数据格式-CSDN博客 LCD1602LCD1602-CSDN博客 HC-01 继电器模块 硬件接线 LCD1602 D0~D7 --> A0~A7VDD, A --> 5v…

STM32H750外设ADC之双重 ADC 模式

目录 概述 1 双重 ADC 模式介绍 1.1 双重 ADC模式 1.2 双重 ADC 模式的类型 2 双重 ADC 模式寄存器的配置 3 模式功能实现 3.1 注入同步模式 3.2 支持独立注入的常规同步模式 3.2.1 中断的方式 3.2.2 DMA 读取常规数据 3.3 支持独立注入的交替模式 3.3.1 中断触发…

色彩的魔力:渐变色在设计中的无限可能性

夕阳&#xff0c;天空&#xff0c;湖面&#xff0c;夕阳...随着距离和光影的变化&#xff0c;颜色的渐变色&#xff0c;近大远小、近实远虚的透视&#xff0c;为大自然营造了浪漫的氛围。延伸到UI/UX设计领域&#xff0c;这种现实、惊艳、独特的渐变色也深受众多设计师的喜爱。…

setmapAVL树红黑树

目录 关联式容器树形结构的关联式容器setset的模板参数列表set的构造函数set的迭代器set的容量操作set其他操作 multisetmap键值对map的模板参数列表map的迭代器map中元素的修改map的容量与元素访问 multimap底层结构avl树avl树概念AVL树结点的定义AVL树的插入AVL树的旋转AVL树…

python-flask结合bootstrap实现网页小工具实例-半小时速通版

参考&#xff1a; Python之flask结合Bootstrap框架快速搭建Web应用_支持bootstrap的python软件-CSDN博客 https://blog.csdn.net/lovedingd/article/details/106696832 Bootstrap 警告框 | 菜鸟教程 https://www.runoob.com/bootstrap/bootstrap-alert-plugin.html flask框架…

数据结构——7.3 树形查找

7.3 树形查找 概念 二叉排序树&#xff08;BST&#xff09; 二叉排序树&#xff08;Binary Sort Tree&#xff0c;BST&#xff09;&#xff0c;又称为二叉查找&#xff08;搜索&#xff09;树&#xff08;Binary Search Tree&#xff09;&#xff0c;是一种特殊的二叉树&am…

力扣---从前序与中序遍历序列构造二叉树

给定两个整数数组 preorder 和 inorder &#xff0c;其中 preorder 是二叉树的先序遍历&#xff0c; inorder 是同一棵树的中序遍历&#xff0c;请构造二叉树并返回其根节点。 示例 1: 输入: preorder [3,9,20,15,7], inorder [9,3,15,20,7] 输出: [3,9,20,null,null,15,7]示…

使用Docker搭建Redis主从集群

文章目录 ☃️前言☃️搭建❄️❄️架构❄️❄️实例说明❄️❄️搭建第一个服务器上的两个实例❄️❄️搭建第二个服务器上的一个实例 ☃️开启主从❄️❄️改配置❄️❄️重启从节点 ☃️验证 ☃️前言 单节点 Redis 的并发能力是有上限的&#xff0c;要进一步提高Redis的并…

[大模型]TransNormerLLM-7B FastApi 部署调用

TransNormerLLM-7B FastApi 部署调用 1. TransNormer 介绍 TransNormerLLM 是一个基于线性注意力的 LLM&#xff0c;在准确性和效率方面均优于传统的基于 softmax 注意力的模型。它是在包含多达1.4 万亿个令牌的高质量语料库上进行训练的&#xff0c;TransNormerLLM 从之前的…

K-means和DBSCAN

目录 一、K-means和DBSCAN之间的主要区别 二、DBSCAN聚类算法 2.1DBSCAN聚类算法实现点集数据的聚类 2.2DBSCAN聚类算法实现鸢尾花数据集的聚类 三、K-means聚类算法 3.1K-means聚类算法实现随机数据的聚类 3.2K-means聚类算法实现鸢尾花数据集的聚类 一、K-means和DBSC…

014Node.js时间格式包silly-datetime安装与使用

下载&#xff1a; https://www.npmjs.com/网站上下载silly-datetime 安装 npm i silly-datetime --save var sd require(silly-datetime);console.log(new Date()); //2024-04-18T04:40:38.505Zvar dsd.format(new Date(), YYYY-MM-DD HH:mm);console.log(d); //2024…