AI智能总结
让数据智能像水电样简单 语言模型发展历程 •上世纪90年代:语言模型出现,统计学方法,使用前面的词预测下一个词•2003年:Bengio《ANeuralProbabilisticLanguageModel》,首度将深度学习思想融入语言模型•2018年:Google提出Transformer神经网络架构,并通过大量文本训练理解语言规则和模式 大语言模型:包含百亿或更多参数的语言模型 •国外:GPT-3(175B)、GPT-4、PaLM(540B)、Galactica和LLaMA等•国内:ChatGLM、文心一言、通义千问、讯飞星火等•大语言模型和小语言模型(如GPT2)采用相似的架构和预训练任务,但是能力截然不同(涌现能力)•涌现能力使得大语言模型只使用很少的样本就可以处理全新的任务 对技术领域的影响 •自然语言处理:理解和生成文本,意图理解、写文章、回答问题、翻译等等•信息检索:智能检索,改进搜索引擎•计算机视觉:文生图、多模态交互 对商业领域的影响 •AIAgent:数字人、个人智能助理、情感分析师、口语陪练、智能运营助手,等等•通用人工智能AGI:大语言模型是AGI的早期形式,引发了对未来人工智能发展的思考和规划 涌现能力 •上下文学习的能力:GPT3首次引入,instruction+fewshotlearning,无需额外训练和参数更新•指令遵循:可以使用指令进行微调,在同样使用指令形式化描述的未见过的任务上表现良好•逐步推理:“思维链”推理策略,可以利用包含中间推理步骤的提示机制来解决复杂推理任务 作为基座模型支持多元应用的能力 •全新的AI范式,借助于海量无标注数据的训练,获得可以适用于大量下游任务的统一大模型•可以缩短每个具体应用的开发周期,人力投入,也可以基于大模型的推理、常识和写作能力,获得更好的应用效果 支持对话作为统一入口的能力 •ConversationasaPlatform(陆奇,2016),以对话形态完成各种各样的任务 参考文献:https://xueqiu.com/1389978604/248392718 •巨大的规模:十亿到万亿,能够捕捉更多的语言知识和复杂的语法结构•预训练和微调:先用无标签数据在大规模文本上预训练,再用有标签数据微调特殊任务•上下文感知:能够理解和生成依赖于前文的文本内容。在对话、文章生成和情境理解方面表现出色•多语言支持:可以构建跨文言和跨文化的应用•多模态支持:文本、图像、语音•涌现能力:能用更少的数据处理更复杂的任务•多领域应用:文本生成、自动翻译、信息检索、摘要生成、聊天机器人、虚拟助手等等•伦理和风险问题:生成有害内容、隐私问题、认知偏差等,这是需要重点解决的问题•幻象、资源消耗、推理速度 语言模型(LanguageModel,LM)目标是建模自然语言的概率分布 词汇表V上的语言模型由函数P(w1w2...wm)表示,表示词序列w1w2...wm作为一个句子出现的可能性大小。对于任意词串w1w2...wm∈V+,则有P(w1w2...wm)=0,并且对于所有词串,函数P(w1w2...wm)满足归一化条件: 由于联合概率P(w1w2...wm)的参数量十分巨大,直接计算P(w1w2...wm)非常困难。如果把w1w2...wm看作一个变量,那么它具有|V|m种可能。 按照《现代汉语词典(第七版)》包含7万词条,句子长度按照20个词计算,模型参数量达到7.9792*1096的天文数字。 为了减少P(w1w2...wm)模型参数量,可以利用句子序列通常情况下从左至右的生成过程进行分解,使用链式法则得到: 由此,w1w2...wm的生成过程可以看作单词逐个生成的过程。首先生成w1,之后根据w1生成w2,再根据w1和w2生成w3,以此类推,根据前m−1个单词生成最后一个单词wm 语言模型通常用于反映一个句子出现的可能性,给定由单词序列w1w2...wn组成的句子S,可以利用语言的特性,使用链式法分解则得到: 其中,词wi出现的概率受它前面的i −1个词w1w2...wi−1影响,我们将这i −1个词w1w2...wi−1称之为词wi的历史。如果历史单词有i −1个,那么可能的单词组合就有|V|i−1种。最简单的根据语料库对P(wi|w1w2...wi−1)进行估计的方法是基于词序列在语料中出现次数(也称为频次)的方法: 随着历史单词数量增多,绝大多数的历史并不会在训练数据中出现,这也意味着 P(wi|w1w2...wi−1)就很可能为0,使得概率估计失去了意义。为了解决上述问题,可以进一步假设任意单词wi出现的概率只与过去n−1个词相关 满足上述条件的模型被称为n元语法或n元文法(n-gram)模型。其中n-gram表示n个连续单词构成的单元,也被称为n元语法单元。 以二元语法为例,一个词的概率只依赖于前一个词,则句子S的出现概率可以表示为: n元语言模型从整体上来看与训练语料规模和模型的阶数有较大的关系,不同的平滑算法在不同情况下的表现有较大的差距。 平滑算法虽然较好解决了零概率问题,但是基于稀疏表示的n元语言模型仍然有三个较为明显的缺点: (1)无法建模长度超过n的上下文; (2)依赖人工设计规则的平滑技术; (3)当n增大时,数据的稀疏性随之增大,模型的参数量更是指数级增加,并且模型受到数据稀疏问题的影响,其参数难以被准确学习。 此外,n元文法中单词的离散表示也忽略了单词之间的相似性 Bengio等人在2000年提出了使用前馈神经网络对进行估计的语言模型。 词的独热编码被映射为一个低维稠密的实数向量,称为词向量(WordEmbedding)。 循环神经网络、卷积神经网络、端到端记忆网络等神经网络方法都成功应用于语言模型建模。 相较于n元语言模型,神经网络方法可以在一定程度上避免数据稀疏问题,有些模型还可以避免对历史长度的限制,从而更好建模长距离依赖关系。这类方法通常称为神经语言模型(NeuralLanguageModels,NLM)。 以ELMo为 代 表 的 动 态 词 向 量 模 型 开 启 了 语 言 模 型 预 训 练 的 大 门。 此 后 ,以GPT和BERT为 代 表 的 基 于Transformer架构的大规模预训练语言模型的出现,使自然语言处理全面进入预训练微调范式新时代。这类方法通常称为预训练语言模型(Pre-trainedLanguageModels,PLM) 2 0 2 0年 ,OpenAI发 布 了 由 包 含1 7 5 0亿 参 数 的 神 经 网 络 构 成 的 生 成 式 大 规 模 预 训 练 语 言 模 型GPT- 3(GenerativePre-trainedTransformer3)。开启了大语言模型的新时代。在不同任务上都进行微调需要消耗大量的计算资源,因此预训练微调范式不再适用于大语言模型。 通过语境学习(In-ContextLearning,ICL)等方法,直接使用大语言模型就可以在很多任务的少样本场景下取得很好的效果。此后,研究人员提出了面向大语言模型的提示词(Prompt)学习方法、模型即服务范式(ModelasaService,MaaS)、指令微调(InstructionTuning)等方法。 Kaplan等人在中提出了缩放法则(ScalingLaws),指出模型的性能依赖于模型的规模,包括参数数量、数据集大小和计算量,模型的效果会随着三者的指数增加而线性提高。 基础模型阶段主要集中于2018年至2021年: •2017年,Vaswani等人提出了Transformer架构,在机器翻译任务上取得了突破性进展。•2018年,Google和OpenAI分别提出了BERT和GPT-1模型,开启了预训练语言模型时代。•2019年,OpenAI发布了GPT-2,参数量15亿。Google发布了参数规模为110亿的T5模型。•2020年,OpenAI进一步将语言模型参数量扩展到1750亿,发布了GPT-3。 此阶段的研究主要集中在语言模型本身,包括对仅编码器(EncoderOnly)、编码器-解码器 (Encoder-Decoder)、仅解码器(DecoderOnly)等各种类型的模型结构都有相应的研究。模型大小与BERT相类似的算法,通常采用预训练微调范式,针对不同下游任务进行微调。但是模型参数量在10亿以上时,由于微调的计算量很高,这类模型的影响力在当时相较BERT类模型有不小的差距。 能力探索阶段集中于2019年至2022年 由于大语言模型很难针对特定任务进行微调,研究人员开始探索在不针对单一任务进行微调的情况下如何发挥大语言模型的能力 •2019年,Radford等人使用GPT-2模型研究了大语言模型在零样本情况下的任务处理能力•Brown等人在GPT-3模型上研究了通过语境学习进行少样本学习的方法•指令微调将大量各类型任务,统一为生成式自然语言理解框架,并构造训练语料进行微调•2022年,Ouyang等人提出了使用“有监督微调+强化学习”的InstructGPT算法 这些方法在直接利用大语言模型进行零样本和少样本学习的基础上,逐渐扩展到利用生成式框架针对大量任务进行有监督微调的方法,有效提升了模型的性能。 突破发展阶段以2022年11月ChatGPT的发布为起点 •ChatGPT通过一个简单的对话框,利用一个大语言模型就可以实现问题回答、文稿撰写、代码生成、数学解题等过去自然语言处理系统需要大量定制开发才能分别实现的能力•2023年3月GPT-4发布,相较于ChatGPT又有了非常明显的进步,并具备了多模态理解能力。GPT-4在多种基准考试测试上的得分高于88%的应试者 各大公司和研究机构相继发布了此类系统,包括Google推出的Bard、百度的文心一言、科大讯飞的星火大模型、智谱ChatGLM、复旦大学MOSS等 •OpenAI在2018年提出GPT,通过语言建模将世界知识压缩到仅解码器的Transformer模型中 •ChatGPT本质上是基于GPT-3.5/GPT-4的会话应用,是人工智能史上最强大的聊天机器人 •GPT-4扩展到支持多模态输入,安全性更好,并应用了一些干预策略来缓解LLM可能出现的问题,如幻觉、隐私和过度依赖[2],模型参数猜测是1.8万亿,最新发布的GPT-4turbo有128ktoken 体验地址:https://claude.ai/chats 由OpenAI离职人员创建的Anthropic公司开发的闭源语言大模型,有以下特点: •致力于提高Claude作为编码助理的能力,Claude2在编码基准和人类反馈评估方面性能显著提升•Claude的上下文窗口从9Ktoken扩展到了100Ktoken(Claude2已经扩展到200Ktoken)•可以进行连贯长输出,可以生成最多4000个token的连贯文档,相当于大约3000个单词•Claude通常用于将长而复杂的自然语言文档转换为结构化数据格式,可以更好地生成JSON、XML、YAML、代码和Markdown格式的正确输出•Claude2的训练数据包括2022年和2023年初更新的数据,这意味着它知道最近发生的事件 体验地址:https://ai.google/discover/palm2/ 2023.3:PaLM基于Google提出的Pathways机器学习系统搭建,8B, 62B, 540B三个版本 2023.5:发布PaLM2,是PaLM540B的升级版,系列模型,最小模型可以部署在移动端,已部署在Google25个产品和功能中,同时也有专有模型版本,如Med-PaLM2 PaLM的几大突破: •最优的缩放比例(训练数据大小/模型参数量),数据和模型大小大致按照1:1的比例缩放,可以达到最佳性能 •训练数据集非纯英文语料,混合了百种语言,包括了网络文档、书籍、代码、数学和对话数据,比用于训练PaL