大模型应用开发之LLM入门

一、大模型概述

1、大模型概念

LLM是指用有大量参数的大型预训练语言模型,在解决各种自然语言处理任务方面表现出强大的能力,甚至可以展现出一些小规模语言模型所不具备的特殊能力

2、语言模型language model

语言建模旨在对词序列的生成概率进行建模,以预测未来tokens的概率,语言模型的发展:

1)统计语言模型SLM: 统计语言模型使用马尔可夫假设(Markov Assumption)来建立语言序列的预测模型,通常是根据词序列中若干个连续的上下文单词来预测下一个词的出现概率,经典的例子是n-gram模型,在此模型中一个词出现的概率只依赖于前面的n-1个词,比如一个3gram模型只考虑前两个词对第三个词出现概率的影响

2)神经语言模型NLM:使用神经网络来预测词序列的概率分布,如RNN包括LSTM和GRU等变体,这样NLM就可以考虑更长的上下文或整个句子的信息,而传统的统计语言模型使用固定窗口大小的词来预测;在该模型中引入分布式词表示,每个单词被编码为实数值向量,即词嵌入(word embeddings)用来捕捉词与词之间的语法关系

3)预训练语言模型PLM: PLM开始在规模无标签语料库上进行预训练任务,学习语言规律知识,并且针对特定任务进行微调(fine-tuning)来适应不同应用场景;而对于大规模的长文本,谷歌提出了transformer--通过自注意力机制(self- attention)和高度并行化能力,可以在处理序列数据时捕捉全局依赖关系,极大提高序列处理任务的效率

4)大语言模型LLM: 当一些研究工作尝试训练更大的预 训练语言模型(例如 175B 参数的 GPT-3 540B 参数的 PaLM)来探索扩展语言 模型所带来的性能极限。这些大规模的预训练语言模型在解决复杂任务时表现出 了与小型预训练语言模型(如 330M 参数的 BERT 1.5B 参数的 GPT2)不同 的行为,这种大模型具 有但小模型不具有的能力通常被称为“涌现能力”(Emergent Abilities),这些大型的预训练模型就是LLM

3、大模型特点 

1)参数数量庞大,数据需求巨大

2)计算资源密集

3)泛化能力强

4)迁移学习效果佳

4、小模型vs大模型

5、大模型企业应用

1)通用大模型

2)行业大模型

3)产业大模型

二、大模型基础

1、大模型构建过程

1)大规模预训练 (Large-Scale Pre-training)

目标为模型参数找到好的“初值点”,使其编码世界知识,具备通用的语言理解和生成能力。可以看作是世界知识的压缩
方法 使用海量(当前普遍 2~3T tokens 规模,并有扩大趋势)的无标注文本数据,通过自监督学习任务(当前主流是“预测下一个词”)训练解码器架构 (Decoder Architecture) 模型。
关键要素 

1. 数据:高质量、多源化数据的收集与严格清洗至关重要,直接影响模型能力。 

2. 算力:需求极高(百亿模型需数百卡,千亿模型需数千甚至万卡集群),训练时间长。 

3. 技术与人才:涉及大量经验性技术(数据配比、学习率调整、异常检测等),高度依赖研发人员的经验和能力。

2)指令微调与人类对齐 (Instruction Fine-tuning & Human Alignment)

动机 预训练模型虽有知识,但不擅长直接按指令解决任务。需要进一步训练以适应人类的使用方式和价值观。
指令微调 

目标:使模型学会通过问答形式解决任务。 

方法:使用“任务输入-输出”配对数据进行有监督的模仿学习 (Imitation Learning)。 

作用:主要在于激发模型在预训练阶段学到的能力,而非注入新知识。 

资源:所需数据量(数十万到百万级)和算力远小于预训练。

 人类对齐 

目标:使模型行为符合人类的期望、需求和价值观(如“有用、诚实、无害”)。 

主流方法RLHF (基于人类反馈的强化学习)。 

RLHF过程: 标注员对模型输出进行偏好排序 -> 训练奖励模型 (Reward Model) -> 使用强化学习根据奖励模型优化语言模型。 

资源:通常比SFT消耗多,但远小于预训练。也在探索更简化的对齐方法。

产出 一个能够进行良好人机交互,能按指令解决问题,并且行为更符合人类期望的最终模型

2、扩展法则

通过增大模型参数量、训练数据量和计算量来提升模型能力,而且这种提升往往比改进模型架构或算法本身带来的提升更显著。 为了量化研究这种规模扩展带来的性能提升,研究人员提出了扩展法则来研究规模扩展与模型性能(通常用损失函数 Loss 来衡量)的关系,可以帮助预测不同资源投入下的模型性能:

1)KM 扩展法则

建立模型性能与三个主要因素模型规模 N (参数量)、数据规模 D (token 数量)、计算算力 C (通常指训练期间的总计算量) 之间的幂律关系

推论:为了达到最低的 Loss,增大模型规模 N 比增大训练数据量 D 更有效。也就是说,分配更多计算资源给模型参数增长,带来的收益更大。

2)Chinchilla 扩展法则

该法则认为 KM 法则可能低估了数据规模 D 的重要性。他们在给定计算预算 C 下,同时调整 N 和 D提出了新的扩展法则

推论:对于给定的计算预算 C,要达到最优性能(最低 Loss),模型规模 N 和数据规模 D 应该按比例同步扩展。他们的研究表明,最优的 N 和 D 大约与 C 的平方根 成正比,意味着计算预算应该大致平均分配给模型规模增长和数据规模增长

3)局限性

  • 扩展法则主要预测的是预训练损失 (Pre-training Loss),这与模型在具体下游任务上的表现、涌现能力(Emergent Abilities, 如推理、遵循复杂指令)以及对齐后(如 RLFH 后)的实际效果不完全等同

  • 模型性能是多维度的,Loss 只是其中一个指标。扩展法则难以预测模型是否“有用”、“诚实”、“无害”等对齐相关的特性。

  • 存在逆向扩展现象 (Inverse Scaling):在某些特定任务或指标上,模型规模增大反而导致性能下降。

  • 数据质量的影响难以简单量化进 D 中,但对模型能力至关重要。

3、涌现能力

特征:特定任务的性能在模型规模达到某个阈值后,出现突然的、远超随机水平的性能跃升

1)上下文学习 (In-context Learning, ICL)

模型能根据提示中给出的少量任务示例(Demonstrations)来完成新任务,无需进行模型参数的更新(梯度下降)。

例子: GPT-3 (175B) 展现出强大的ICL能力,而GPT-1/2则不具备。能力也与任务相关,例如13B的GPT-3在简单算术上可以ICL,但175B在波斯语问答上效果不佳。

2)指令遵循 (Instruction Following):

模型能理解并执行自然语言指令来完成任务,即使没有在提示中给出具体示例(零样本泛化)。通常通过指令微调 (Instruction Tuning ),使用大量(任务指令,任务输出)的数据对进行训练。

例子: FLAN-PaLM 在规模达到 62B 及以上时,才在复杂的 BBH 推理基准上展现出较好的零样本能力。但较小模型(如 2B)用高质量数据微调也能掌握一定(尤其是简单任务)指令遵循能力。

3)逐步推理 (Step-by-step Reasoning)

模型能解决需要多个推理步骤的复杂任务(如数学应用题),特别是利用思维链 (Chain-of-Thought, CoT) 提示策略时,即在提示中引导模型生成中间的推理步骤,从而得到更可靠的答案。

例子: CoT 对 PaLM 的 62B 和 540B 模型在算术推理上有提升,但对 8B 模型效果不明显,且在 540B 上提升更显著。提升效果也因任务而异。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/77097.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue 计算属性 VS 侦听器:从原理到性能的深度对比

在 Vue 开发中,computed(计算属性)和watch(侦听器)是响应式系统的两大核心工具。 它们看似都能处理数据变化,实则设计理念和应用场景大相径庭。 一、核心区别:数据驱动的两种范式 1. 触发机制…

特斯拉宣布启动自动驾驶网约车测试,无人出租车服务进入最后准备阶段

特斯拉公司于4月24日正式宣布,已在美国得克萨斯州奥斯汀和加利福尼亚州旧金山湾区启动自动驾驶网约车服务的员工内部测试。这项测试将为今年夏季计划推出的完全无人驾驶出租车服务进行最后的验证和准备。 此次测试使用约200辆经过特殊改装的Model 3车型,…

基于springboot的在线教育系统

一、系统架构 前端:vue | element-ui | html | jquery | css | ajax 后端:springboot | mybatis 环境:jdk1.8 | mysql | maven | nodejs | idea 二、代码及数据 三、功能介绍 01. web端-首页1 02. web端-首页2 03. w…

文档编辑:reStructuredText全面使用指南 — 第四部分 高级主题

文档编辑:reStructuredText全面使用指南 — 第四部分 高级主题 reStructuredText(简称RST或ReST)是一种轻量级的标记语言,用于编写结构化的文档。它由Python社区开发,并广泛应用于技术文档、书籍、博客文章等。reStruc…

git Http改用户下载

用原先别人账号,无权下更新 http方式设置自己账号 例如 git fetch --all 提示没有权限从 http://192.168.1.2/gitlab/项目路径.git下载 git remote set-url origin http://your-username192.168.1.2/gitlab/项目路径.git your-username修改成自己的git账号 需要输入一个Tok…

Cancer Cell|scRNA-seq + scTCR + 空间多组学整合分析,揭示CD8⁺ T细胞在免疫治疗中的“双路径” | 临床问题的组学解答

Cancer Cell|scRNA-seq scTCR 空间多组学整合分析,揭示CD8⁺ T细胞在免疫治疗中的“双路径” 👋 欢迎关注我的生信学习专栏~ 如果觉得文章有帮助,别忘了点赞、关注、评论,一起学习 近日,《Cancer Cell》…

Python编程的真谛:超越语法,理解编程本质

你是否也曾陷入这样的误区:学了无数的 Python 语法、刷了几十套题,写起代码却仍然卡顿、举步维艰?这时候你才发现,真正阻碍进步的,从不是语法,而是你对“编程本质”的理解。 如果你只是死记硬背Python的语…

Go协程的调用与原理

Goroutine Go不需要像C或者Java那样手动管理线程,Go语言的goroutine机制自动帮你管理线程。 使用goroutine、 Go语言中使用goroutine非常简单,只需要在调用函数的时候在前面加上go关键字,就可以为一个函数创建一个goroutine。 一个gorout…

自然语言处理(9)—— 共现词矩阵及Python实现

共现词矩阵 1. 概述2. 构建步骤3. 代码实现(Python)结语 共现词矩阵(Co-occurrence Matrix)是自然语言处理(NLP)中用于捕捉词语间语义关系的重要工具。共现矩阵通过统计词语在特定上下文窗口内的共现频率&a…

Spark SQL核心解析:大数据时代的结构化处理利器

在大数据处理领域,Spark以其强大的分布式计算能力脱颖而出,而Spark SQL作为Spark生态系统的重要组成部分,为结构化和半结构化数据处理提供了高效便捷的解决方案。它不仅整合了传统SQL的强大查询功能,还深度集成到Spark的计算框架中…

多态以及多态底层的实现原理

本章目标 1.多态的概念 2.多态的定义实现 3.虚函数 4.多态的原理 1.多态的概念 多态作为面对三大特性之一,它所指代的和它的名字一样,多种形态.但是这个多种形态更多的指代是函数的多种形态. 多态分为静态多态和动态多态. 静态多态在前面已经学习过了,就是函数重载以及模板,…

linux下开发NFC读写器

linux下使用NFC读卡器,基于QT5开发 创建工程,引入lib开始编写代码 创建工程,引入lib 创建一个QT工程,如果是控制台程序,则去掉gui QT - gui引入lib库 LIBS -L$$PWD/lib -lyw60x这里需要将libyw60x.so库文件放在工程…

Linux基础使用-笔记

1. 文件和目录操作 查看当前目录:pwd 命令用于显示当前工作目录的完整路径。 pwd切换目录:cd 命令用于切换工作目录。 # 切换到指定目录 cd /home/user/Documents # 切换到上一级目录 cd .. # 切换到用户主目录 cd ~列出目录内容:ls 命令用…

DAG(有向无环图)计算模型面试内容整理-拓扑排序(Topological Sort)和节点依赖与并行度

拓扑排序(Topological Sort) 拓扑排序(Topological Sort): 拓扑排序是针对有向无环图(DAG)的一种线性排序方法。这种排序方法的特点是,对于DAG中的每一条有向边 (A → B),在拓扑排序中节点A总是排在节点B之前。

23种设计模式-结构型模式之享元模式(Java版本)

Java 享元模式(Flyweight Pattern)详解 🦋 什么是享元模式? 享元模式是一种结构型模式,它通过共享相同的对象来减少内存消耗,适用于大量细粒度对象的场景。关键思想是缓存重复出现的对象,避免…

浏览器访问背后的秘密:从加载到关闭,数据是否会丢失?

⏩ 一次浏览器访问 www.xxx.com 背后发生了什么? —— 以及“我点了 ,数据会不会丢?”的深度剖析 适读人群:Web 开发者、运维工程师、性能调优/安全从业者 1️⃣ 打开浏览器敲下网址:链路是如何启动的? 阶…

【HDFS入门】深入解析DistCp:Hadoop分布式拷贝工具的原理与实践

目录 1 DistCp概述与应用场景 2 DistCp架构设计解析 2.1 系统架构图 2.2 执行流程图 3 DistCp核心技术原理 3.1 并行拷贝机制 3.2 断点续传实现原理 4 DistCp实战指南 4.1 常用命令示例 4.2 性能优化策略 5 异常处理与监控 5.1 常见错误处理流程 5.2 监控指标建议…

hbuilderx云打包生成的ipa文件如何上架

使用hbuilderx打包,会遇到一个问题。开发的ios应用,需要上架到app store,因此,就需要APP store的签名证书,并且还需要一个像xcode那样的工具来上架app store。 我们这篇文章说明下,如何在windows电脑&…

第十五届蓝桥杯 2024 C/C++组 拼正方形

目录 题目: 题目描述: 题目链接: 思路: 思路详解: 易错点: 代码: 代码详解: 题目: 题目描述: 题目链接: P10898 [蓝桥杯 2024 省 C] 拼正…

华为云获取IAM用户Token的方式及适用分析

🧠 一、为什么要获取 IAM 用户 Token? 我们用一个生活中的比喻来解释👇: 🏢 比喻场景: 你要去一个 高级写字楼(华为云物联网平台) 办事(调用接口管理设备)&…