AIGC大模型为什么需要那么多参数?

前言

之前看了一些人工智能方面的介绍文章,看到许多文章都说,AIGC大模型需要的参数很多,规模在百万亿级别。我就很好奇,怎么会需要那么多参数。今天刚好有时间,探寻一下答案。

AIGC是什么?

AIGC(Artificial Intelligence Generated Content)的中文翻译是生成式人工智能,生成式人工智能是一种可用于创建新内容和想法的人工智能,可以创建的新内容包括对话、故事、图像、视频和音乐(后两类目前还没有成熟的产品)。生产内容经历了专业生产内容PGC(Professional-generated Content)--> 用户生产内容UGC(User-generated Content)之后,生产内容又迎来了一个新的里程碑,感觉平时很少用ChatGPT等类似工具的创作功能,基本上都是问询已有知识,看来没有充分利用好这些工具。

AIGC实际上也是一种机器学习模型,既然是机器学习模型,那么肯定需要设计一套算法,使用数据进行训练。AIGC模型是基于大量数据进行预先训练的基础模型(Foundation Models)。现今,随着越来越多预训练基础模型的开源,大模型商业化的探索,AIGC 应用迭代速度呈现指数级发展,从由 Stable Diffusion 文生图模型驱动的 AI 作画应用,再到以大语言模型(LLM)驱动的智能聊天机器人,这场人工智能颠覆性革命方兴未艾。

预训练模型是什么?

预训练模型(pre-training model)分为两个阶段:预训练阶段(pre-training)和 微调(fune-tuning)阶段。

预训练阶段一般会在超大规模的语料上,采用无监督(unsupervised)或者弱监督(weak-supervised)的方式训练模型,期望模型能够获得语言相关的知识,比如句法,语法知识等。因为预训练阶段要承受超大规模语料的"洗礼",所以预训练模型通常都是超级模型,一方面体现在它具备足够多的语言知识,一方面是因为它的参数规模很大。

微调阶段是利用预训练好的模型,去定制化地训练某些任务,使得预训练模型"更懂"这个任务。例如,利用预训练好的模型继续训练文本分类任务,将会获得比较好的一个分类结果,直观地想,预训练模型已经懂得了语言的知识,在这些知识基础上去学习文本分类任务将会事半功倍。利用预训练模型去微调的一些任务被称为下游任务(down-stream)。

大规模预训练模型的突出优势在于,能够从海量未标注的数据上学习语言本身的知识,而后在少量带标签的数据上微调,从而使下游任务能够更好地学习到语言本身的特征和特定任务的知识。这种预训练模型不仅能够充分利用广泛的网络资源,而且还能完美地解决人工标记数据较为复杂的问题。因此,预训练模型几乎成了自然语言处理(NLP)任务的标配。

2018年出现的大规模自监督(self-supervised)神经网络是真正具有革命性的。这类模型的精髓是从自然语言句子中创造出一些预测任务来,比如预测下一个词或者预测被掩码(遮挡)词或短语。这时,大量高质量文本语料就意味着自动获得了海量的标注数据。让模型从自己的预测错误中学习10亿+次之后,它就慢慢积累很多语言和世界知识,这让模型在问答或者文本分类等更有意义的任务中也取得好的效果。说的就是谷歌的BERTOpenAI GPT之类的大规模预训练语言模型。

机器学习中各种监督学习概念

模型学习的本质是学习一种函数的映射关系。数据是模型学习的原料,通常训练一个模型需要大量的数据。现实生活中存在大量没有标注的数据,标注数据是人工添加的标签,因此标注数据通常需要花费大量的人力和物力。数据分为有标签的数据和无标签的数据,输入数据有无标签对应着不同的训练方式。不同的训练方式分为有监督学习、无监督学习、半监督学习、自监督学习、弱监督学习。

  • 有监督:用有标签的数据训练;
  • 无监督:用无标签的数据训练;
  • 半监督:同时用有标签和无标签的数据进行训练。先前通常是两阶段的训练,先用(较小规模的)有标签数据训练一个Teacher模型,再用这个模型对(较大规模的)无标签数据预测伪标签,作为Student模型的训练数据;目前已经有很多直接端到端(end-to-end)地训练,大大减少半监督训练的工作;
  • 自监督:在无标注数据上训练,通过一些方法(例如加一个多层感知器-mlp作为分类器等)让模型学习到数据的内在表征(inner representation),再接下游任务。但接了下游任务之后还是需要在特定的有标签数据上微调(finetune),只是有时候可以选择把前面的层完全固定,只微调后面接的网络的参数。
  • 弱监督:用包含噪声的有标签数据训练。

重点说一下自监督学习,由于自然语言很难标注且又存在大量未标注的句子,所以NLP 领域的预训练模型主要c采用自监督学习。NLP任务早期的预训练模型就是广为人知的单词词嵌入编码。由于单词通常存在一词多义的问题,进一步提出了能够捕获单词上下文语义信息的句子级别单词词嵌入编码模型,这种模型几乎成为当前 NLP 任务的最常见模式,其中最具代表性的是自回归语言模型(GPT)和自编码语言模型(BERT)。受二者的启发,后期又提出了很多更高效的预训练模型,如 RoBERTa、XLNET、BART和T5

NLP领域知名的预训练模型

Transformer

Transformer 架构是自然语言处理领域最近几乎所有主要发展的核心,2017 年由 Google 推出。当时自然语言处理中,有三种特征处理器:卷积神经网络、递归神经网络和后起之秀 Transformer。Transformer 风头已经盖过两个前辈,它抛弃了传统的卷积神经网络和递归神经网络,Transformer 模型使用了 Self-Attention 机制,不采用RNN顺序结构,使得模型可以并行化训练,并能拥有全局信息。而且训练模型所需的计算资源也大为减少。Transformer可以直接模拟句子中所有单词之间的关系,无论这些单词的位置如何"。它使用固定大小的上下文(也就是前面的单词)来实现这一点。Transformer原理请参考此文

BERT

BERT(Bidirectional Encoder Representation from Transformers)是2018年10月由Google AI研究院提出的一种预训练模型,BERT 是第一个无监督、深度双向的自然语言处理模型预训练系统。它只使用纯文本语料库进行训练。它从单词的两边(左边和右边)来考虑上下文。以前所有的努力方向,都是一次只考虑单词的一边,要么是左边,要么是右边。这种双向性有助于模型更好地理解使用单词的上下文。在发布的时候,该模型在机器阅读理解顶级水平测试SQuAD1.1中表现出惊人的成绩: 全部两个衡量指标上全面超越人类,并且在11种不同NLP测试中创出SOTA表现,包括将GLUE基准推高至80.4% (绝对改进7.6%),MultiNLI准确度达到86.7% (绝对改进5.6%),成为NLP发展史上的里程碑式的模型成就。可以在短短几个小时内(在单个 GPU 上)使用 BERT 训练自己的自然语言处理模型(例如问答系统)。想详细了解请参考此文

OpenAI GPT

2018 年 6 月,OpenAI 发表论文介绍了自己的语言模型 GPT,GPT 是"Generative Pre-Training"的简称,它基于 Transformer 架构,GPT模型先在大规模语料上进行无监督预训练、再在小得多的有监督数据集上为具体任务进行精细调节(fine-tune)的方式。先训练一个通用模型,然后再在各个任务上调节,这种不依赖针对单独任务的模型设计技巧能够一次性在多个任务中取得很好的表现。想了解GPT模型的详情请参考此文

其它的还有ELMoFlairStanfordNLP等,限于篇幅,这里不再赘述。

NLP大模型的核心壁垒是什么?

大模型的核心壁垒包括算法、数据、算力。具体表现为算法参数规模庞大、需要海量数据、对算力要求高。

算法

模型参数是什么? 举例说明一下 :如aX1+bX2=YX1X2是变量,Y是计算结果,ab是参数。同理,一个神经网络模型,无论规模多大,它都是一个函数,只不过这个函数极其复杂,维度极其多,但依然是由参数、变量来组成,我们通过数据来训练模型,数据就是变量,而参数,就是通过变量的变换,学到的最终的常量。

语言大模型的参数规模亿级~万亿级(BERT作为baseline),图像大模型参数规模在亿级~百亿级范围。先不说研发新的大模型预训练模型算法,就是想搞懂一个这么大级别参数预训练模型算法,并非朝夕之功就能消化吸收。

数据

模型参数的大幅增长,必然需要更大的数据来训练,否则模型强大的表征能力就会轻易地过拟合(只有当机器学习模型泛化到其领域内所有类型的数据时,才能获得准确的预测。当模型无法泛化以及与训练数据集的拟合过于紧密时,会发生过拟合)。由于标注成本和训练周期的限制,传统有监督的方式将变得不现实,因此无法全用标注好的监督数据,需要利用自监督的方法,挖掘数据中的信息。从18年BERT的33亿词符,到19年XLNet的330亿词符,20年GPT-3的6800亿词符,数据量以十倍速度增长(英文数据集大小也差不多止于此),22年PaLM 使用了7800亿词符训练。数据方面,中国不缺数据,甚至互联网数据比美国还要多,但是选择哪些数据去训练、采用什么样的方式处理,这些都是核心的壁垒。

算力

模型对算力的要求一直持续增长,小模型阶段可以用1张GPU可以解决,也不算太夸张,很多个体,小企业也都可以玩,但是到了超大规模预训练模型阶段,超大的参数、数据带来对算力的要求,是普通玩家难以企及的。从算力需求的角度看,训练ChatGPT这样的生成式AI需要至少1万张英伟达A100显卡,单张显卡的价格目前是六七万,性能更优的V100单价8万元人民币,也就是说光算力投入至少就要达到六七个亿以上,只有少数头部公司和机构能承担得起。对于商业机构而言,花几个亿买一堆显卡,还不一定能产出成果,这是必须要思考的问题。

最后

现在明白了AIGC模型的参数很多的原因是因为依赖的预训练模型本身就设计了那么多参数。预训练模型听起来很高大上,实际上就是一个函数等式,有数百亿级别的参数需要调优。预训练模型对于海量的未标注数据,采用的是自监督学习,对数据进行初级分类。后面还需要特定标签数据,微调大模型参数,才会得到比较满意的数据处理结果。另外,本文所有内容均搜索自网上公开的文档,如若侵权,请联系作者删除。

相关推荐
AI极客菌1 小时前
Controlnet作者新作IC-light V2:基于FLUX训练,支持处理风格化图像,细节远高于SD1.5。
人工智能·计算机视觉·ai作画·stable diffusion·aigc·flux·人工智能作画
水豚AI课代表7 小时前
分析报告、调研报告、工作方案等的提示词
大数据·人工智能·学习·chatgpt·aigc
程序员X小鹿9 小时前
全部免费!6款AI对口型神器,让照片开口说话唱歌,早晚用得上,建议收藏!(附保姆级教程)
aigc
真忒修斯之船10 小时前
大模型分布式训练并行技术(三)流水线并行
面试·llm·aigc
学习前端的小z11 小时前
【AIGC】如何通过ChatGPT轻松制作个性化GPTs应用
人工智能·chatgpt·aigc
zzZ_CMing13 小时前
大语言模型训练的全过程:预训练、微调、RLHF
人工智能·自然语言处理·aigc
杰说新技术16 小时前
Meta AI最新推出的长视频语言理解多模态模型LongVU分享
人工智能·aigc
热爱跑步的恒川1 天前
【论文复现】基于图卷积网络的轻量化推荐模型
网络·人工智能·开源·aigc·ai编程
火山引擎边缘云1 天前
创新实践:基于边缘智能+扣子的智慧婴儿监控解决方案
物联网·aigc·边缘计算
算家云1 天前
如何在算家云搭建Aatrox-Bert-VITS2(音频生成)
人工智能·深度学习·aigc·模型搭建·音频生成·算家云