AI大模型时代的存储发展趋势

从2022年下半年,大模型和AIGC这两个词变得极其火热,而GPU的市场也是一卡难求。对于这种迷乱和火热,让我想起了当年的比特币挖矿和IPFS。似乎世界一年一个新风口,比特币、元宇宙、NFT、AIGC,金钱永不眠,IT炒作永不停歇。

其实,每一个新的风口出现,总有两拨势力在冲突,保守派不断探索业务的真实价值,通过价值投资试图证明这又是一个新的庞氏骗局;另一波则是来势汹汹,集结一切可团结的力量,证明新时代已经来临。

对于这一个个的风口,AIGC和大模型似乎与前几年的风口不一样,让我们看到了一丝真正的未来科技,在这篇文章,主要分享我对大模型&AIGC的看法,以及从存储的视角思索,在大模型时代存储的发展趋势。

一、大模型和AIGC到底指的什么

AIGC:继专业生产内容(PGC,professional-generated content)、用户生产内容(UGC,User-generated content)之后的新型内容创作方式,主要是基于生成对抗网络GAN、大型预训练模型等人工智能技术,自动生成图像、视频、文本 、音频等作品。

AIGC的炒作来自于2022年9月,太空歌剧院获得美国科罗拉多州举办艺术博览会一等奖,熟悉的套路,熟悉的配方,是不是跟NFT炒作一模一样(据佳士得拍卖行官方报道,数码艺术家Beeple的NFT作品《每一天:前5000天》以约合人民币4.51亿元的高价成交,刷新了数码艺术拍品的最高成交价等纪录。)。

AIGC与以前的不同在于,在AI领域有ANI弱人工智能(Artificial Narrow Intelligence)、AGI强人工智能(Artificial General Intelligence)、ASI超人工智能(Super Artificial Intelligence),大模型的出现,让人兴奋的是看到了AGI的希望,而不是所谓的生成一句话或者问答机器人或者AI作画;因为AI初步具备了理解和创造的能力,为了将这种能力通俗的展示给业界和投资界,大家才轰轰烈烈的创造了各种AIGC的应用。

2021年8月份,李飞飞和100多位学者联名发表一份200多页的研究报告《On the Opportunities and Risk of Foundation Models》,在文章中,AI专家将大模型统一命名为Foundation Models,可以翻译为基础模型或者是基石模型,论文肯定了Foundation Models对智能体基本认知能力的推动作用,同时也指出大模型呈现出「涌现」与「同质化」的特性。人工智能-》机器学习-》深度学习-》大模型这条演进之路反映了我们人工智能的发展历史。

从人工智能到机器学习,将计算解耦交给了机器;从机器学习到深度学习,我们把函数架构同质化到了神经网络,只需要提取模型特征;从深度学习到基础模型,我们连特征也放弃了,世界的知识模型走了同质化,相应的也获取了泛化能力。

而涌现能力则是另一个在生物学和自然领域常见的能力,在大模型领域也出现了对应的特征。比如说,上下文学习(In-Context Learning)、思维链(Chain of Thought,CoT)等,基于现有仅有的几个大模型架构来说,业界认知:>100B 出现涌现能力。

最近几年大语言模型(LLM) 获得了越来越多的关注,其中最知名的当属 GPT-3[6] 模型。GPT-3 模型展现了一些大模型才具备的突现能力(就是模型规模必须得增大到一定程度才会显现的能力,比如至少百亿级),其中一项能力就是上下文学习(In-Context Learning)。该能力简单来说就是,对于一个预训练好的大语言模型,迁移到新任务上的时候,只需要给模型输入几个示例(示例输入和示例输出对),模型就能为新输入生成正确输出而不需要对模型做 fine-tuning。

上下文学习(In-Context Learning)CoT本质上是一种特殊的few shot prompt,就是说对于某个复杂的比如推理问题,用户把一步一步的推导过程写出来,并提供给大语言模型(如下图蓝色文字内容所示),这样大语言模型就能做一些相对复杂的推理任务。

思维链(Chain of Thought,CoT)

思维链(Chain of Thought,CoT)

二、大模型产业链的一些影响

大模型不仅仅改变了AI研发模式,也对整个AI的商业链条做了重构,以前每个公司根据自己的业务都会发展自己的模型,公安的人脸识别、淘宝的推荐系统、字节的内容推荐等等,但是在大模型出现后,业界出现了分化:

1、基础层(模型服务)基础层为采用预训练大模型搭建的基础设施。由于开发预训练大模型技术门槛高、投入成本高,因此,该层主要由少数头部企业或研发机构主导。如谷歌、微软、Meta、OpenAI、DeepMind、Stability.ai等。基础层的产品形态主要包括两种:一种为通过受控的api接口收取调用费;另一种为基于基础设施开发专业的软件平台收取费用。

2、中间层(2B)该层与基础层的最主要区别在于,中间层不具备开发大模型的能力,但是可基于开源大模型等开源技术进行改进、抽取或模型二次开发。该层为在大模型的基础上开发的场景化、垂直化、定制化的应用模型或工具。在AIGC的应用场景中基于大模型抽取出个性化、定制化的应用模型或工具满足行业需求。如基于开源的Stable Diffusion大模型所开发的二次元风格图像生成器,满足特定行业场景需求。中间层的产品形态、商业模式与基础层保持一致,分别为接口调用费与平台软件费。

3、应用层(2C)应用层主要基于基础层与中间层开发,面向C端的场景化工具或软件产品。应用层更加关注用户的需求,将AIGC技术切实融入用户需求,实现不同形态、不同功能的产品落地。可以通过网页、小程序、群聊、app等不同的载体呈现。以数据流的视角看,大模型的业务研发和业务流程也发生了不同的变化:

三、大模型的主要技术门槛

回顾ChatGPT的发展历程,我们可以总结出大语言模型(LLM)取得惊艳效果的要点(重要性从高到低排序):
• 愿意烧钱,且接受“烧钱 != 好模型”的现实
• 高质量的训练语料
• 高效的分布式训练框架和充沛优质的硬件资源
• 算法的迭代创新

大模型的技术门槛很高,但是从IT的视角来看,还是因为模型太大带来了不可解决的一些问题。以GPT-3训练为例,我们可以看到,训练过程中基础模型的加载和存储GPT3模型训练内存需求= 参数+梯度+优化器+其他 >2800GB >> 80GB(A100显存大小)。大概需要35张A100卡才能完整加载模型训练过程中的数据,还不包括其他的冗余等信息。

因此,大模型的训练从原来的单卡演进到了多机多卡,多机多卡必然带来资源利用率的下降,GPT-3的计算资源利用率至于大概21.3%。所以这几年大家努力的方向主要是如何提升资源利用率。片上内存(on-chip memory)、芯片间互连的带宽(英伟达的NVlink)、多机多卡的调度是主要的努力方向。

其中片上内存(on-chip memory)、芯片间互连的带宽(英伟达的NVlink)主要是GPU厂商提供的,作为云基础设施厂商主要努力只能发力集群的多机多卡调度。

大部分的大模型训练都走向了并行化,业界几种经典的分布式并行范式,包括流水线并行(Pipeline Parallelism),数据并行(Data Parallelism)和张量并行(Tensor Parallesim)。在并行训练中,主要要解决如下的问题:
• 大模型内存墙:以GPT3为例,模型参数+梯度参数+优化器需要内存2.8TB(175B参数)
• 训练效率:多机并行训练情况下,训练效率下降;单个模型的训练时长可控
• 训练稳定性:训练时长较长,经常出现硬件错误或者网络错误;收敛失败,遇到bug

解决的方式是融合了网络、并行框架、存储。在这篇文章中,我们重点关注存储的需求。

四、大模型训练的数据流以及IO瓶颈

先介绍几个训练相关的概念:单个epoch的阶段:全量样本训练一次, shuffle、读 batch、存checkpoint等。

整个训练数据流如下:

  • 数据打散:遍历样本数据,进行文件的shuffle
  • 数据加载:海量小文件元数据操作(ImageNet 1~100KB,蚂蚁 500KB,文件数量1100亿),定长的文件数据读取(128K256K)
  • Checkpoint存储(原子操作):顺序大 I/O写(模型checkpoint),单个GPU状态checkpoint(单卡一路大块顺序写),时间敏感(30S~5分钟)

根据一些统计的结果,可以发现很多训练的样本集面临的情况是,样本数量非常大,但样本的平均大小又很小。以 ImageNet 数据集为例,整个数据集包含几百万(ImageNet 1K)、上千万(ImageNet 22k)的图片,平均一个图片大小仅为一百多 KB。这个大小对存储系统来说是非常小的。训练存储的IO特征主要是海量小文件管理及元数据高QPS,总结来说:

  • 小IO时延敏感、元数据QPS密集(大量小文件读)
  • 线程固定(硬件相关),单流性能对带宽影响较大
  • 高QPS(定长读取,QPS放大)
  • 预取友好(定长读取,全量单次读LRU缓存无效)

我们以估算值估计一下,OSS读取512KB数据通常30~80ms,Nas读取512K 20ms。在一个32核CPU的机器,加载一个100W的文件时,以32个线程执行reader。对于深度学习训练任务,在模型计算前,一般会对数据集做shuffle,打乱数据之间的顺序,让数据随机化,这样可以避免过拟合。数据的shuffle使得一个任务多个epoch间乱序访问数据,造成传统基于LRU替换策略的缓存方式失效。需要下+decode+标准化都完成后才会下载下一个文件。低时延、高QPS能力的文件存储是AI训练场景的优选。

五、存储数据流在云上云下的区别

在传统的架构里,大容量的冷数据存储和高性能存储是分别维护的,对于 AI 训练的部分,数据的存储、生产、消费都发生在高性能存储中,自成体系,只有转冷的数据才会考虑转移到大容量存储中去。比例较小的反向数据流转(从大容量存储到高性能存储)通过工具来解决。

但到了数据湖里,数据湖存储才是最全量、最权威的数据来源,大部分情况下,数据的第一个落脚点是数据湖,然后才会到高性能的加速层。在存算分离架构中,加速层本身都只是临时的存在,其中的数据生命周期和计算资源同步,略早于计算资源的创建而生成,计算资源销毁时同步删除。这就导致数据湖到加速层的数据同步成为一个高频、核心的需求,需要花大力气解决。

传统AI架构
  • 高性能存储和大容量存储分离部署和维护
  • 所有训练数据在高性能存储中清洗、训练、试用数据转冷后流转到冷存储(手动&工具)
云AI架构
  • 数据入湖后第一时间进入对象存储(数据湖存储底座)
  • 数据训练过程需要从对象存储加载需要的数据(自动化)
  • 部分厂商推荐客户使用手动加载(跳板机映射或者开源主机缓存软件)

湖仓一体是实现海量多模态数据统一管理的必要手段。企业在数字化转型过程中更加关心利用数据和信息来创造自身竞争优势,因此,实现底层数据的统一管理是进行上层资产管理和业务决策分析的关键。

湖仓一体与AI大模型的融合表现在两个方面:一是湖仓一体赋能AI大模型,即创新湖仓一体架构来满足大模型生成式AI,如ChatGPT,对于海量数据存储、训练和实时推理的需求,将通用大模型在湖仓一体中的数据进行迁移学习,生成行业/企业专属大模型;二是AI大模型赋能湖仓一体,即企业更希望湖仓一体解决方案融合ChatGPT来实现开发侧的新业务与应用的敏捷开发、数据智能分析、资源统一管理,以及上层业务侧的数据快速查询分析和总结,并创建一个‘所想即所得’的即席交互页面。

尽管湖仓概念提供了很多希望,但仍然面临技术挑战。市场上的大多数供应商都在优化单个 SQL 引擎来处理一系列工作负载,但这通常是不够的,因为某些应用程序需要更高的性能,而另一些应用程序则需要更大的语言灵活性。

湖仓一体正在受到广泛关注,用户希望优化对其业务最关键的组件。湖仓一体架构可以带来现代数据工程、数据科学和分析用例所需的灵活性、模块化和经济高效的可扩展性,并且可以简化对未来增强功能的利用。然而,为了进一步优化并提供更大的开放性和灵活性,仍有很多工作要做—业界正在寻找开放式数据湖仓最佳实践。   

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

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

相关文章

IIS数字功放MAX98357开发板/评估系统

前言 MAX98357中文介绍请访问下行链接 MAX98357、MAX98357A、MAX98357B小巧、低成本、PCM D类IIS放大器,具有AB类性能中文说明规格书 一般描述 MAX98357 开发板(DEV 板)是一个完全组装并经过测试的 PCB,用于评估 MAX98357 I2S …

C++怎么解决不支持字符串枚举?

首先,有两种方法:使用命名空间和字符串常量与使用 enum class 和辅助函数。 表格直观展示 特性使用命名空间和字符串常量使用 enum class 和辅助函数类型安全性低 - 编译器无法检查字符串有效性,运行时发现错误高 - 编译期类型检查&#xf…

2024 年 6 月区块链游戏研报:Pixels 引发 DAU 波动,行业用户留存率差异显著

作者:Stella L (stellafootprint.network) 数据来源:区块链游戏研究页面 2024 年 6 月,加密货币市场遭遇显著回调,比特币跌幅达 7.3%,以太坊更是下跌了 9.8%。此番波动不可避免地波及区块链游戏领域,导致…

Hudi 写入流程(图)

前言 主要为之前总结的源码文章补充流程图。总结一下整体流程说明 之前以Java Client为例,总结了 Insert 源码的整体流程及部分源码,由于各种原因,没有总结完。长时间不看这方面的源码,容易忘记,之前没有总结流程图,现在回忆起来比较麻烦,不如看流程图方便快捷。所以先补…

2024亚太杯中文赛B题洪水灾害的数据分析与预测原创论文分享

大家好,从昨天肝到现在,终于完成了2024年第十四届 APMCM 亚太地区大学生数学建模竞赛B题洪水灾害的数据分析与预测的完整论文啦。 实在精力有限,具体的讲解大家可以去讲解视频: 2024亚太杯中文赛B题洪水灾害预测原创论文保姆级教…

2024/7/6 英语每日一段

More than half of late-teens are specifically calling for more youth work that offers “fun”, with older teenagers particularly hankering for more jollity, according to a study carried out by the National Youth Agency. One in 10 said they have zero option…

量化机器人:金融市场的智能助手

引言 想象一下,在繁忙的金融市场中,有一位不知疲倦、冷静客观的“超级交易员”,它能够迅速分析海量数据,精准捕捉交易机会,并自动完成买卖操作。这位“超级交易员”不是人类,而是我们今天要聊的主角——量…

Vue 3 中集成 ECharts(附一些案例)

Vue 3 中集成 ECharts 的完全指南 引言 在现代Web开发中,Vue 3以其卓越的性能和灵活的Composition API赢得了广泛的关注。而ECharts,作为开源的一个使用JavaScript实现的强大可视化库,以其丰富的图表类型和高度可定制性成为了数据可视化的首…

计算机的错误计算(二十二)

摘要 计算机的错误计算(十九)展示了计算机的一个错误计算:本应该为 0的算式的结果不为0. 那么,增加计算精度,能确定是0吗?不一定。 计算机的错误计算(十九)展示了计算机对 的错误计…

适用于 Windows的 5 个最佳 PDF 转 Word 转换器

PDF 文件是共享文档的首选格式,但是,此类文件存在限制,使其难以修改或编辑。因此,您可能会发现自己正在寻找一种将 PDF 文件转换为 Word 或其他可编辑格式的方法。 有许多不同的 PDF 转换器,每个转换器的功能略有不同…

vue require引入静态文件报错

如果是通过向后端发送请求,动态的获取对应的文件数据流很容易做到文件的显示和加载。现在研究,一些不存放在后端而直接存放在vue前端项目中的静态媒体文件如何加载。 通常情况下,vue项目的图片jpg,png等都可以直接在/ass…

招聘一个1-3年经验的Java工程师:企业视角的技能与素质要求

个人名片 🎓作者简介:java领域优质创作者 🌐个人主页:码农阿豪 📞工作室:新空间代码工作室(提供各种软件服务) 💌个人邮箱:[2435024119qq.com] &#x1f4f1…

Git错误分析

错误案例1: 原因:TortoiseGit多次安装导致,会记录首次安装路径,若安装路径改变,需要配置最后安装的路径。

Windows搭建本地对象存储服务MinIO并且使用springboot整合

开发文档: MinIO Windows中文文档 MinIO Object Storage for Windows (英文文档) 1、准备工作 准备一个空的文件夹,用来存放minio相关的内容; 这里是在D盘创建一个minio的文件夹; 后续所有跟MinIO相关…

matlab 超越椭圆函数图像绘制

matlab 超越椭圆函数图像绘制 超越椭圆函数图像绘制xy交叉项引入斜线负向斜线成分正向斜线成分 x^2 y^2 xy 1 (负向)绘制结果 x^2 y^2 - xy 1 (正向)绘制结果 超越椭圆函数图像绘制 xy交叉项引入斜线 相对于标准圆&#xf…

ESP32-Wifi问题解答

目录 前言 环境:arduino 芯片:ESP32 一、先上例程 1.大家打开官方例程 点击:示例->Wifi->WifiClient 2:Wifi配置 打开例程如图: 在1处设置WiFi名称 在2处设置WiFi密码 注意:双引号要留着 3:编译,烧录->问题发生了! 二、问题解决方法 1.…

NSK发布新版在线计算工具

July 01, 2024 NSK Ltd. Corporate Communications Department NSK Ltd. announced today that it has improved the engineering tools available on its website. The new engineering tools — NSK Online Catalog, Technical Calculations, and 2D/3D CAD Data — which …

ctfshow-web入门-文件包含(web87)巧用 php://filter 流绕过死亡函数的三种方法

目录 方法1&#xff1a;php://filter 流的 base64-decode 方法 方法2&#xff1a;通过 rot13 编码实现绕过 方法3&#xff1a;通过 strip_tags 函数去除 XML 标签 除了替换&#xff0c;新增 file_put_contents 函数&#xff0c;将会往 $file 里写入 <?php die(大佬别秀了…

E4.【C语言】练习:while和getchar的理解

#include <stdio.h> int main() {int ch 0;while ((ch getchar()) ! EOF){if (ch < 0 || ch>9)continue;putchar(ch);}return 0; } 理解上述代码 0-->48 9-->57 if行判断是否为数字&#xff0c;打印数字&#xff0c;不打印非数字

机器学习——随机森林

随机森林 1、集成学习方法 通过构造多个模型组合来解决单一的问题。它的原理是生成多个分类器/模型&#xff0c;各自独立的学习和做出预测。这些预测最后会结合成组合预测&#xff0c;因此优于任何一个单分类得到的预测。 2、什么是随机森林&#xff1f; 随机森林是一个包含…