从本质上讲,大模型是包含超大规模参数(通常在十亿个以上)的神经网络模型,神经网络是人工智能领域目前最基础的计算模型,它通过模拟大脑中神经元的连接方式,能够从输入数据中学习并生成有用的输出。例如全连接神经网络,包括 1 个输入层,N 个隐藏层,1 个输出层;卷积神经网络(CNN)、循环神经网络(RNN)、长短时记忆网络(LSTM)以及 transformer 架构,都属于神经网络模型,目前业界大部分的大模型都采用了 transformer 架构。
大模型的 “大” 体现在多个方面,不仅参数规模大,架构规模、训练数据、算力需求也都很大。以 OpenAI 公司的 GPT - 3 为例,其隐藏层有 96 层,每层神经元数量达 2048 个,整个架构规模庞大,神经元节点数众多,参数数量大约为 1750 亿。大模型的训练数据同样庞大,如 GPT - 3 采用了 45TB 的文本数据进行训练,即便清洗后也有 570GB,具体包括 CC 数据集(4 千亿词) + WebText2(190 亿词) + BookCorpus(670 亿词) + 维基百科(30 亿词)。训练大模型需要大量的 GPU 算卡资源,且每次训练耗时很长。根据公开数据,训练 GPT - 3 大约需要 3640PFLOP・天(PetaFLOP・Days),若采用 512 张英伟达的 A100 GPU(单卡算力 195 TFLOPS),大约需要 1 个月时间,实际训练时间可能因中断等情况更长。相比之下,参数较少(百万级以下)、层数较浅的是小模型,小模型具有轻量级、高效率、易于部署等优点,适用于数据量较小、计算资源有限的垂直领域场景。
大模型通过对海量数据的学习吸收其中的 “知识”,学习过程称为训练,运用知识的过程称为推理。在预训练阶段,首先要选择大模型框架,如 transformer,然后 “投喂” 海量数据,让大模型学习通用的特征表示。以神经元处理过程为例,神经元的处理类似一个函数计算过程,预训练就是通过输入 x 和输出 y,求解算式中的 “权重(weights)”W,权重决定了输入特征对模型输出的影响程度。除了权重,偏置(biases)也是重要参数类别,偏置即神经元对输入信号的敏感程度,可理解为神经元的 “容忍度”。预训练过程就是通过数据的输入和输出,反复 “推算” 最合理的权重和偏置(即参数),训练完成后保存这些参数,以便后续使用或部署。一般来说,参数越多,模型能学习到更复杂的模式和特征,在各种任务上表现出更强的性能。大模型还具有涌现能力和泛化能力,“涌现能力” 可理解为大模型在一定条件下突然展现出的新能力,而泛化能力则是指模型对未在训练数据中出现的新情况、新任务的适应能力 。
|