AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


一篇对大语言模型(LLMs)进行全面、深入分析的43页综述(Word2Vec作者出品)
发布日期:2024-04-11 18:34:22 浏览次数: 2334 来源:PaperAgent


论文题目:Large Language Models: A Survey论文链接:https://arxiv.org/pdf/2402.06196.pdf

这篇综述由Word2Vec的作者Tomas Mikolov等大佬出品,对大语言模型(LLMs)进行一个全面的概述、回顾与分析(每一个模块都很干货,其中第四部分对如何构建一个LLM做了全景图概述,独一份),以下是论文的主要内容概要:

1、介绍了语言建模的历史背景,从统计语言模型到神经网络模型,再到预训练语言模型和LLMs的发展。

流行语言模型类型:Encoder-Only、Decoder-only、Encoder-Decoder 、GPT Family、LLaMA Family 、PaLM Family、Other Popular LLMs

一些流行语言模型的高级概述

2、LLMs的兴起:讨论了通过在大规模文本数据上训练数十亿参数的LLMs,展现出强大的语言理解和生成能力。

大模型的强大能力矩阵

LLM的能力可以分为三个主要类别:
  • 基础能力编码(Coding)、理解(Comprehension)、世界知识(World knowledge)、多语言(Multilingual)
  • 进阶能力指令遵循(Instruction following)、上下文学习(In-context learning)、推理(Reasoning)。
  • 聚合能力:与用户进行交互(Interacting with users)、工具利用(Tool utilization)、自我改进(Self-improvement)。

3、LLMs家族:详细回顾了三个主要的LLMs家族:GPT、LLaMA和PaLM,以及它们的模型特性、贡献和局限性。

三个主要的LLM家族

4、构建LLMs:探讨了构建LLMs的关键技术,包括数据准备、模型架构、预训练、微调和指令调优。

一些最具代表性的大型语言模型(LLM)框架的时间线

LLMs全景图、训练和运行过程:

  1. LLM架构(LLM Architectures):这部分展示了LLMs的三种主要架构类型:

  • 编码器-仅(Encoder-Only):这类模型专注于理解输入文本的上下文,适用于文本分类、命名实体识别等任务。

  • 解码器-仅(Decoder-Only):这些模型专注于文本生成任务,如文本续写或翻译。

  • 编码器-解码器(Encoder-Decoder):这类模型结合了编码器和解码器,适用于需要理解输入并生成输出的任务,如摘要、翻译或问答。

  • 数据清洗(Data Cleaning):在训练LLMs之前,需要对数据进行清洗,包括去除噪声、处理异常值和消除重复数据,以提高模型性能。

  • 标记化(Tokenizations):这是将文本分割成更小单元(如单词或子词)的过程,常用的标记化方法包括BytePairEncoding、WordPieceEncoding和SentencePieceEncoding。

  • 位置编码(Positional Encoding):为了在模型中保留序列中单词的顺序信息,位置编码被添加到输入嵌入中。这包括绝对位置嵌入(APE)、相对位置嵌入(RPE)、旋转位置嵌入(RoPE)和相对位置偏置(Relative Positional Bias)。

  • 模型预训练(Model Pre-training):LLMs在大量未标记文本上进行预训练,以获得基本的语言理解能力。这通常涉及自监督学习,如下一个句子预测(NSP)或掩码语言建模(MLM)。

  • 微调和指令调整(Fine-tuning and Instruction Tuning):为了使基础模型适应特定任务,需要进行微调。指令调整是一种特殊类型的微调,它使用人类反馈来指导模型的行为。

  • 对齐(Alignment):为了确保LLMs的行为与人类的目标、偏好和原则一致,需要进行对齐。这包括使用人类反馈(RLHF)和AI反馈(RLAIF)等方法。

  • 解码策略(Decoding Strategies):在生成文本时,LLMs使用不同的解码策略,如贪婪搜索(Greedy Search)、束搜索(Beam Search)、Top-k采样和Top-p采样(Nucleus Sampling)。

  • 成本效益训练/推理/适应/压缩(Cost-Effective Training/Inference/Adaptation & Compression):为了更经济高效地训练和使用LLMs,采用了优化训练、低秩适配(LoRA)、知识蒸馏和量化等技术。

  • 如何构建LLMs全景图


    5、LLMs的应用:描述了如何使用和增强LLMs,包括LLM局限性、Prompt工程、RAG、工具利用和LLM智能体

    LLMs如何使用和增强

    6、数据集和基准:回顾了用于LLMs训练、微调和评估的流行数据集,广泛使用的评估指标,以及大语言模型(LLMs)分类方式。

    用于评估和训练大型语言模型(LLMs)的各种数据集及其应用:基本任务数据集、新兴能力数据集、增强能力数据集

    LLM评价Benchmark与评价指标:HumanEval (PASS@k)、DialogSum(ROUGE )、GSM8K(Accuracy)、GPT4Tools(Success Rate)等

    LLMs评常见分类方式:参数规模(小型、中型、大型、超大型类型(基础、指令、聊天模型)、起源(原始、微调)、可用性(开/闭源)

    7、提供了LLMs开发和部署的开源工具和资源列表:

    A. LLM训练/推理框架(LLM Training/Inference Frameworks)

    • DeepSpeed:一个优化库,简化了分布式训练和推理,支持大规模语言模型。

    • Transformers:由HuggingFace提供的库,包含数千个预训练模型,适用于文本、视觉和音频任务。

    • Megatron-LM:NVIDIA开发的高效、模型并行的Transformer模型。

    • BMTrain:一个高效的大型模型训练工具包,支持分布式训练。

    • GPT-NeoX:基于Megatron-DeepSpeed库,提供更高的可用性和优化。

    • LoRA:支持大型语言模型的低秩适应,减少可训练参数数量。

    • ColossalAI:提供分布式深度学习模型的并行组件。

    B. 部署工具(Deployment Tools)

    • FastChat:一个开放平台,用于训练、服务和评估基于LLM的聊天机器人。

    • Skypilot:一个框架,用于在任何云上运行LLMs、AI和批处理作业。

    • vLLM:一个快速且易于使用的LLM推理和服务库。

    • text-generation-inference:一个部署和服务于LLMs的套件。

    • LangChain:一个框架,用于开发由语言模型驱动的应用程序。

    • OpenLLM:一个开源平台,用于在现实世界应用中部署和操作LLMs。

    • Embedchain:一个开源RAG框架,简化了AI应用的创建和部署。

    • Autogen:一个框架,允许使用多个代理来解决任务。

    • BabyAGI:一个自主AI代理,基于给定目标生成和执行任务。

    C. 提示库(Prompting Libraries)

    • Guidance:一种编程范式,提供优于传统提示和链接的控制和效率。

    • PromptTools:一套开源工具,用于实验、测试和评估LLMs、向量数据库和提示。

    • PromptBench:一个基于PyTorch的Python包,用于评估LLMs。

    • Promptfoo:一个测试和评估LLM输出质量的工具。

    D. 向量数据库(VectorDB)

    • Faiss:由Facebook AI Research开发的库,用于高效相似性搜索和聚类。

    • Milvus:一个开源向量数据库,用于支持嵌入相似性搜索和AI应用。

    • Qdrant:一个向量相似性搜索引擎和向量数据库。

    • Weaviate:一个基于GraphQL的向量搜索引擎,支持高维数据的相似性搜索。


    最后还讨论了LLMs面临的开放性挑战,如模型效率、新架构、多模态模型、改进的LLMs使用和增强技术,以及安全和伦理问题。

    整体而言,这篇论文为读者提供了一个关于LLMs的深入视角,包括它们的技术细节、应用案例、性能评估以及未来的研究方向


    53AI,企业落地应用大模型首选服务商

    产品:大模型应用平台+智能体定制开发+落地咨询服务

    承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

    联系我们

    售前咨询
    186 6662 7370
    预约演示
    185 8882 0121

    微信扫码

    与创始人交个朋友

    回到顶部

     
    扫码咨询