AI时代下,我们需要什么样的存储?

2022年末,生成式对话型人工智能ChatGPT和AI生成图片应用Midjourney问世,1个月内获取过亿用户。根据IDC发布的《2022-2023中国人工智能计算力发展评估报告》显示,我国AI计算力保持快速增长,2022年智能算力规模达到268百亿亿次/秒(EFLOPS),超过通用算力规模,AI行业发展迅速。AI领域的大部分问题都是如何提高机器学习效率的问题,即如何能让机器更高效地学习客观物理世界并代替人类执行工作任务。让机器学习客观物理世界,听懂人类指令执行任务,这个愿景实现的首要难点就是如何能让机器学习读懂人类语言。

历史上,人们尝试过让机器模拟人类进行学习,如学习人类通过语法规则、词性、构词法、分析语句等学习语言。随着数据、算力、模型架构、范式等的升级,模型架构从机器学习到神经网络再到今天的Transformer-Based,对应的能力也在不断发展。对于GPT模型的训练,有四个主要阶段:预训练、有监督的微调、奖励建模、强化学习。

预训练:该阶段占了训练时间的99%,这就是在超级计算机中使用数千个 GPU 以及可能进行数月的训练来处理互联网规模数据集的地方。首先要收集并混合大量数据,例如,GitHub、百科、书籍、问答网站等,然后根据给定的比例进行采样,形成 GPT 神经网络的训练集。第二,要进行标记化,将原始文本翻译成各参数下的整数序列。文档被打包成行,然后用这些特殊的文本结束标记将它们分隔开,告诉神经网络新文档从哪里开始。第三,进行训练并反馈,一开始,在初始化时,GPT 以完全随机的权重开始,因此也将获得完全随机的输出。但是,随着时间的推移,通过不断地对大序列进行抽样并反馈,模型会表现得越来越好。

有监督的微调:当模型经过预训练,已经看起来“正常”的时候,可以根据特定场景进行微调或提示,例如知识问答场景、文档生成场景、情感咨询场景。在有监督的微调阶段,收集少量但高质量的数据集,之后同样进行标记化,并让模型表现得更“专业”。

奖励建模:在奖励建模步骤中,训练者将不再收集数据,而是给模型输入提示(prompt),对于模型输出的补全(completion)进行比较,对模型的多个输出结果进行打分排名,并反馈给模型。值得一提的是,很多情况下,输出的结果看起来都很好,打分排名是非常困难的事情,这可能需要人们甚至几个小时来完成一个比较。

强化学习:在奖励建模阶段,我们已经可以对任何给定提示(prompt)的任意补全(completion)质量进行评分。在强化学习期间,训练者所做的是再次给出大量提示,然后针对奖励模型进行强化学习。

分析以上阶段的存储需求,我们发现:第一,考虑到过去5年中模型参数呈指数增长,下一代大语言模型很可能是万亿参数模型,快速增长的模型需要足够的空间来存储。第二,预训练和有监督的微调两个阶段,需要准备大量的训练集,尤其是预训练阶段,训练集的多少很大程度上决定了模型的表现,因此也需要相应的存储空间。

这么多存储空间从哪来?目前各种计算节点访问存储的方式有两种:是硬件存储阵列或分布式存储。传统硬件存储阵列可以保障每个逻辑卷的低延迟和高可用性,但存在水平可伸缩性差、成本高、可能形成许多“孤立的数据岛”的问题,从而使存储成本高,存储资源利用率低。分布式存储将数据分布在多个存储节点上,提供高可用性和可扩展性,但通常部署复杂,且难以保证性能和稳定性。这个时候,就需要存储资源盘活系统(Storage Resource Reutilization System,SRRS)。

存储资源盘活系统是一个ZIP包。它可以安装在装有Linux操作系统的任何品牌、配置的物理服务器、裸金属服务器、虚拟机甚至容器实例上,向上层提供块存储服务。存储资源盘活系统与硬件驱动完全解耦,且支持硬件异构。存储资源盘活系统允许集群中的每个Linux操作系统实例具有不同的硬件配置,例如不同的CPU数量、不同的内存大小、不同的本地硬盘驱动器容量等。

存储资源盘活系统作为一组用户态进程来运行,不依赖于任何特定版本的Linux内核或Linux发行版,不依赖或修改操作系统环境,不垄断整个硬盘驱动器,不干扰任何其他进程的执行。因此,存储资源盘活系统可以在同一个Linux操作系统实例中与其他应用程序并发运行,在不影响整体功耗的情况下大大提高了硬件利用率,也在一定程度上缓解了AI机房“耗电高”的痛点。

存储资源盘活系统是高性能的。存储资源盘活系统采用分布式双控制器架构,像传统硬件存储阵列一样提供低延迟和高可用性,像传统分布式存储一样提供高可扩展性和高吞吐量。它可以轻松从3台服务器扩展到数千台服务器,并逐个从数千台服务器减少到3台服务器,上述过程中不会出现服务不可用的情况。对于AI行业中训练样本、模型参数的指数级增长,存储资源盘活系统可以自如应对。

你可能感兴趣的:(存储)