大语言模型入门
大语言模型入门
- 1 大语言模型步骤
- 1.1 pre-training 预训练
- 1.1.1 从网上爬数据
- 1.1.2 tokenization
- 1.1.2.1 tokenization using byte pair encoding
- 1.3 预训练
- 1.3.1 context
- 1.3.2 training
- 1.3.3 输出
- 1.2 post-training
- 1.2.1 token
- 1.2 SFT监督微调
- 1.3 人类反馈强化学习
- 1.3.1 人类反馈奖励模型
- 1.3.2 基于奖励函数进行试错
- PPO
- GRPO
- 4 大语言模型值得相信吗
- 4.1 AI hallucinations幻觉
- 4.1.1 如何确认存在幻觉
- 4.1.2 如何解决幻觉
- 4.2 大模型心理学LLM psychology
- Deepseek
- Reasoning oriented RL using GRPO
1 大语言模型步骤
1.1 pre-training 预训练
1.1.1 从网上爬数据
download and preprocess the internet, including url filtering(like, removing racist/adult websites), PII removal(personal identifiable information should be removed, 豆包被爆输出个人信息,所以是这一点没有做好)
数据规模大概是44TB左右,不大,甚至一个大点的移动硬盘就可以装下。
1.1.2 tokenization
tokenization = context -> symbols/a sequence of tokens
- 文字编码的本质就是把字或字母转成一个有限表示的序列,比如a-z可以用1-26来表示。
- 这个序列不希望太长,要不然变相挤占了输入资源
1.1.2.1 tokenization using byte pair encoding
找到常出现的编码对,比如(125 67),就把它合成为一个新编码符号(比如301),然后再看有没有新的编码对,比如(301 786),那就再把这个合成新的。这样做decrease the length and increase the symbol size, in practice symbol size turns out to be 100k。
44TB -> 15 trillion万亿 token sequences
1.3 预训练
1.3.1 context
选取任意长度的token窗口arbitrary window lengths of tokens, but in practice the maximum length is often set as 16k/8k/4k
1.3.2 training
模型输出每个token的概率,和真值算loss
1.3.3 输出
做完预训练的模型一般称为base,base一般不会被release出来。
如果给base输入一句话,它不会回答,只会续写。
如果想要prompt,可以参考如下,因为模型具有in-context learning ability
这个base model更像是internet document simulator
1.2 post-training
- The pre-training stage is to sample documents, the post-training stage is to give answers to questions.
- The pre-training relies on the online documents, but the post-training stage totally throws them out and use datasets of human-labeling conversations.
- The pre-training stage takes 3 months while post-training 3 hours, because the datasets of conversations are much smaller.
- This stage is much computationally cheaper.
- 这个阶段要学会和人类互动,也要拒绝不合理的要求(比如如何黑进别人的电脑)
- 这个阶段不会也无法覆盖所有的可能的问题,但是通过这种示例,模型能够学到这样的统计学模式statistical pattern,从而在推理时遇到没被训练过的问题,也能给予回答。
- 从LLM获得的回答其实是类似人类标注员的回答,或者说LLM公司编写的回答规范的回答。You are not talking to a magical AI, instead an average labeler.
1.2.1 token
因为输入的是对话,所以需要对对话进行处理,增加虚拟独白部分,分别在最前和最后,而且要指明是user还是assistant。
在推理时,输入到<|im_start|>assistant<|im_sep|>,后面的由模型补充就得到了答案。
1.2 SFT监督微调
1.3 人类反馈强化学习
1.3.1 人类反馈奖励模型
1.3.2 基于奖励函数进行试错
PPO
proximal policy opt
最大化长期奖励,但是通过clip保证不会偏离当前策略太远。
举个例子:智能家居系统
有一个智能家居系统,其中的恒温器需要根据室内外温度、能源价格等因素来调整设置,以达到舒适与节能的平衡。这个恒温器就是我们的“智能体”,它的目标是通过调节温度来最大化长期奖励(比如节省能源费用和保持舒适)。
场景设定:
状态:当前室内温度、室外温度、时间等。
动作:将恒温器设置为 20°C、21°C 或 22°C。
奖励:根据能源消耗和舒适度打分,比如:
如果温度太低或太高,奖励较低(因为不舒服)。
如果温度适中且能源消耗少,奖励较高。
恒温器需要通过不断尝试不同的设置来找到最优策略。PPO 的作用就是帮助它在学习过程中逐步优化策略,避免“走得太远”而犯错。
GRPO
group relative policy opt
一种用于大模型的策略优化算法,通过分组比较,动态调整学习策略,使训练更高效和稳定。因为之前是采用PPO算法,PPO会直接冲着奖励最高的方向去学习,无法平衡风险。
举个例子:班级小组学习
假设一个班级要提升数学成绩,老师用 GRPO 的思路设计学习计划:
分组:把学生分为 A、B、C 三组,每组用不同学习方法:
A组:题海战术
B组:错题分析
C组:概念推导
相对比较:
每周考试后,对比各组平均分。比如 B 组得分最高,说明“错题分析”方法更有效。
策略优化:
让 B 组分享经验,但不强制其他组完全照搬(避免学得太快反而混乱)。
A、C 组参考 B 组的方法,适当调整自己的策略(比如题海战术中加入错题分析)。
结果:
整体班级成绩提升,且各组保持自己的特色(稳定性)。
4 大语言模型值得相信吗
things that occur very frequently in the internet are probably more likely to be remembered correctly. The output of the LLM is just a vague recollection of internet documents
4.1 AI hallucinations幻觉
给模型输入一段没见过的东西,它会沿着继续预测下去,本质上是在概率性的前提下进行最佳预测。
由于是概率性的,所以在训练集的分布里,并没有"我不知道",只有自信的回答,所以面对及时不知道的事,AI也会给出自信的编造。Even the model knows it doesn’t know, it will not surface that.
The model are not looking it up(查找信息), instead just imitating the answer.
4.1.1 如何确认存在幻觉
- 测试大模型是否存在幻觉
a. 先用大模型A给出一些问答
b. 用这些问答问待测试的大模型
c. 如果回答错了,就说明存在幻觉
4.1.2 如何解决幻觉
- 训练大模型说我不知道
a. 根据答错的问题,训练它说我不知道
Through this way, the model learns the association of the knowledge-based refusal to the internal neuron - 联网搜索,把搜索到的知识当作输入一起给模型。
4.2 大模型心理学LLM psychology
涌现认知效应 emergent cognitive effect
Deepseek
Reasoning oriented RL using GRPO
其中的奖励函数没有用人工的,而是纯deterministic的。A rule-based reward system
相关文章:

大语言模型入门
大语言模型入门 1 大语言模型步骤1.1 pre-training 预训练1.1.1 从网上爬数据1.1.2 tokenization1.1.2.1 tokenization using byte pair encoding 1.3 预训练1.3.1 context1.3.2 training1.3.3 输出 1.2 post-training1.2.1 token 1.2 SFT监督微调1.3 人类反馈强化学习1.3.1 人…...
SQL 大厂面试题目(由浅入深)
今天给大家带来一份大厂SQL面试覆盖:基础语法 → 复杂查询 → 性能优化 → 架构设计,大家需深入理解执行原理并熟悉实际业务场景的解决方案。 1. 基础查询与过滤 题目:查询 employees 表中所有薪资(salary)大于 10000…...
Shader Step和frac函数
Step又称为阶跃函数,在着色器(Shader)编程中,step 函数是一个非常有用的函数,尤其是在GLSL(OpenGL Shading Language)和其他类似的着色器语言中。它用于生成基于阈值的阶跃函数输出。step 函数的…...

FreeRtos实时系统: 十二.FreeRTOS的队列集
FreeRtos实时系统: 十二.FreeRTOS的队列集 一.队列集简介二.队列集相关API函数三.队列集操作实验 一.队列集简介 左边的接收任务会在没接收到队列时会阻塞,如果前面释放信号量这时该任务也获取不到信号量。 右边使用队列集如果获取到,判断句柄是谁&#…...

NLP Word Embeddings
Word representation One-hot形式 在上一周介绍RNN类模型时,使用了One-hot向量来表示单词的方式。它的缺点是将每个单词视为独立的,算法很难学习到单词之间的关系。 比如下面的例子,即使语言模型已经知道orange juice是常用组合词…...
如何在24GB的GPU上运行DeepSeek-R1-Distill-Qwen-32B
如何在24GB的GPU上运行DeepSeek-R1-Distill-Qwen-32B 一、背景二、解决方案三、操作步骤1.下载模型2.安装依赖3.量化4.生成推理代码5.运行A.缓存上限为128条B.不限制缓存上限C.输出内容 一、背景 随着深度学习的不断发展,大型语言模型(LLM,L…...

2025年二级建造师报名流程图解
2025年二级建造师报名时间!附报名流程! ⏰️已公布25年二建考试时间的省份如下: ️4月19日、20日考试的城市有:贵州 ️5月10日、11日考试的城市有:湖北、陕西、宁夏、甘肃、福建、浙江、江西、黑龙江、河南、湖南、…...
深入浅出:Python 中的异步编程与协程
引言 大家好,今天我们来聊聊 异步编程 和 协程,这是近年来编程语言领域中的热点话题之一,尤其在 Python 中,它作为一种全新的编程模型,已经成为处理 IO密集型 任务的强力工具。尽管很多人对异步编程望而却步࿰…...

八大排序——简单选择排序
目录 1.1基本操作: 1.2动态图: 1.3代码: 代码解释 1. main 方法 2. selectSort 方法 示例运行过程 初始数组 每轮排序后的数组 最终排序结果 代码总结 1.1基本操作: 选择排序(select sorting)也…...
vue使用CSS布局技术,实现div定位到页面底部或顶部并居中功能
<template> <div > <div class"bottom-element"> 我在底部,并居中了 </div> </div> </template> 使用CSS布局技术,通过设置CSS属性来实现页面底部定位。 <style lang"scs…...

Jenkins 部署 之 Mac 一
Jenkins 部署 之 Mac 一 一.Jenkins 部署依赖 JDK 环境 查看 Mac JDK 环境,如果没有安装,先安装 打开终端输入命令:java -version Mac安装配置 JDK 二. 检查 HomeBrew 安装 检查 HomeBrew 是否安装,终端输入命令:brew -v Mac安装HomeB…...
【FastAPI 使用FastAPI和uvicorn来同时运行HTTP和HTTPS的Python应用程序】
在本文中,我们将介绍如何使用 FastAPI和uvicorn来同时运行HTTP和HTTPS的 Python应用程序。 简介 FastAPI是一个高性能的Web框架,可以用于构建快速、可靠的API。它基于Python的类型提示和异步支持,使得开发者可以轻松地编写出安全且高效的代…...
HCIA-路由器相关知识和面试问题
二、 路由器 2.1 关于路由器的知识 2.1.1 什么是路由器 路由器是一种网络层互联设备,主要用于连接多个逻辑上分开的网络,实现不同网络之间的数据路由和通信。它能根据网络层地址(如 IP 地址)来转发数据包,在网络中起…...

Docker+Jenkins自动化部署SpringBoot项目【详解git,jdk,maven,ssh配置等各种配置,附有示例+代码】
文章目录 DockerJenkins部署SpringBoot项目一.准备工作1.1安装jdk111.2安装Maven 二.Docker安装Jenkins2.1安装Docker2.2 安装Jenkins2.3进入jenkins 三.Jenkins设置3.1安装jenkins插件3.2全局工具配置全局配置jdk全局配置maven全局配置git 3.3 系统配置安装 Publish Over SSH …...
PCL 点云数学形态学操作(腐蚀)
文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 基本原理:使用结构元素(通常为滤波的窗口)的窗口模板作为处理单元,利用形态学中的膨胀与腐蚀相组合即可达到滤波的效果。 点云数据中的数学形态学运算其实和二维图像上的运算非常相似,图像上像素有x,y和亮度值…...

【设计模式】【行为型模式】观察者模式(Observer)
👋hi,我不是一名外包公司的员工,也不会偷吃茶水间的零食,我的梦想是能写高端CRUD 🔥 2025本人正在沉淀中… 博客更新速度 👍 欢迎点赞、收藏、关注,跟上我的更新节奏 🎵 当你的天空突…...

RAGFlow和Dify对比
RAGFlow和Dify都是基于大语言模型(LLM)的应用开发平台,具有相似的功能和应用场景,但它们在技术架构、部署要求和用户体验上存在一些差异。 RAGFlow和Dify对比 2025-02-13 22.08 RAGFlow 技术栈:RAGFlow…...

AI前端开发:蓬勃发展的机遇与挑战
人工智能(AI)领域的飞速发展,正深刻地改变着我们的生活方式,也为技术人才,特别是AI代码生成领域的专业人士,带来了前所未有的机遇。而作为AI应用与用户之间桥梁的前端开发,其重要性更是日益凸显…...

结构型模式---代理模式
概念 代理模式是一种结构型模式,主要用于在客户端和接口之间添加一个中间层,用于在客户端和接口之间进行权限控制或者其他的中间层操作。 使用场景 1、延缓初始化,当我们偶尔需要使用一个重量级的服务对象,如果一直保持该对象的…...
Java面向对象一:相关概念
面向过程&面向对象 面向过程思想 步骤清晰简单,第一步做什么,第二步做什么… 面对过程适合处理一些较为简单的问题面向对象思想 物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行…...

JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
设计模式和设计原则回顾
设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...
土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等
🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...

ardupilot 开发环境eclipse 中import 缺少C++
目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)
在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...
数据库分批入库
今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

均衡后的SNRSINR
本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt 根发送天线, n r n_r nr 根接收天线的 MIMO 系…...

OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...