大模型“读“懂你的秘密:Tokenize分词技术全解析!
本文深入探讨了大模型如何处理文本输入。核心流程为文本经过Tokenize分词,转为token,再映射为token ID并转化为embedding向量。介绍了三种基础分词粒度:按词切、按字符切、按子词切,并详细解析了四种常见tokenizer方法:BPE、WordPiece、Unigram、SentencePiece,分析了它们的原理、优缺点及适用场景,强调分词对模型理解能力的重要性。
我们平时和大模型聊天,输入的是一句话、一段文字,甚至是一篇文章。但模型真正看到的,并不是这些文字本身。在进入大模型之前,文本通常要先经过一个步骤:
Tokenize,也就是分词。
简单来说,tokenize的作用就是把一整段文本,切成一个个模型能够处理的小片段。这些小片段就叫token。
比如一句话:
我喜欢大语言模型在人看来,这是一句话。但对模型来说,它可能会被切成:
我 / 喜欢 / 大语言 / 模型也可能被切成:
我 / 喜 / 欢 / 大 / 语言 / 模型甚至在不同模型里,切法还不一样。这就引出一个问题:
大模型到底是怎么切词的?
为什么大模型不能直接读文字?
因为模型本质上处理的是数字。文字进入模型之前,一般要经历三个步骤:
文本 → token → token ID → embedding 向量也就是说,模型不是直接理解“我喜欢大语言模型”这些文字,而是先把它们变成token,再把token映射成数字编号,最后查表得到向量。这个切成token的过程,就叫tokenizer。
tokenizer切得好不好,会影响很多事情:
序列长度词表大小计算成本模型理解能力新词处理能力
所以,分词不是一个小细节,而是大模型输入系统里非常重要的一环。
最基础的三种切分粒度
大模型分词,最基础可以分成三种粒度:
word:按词切char:按字符切subword:按子词切
1、按词切:最符合人类习惯,但词表太大
按词切是最自然的方式。比如:
I like language models可以切成:
I / like / language / models中文也可以切成:
我 / 喜欢 / 大语言模型这种方式的优点是很好理解,每个token往往具有比较完整的语义。
但问题也很明显:
词太多了。
自然语言里有大量长尾词、专有名词、缩写、拼写变化、生僻表达。
比如:
ChatGPT Transformer bioconcentration non-targeted ......如果每个词都放进词表,词表会变得非常大。词表越大,embedding表也越大,占用的显存和内存也越多。所以,单纯按词切,在大模型里并不是最理想的方案。
2、按字符切:词表小,但句子会变长
另一种方法是按字符切。
比如英文:
hello切成:
h / e / l / l / o中文:
大语言模型切成:
大 / 语 / 言 / 模 / 型这种方法的优点是词表很小。英文就是字母、数字、符号;中文虽然字符更多,但也比完整词表小很多。它还有一个好处:
几乎不会遇到完全没见过的词。
但缺点也很明显:
句子会被切得很碎,序列长度变长,计算成本增加。更重要的是,每个字符本身包含的信息有限。比如“模”“型”分开看,语义并不完整;只有组合成“模型”,意思才更清楚。
所以,按字符切虽然简单,但表达能力有限。
3、按子词切:现代大模型最常用的折中方案
现在很多大模型采用的是第三种方式:
subword,子词切分。
它介于“词”和“字符”之间。核心思想可以用一句话概括:
常见词尽量保留,生僻词拆成更小的片段。
比如:
Transformers可能会被切成:
Transform / ers再比如:
unbelievable可能切成:
un / believe / able这样做的好处是既不会像按词切那样导致词表爆炸,也不会像按字符切那样把句子切得太碎。所以,子词切分是目前大模型tokenizer的主流思路。
常见tokenizer方法有哪些?
常见的大模型词表构建方法主要有四类:
BPEWordPieceUnigramSentencePiece
它们的目标都差不多,构建一套合适的token词表,让文本既能被稳定表示,又不会让词表过大。
但它们的做法不一样。
1、BPE:从字符开始,不断合并高频组合
BPE,全称是Byte-Pair Encoding,字节对编码。它最早来自数据压缩思想,后来被用到NLP分词中。BPE的核心逻辑很简单:
谁经常挨在一起,就把谁合并。
举个简单例子。假设语料里有这些词:
low lower newest widest一开始,BPE会先把它们拆成字符:
l / o / w l / o / w / e / r n / e / w / e / s / t w / i / d / e / s / t然后统计相邻字符组合出现的频率。如果发现:
e + s经常一起出现,就把它们合并成:
es接着继续统计。如果发现:
es + t经常一起出现,就继续合并成:
est不断重复这个过程,直到词表达到预设大小。最后,词表里可能会有:
low er est wide new这样新来一个词:
lowest就可以被切成:
low / estBPE的优点是:
简单高效能处理未知词词表大小可控
很多GPT系列模型、RoBERTa等模型,都使用过BPE或类似BPE的方法。
2、WordPiece:不只看频率,还看组合是否更合理
WordPiece也属于子词切分方法。它和BPE很像,也会从小片段开始,逐步合并成更大的子词。但它和BPE的关键区别在于:
BPE更关注出现频率,WordPiece更关注合并后对语言模型概率的提升。
简单理解就是BPE会问:
哪两个片段最常一起出现?
WordPiece会问:
哪两个片段合并以后,更能提高语料的整体表示概率?
比如两个片段A和B,如果A和B各自出现很多,但它们并不是强绑定关系,那么WordPiece不一定优先合并它们。
WordPiece更倾向于合并那些经常一起出现,并且彼此关联很强的组合。例如:
playing可能会切成:
play / ##ing这里的##ing表示它不是一个独立开头的词,而是接在前面的子词后面。BERT、DistilBERT、ELECTRA 等模型中,常见tokenizer就是 WordPiece。
一句话理解WordPiece,它也是合并子词,但不是单纯看谁出现次数多,而是看合并后是否更有利于建模。
- 那么问题来了,啥叫更有利于建模?
3、Unigram:先给很多候选,再逐步删掉不重要的
Unigram 的思路和BPE、WordPiece不太一样。BPE和WordPiece大体是从小到大,不断合并。而Unigram更像是先准备一个很大的候选词表,再慢慢删。比如一开始,它可能准备很多候选token:
大 语言 模型 大语言 语言模型 大语言模型然后根据概率模型判断哪些token更有用,哪些token删除后对整体损失影响较小。每次删除一批影响最小的token,最后保留一个大小合适的词表。
Unigram的特点是同一个句子可能有多种切分方式,模型会根据概率选择更合适的一种。比如:
大语言模型可能有几种切法:
大 / 语言 / 模型 大语言 / 模型 大语言模型Unigram会根据训练得到的概率,选择更合理的切分。
4、SentencePiece:不是单一算法,而是一套分词工具
SentencePiece容易被误解成一种具体的分词算法。更准确地说,它不是单独的一种算法,而是一套tokenizer训练工具。它可以用来训练BPE,也可以用来训练Unigram。它最大的特点是:
不需要先按空格把句子切成词,而是直接从原始文本中学习怎么切分。
这点对中文、日文、韩文等语言很重要。因为英文句子里通常有空格:
I love AI人和程序都很容易先切成:
I / love / AI但中文没有天然空格:
我喜欢人工智能如果分词器过度依赖空格,就很难同时处理英文、中文、日文等多种语言。SentencePiece的做法是把整句话看成一串字符,空格也不丢掉,而是用一个特殊符号表示。比如:
I love AI在 SentencePiece 里,空格可能会被表示成:
▁I / ▁love / ▁AI这里的▁可以简单理解为:
这个token前面原来有一个空格,或者它是一个新词/新片段的开始。
这样做有一个好处:即使文本被切成token,模型也还能知道原文中哪里有空格。所以,SentencePiece特别适合多语言场景。它不强依赖英文那样的空格分词,而是把空格、汉字、字母、标点都统一放进同一套切分体系里。一句话理解:
SentencePiece不是一种单独的切词规则,而是一套tokenizer工具。它把原始句子整体处理,连空格也一起建模,因此更适合中文、英文等多语言混合场景。
这几种方法有什么区别?
可以简单对比一下:
| 方法 | 核心思路 | 特点 | 常见模型 |
|---|---|---|---|
| BPE | 高频相邻片段不断合并 | 简单高效,应用广 | GPT-2、RoBERTa |
| WordPiece | 选择更能提升语言模型概率的合并 | 更关注子词组合的建模价值 | BERT |
| Unigram | 从大候选词表中逐步删除 | 可基于概率选择切分方式 | XLM、SentencePiece 系列 |
| SentencePiece | 工具框架,可结合 BPE或Unigram | 不依赖空格,适合多语言 | T5、ALBERT、XLNet |
不过要注意一点:这些方法不是互相完全割裂的。实际模型中,tokenizer的实现常常会结合具体工程需求进行调整。
比如GPT系列常用byte-level BPE思路,SentencePiece也可以训练BPE 或Unigram类型的tokenizer。
最后
对于正在迷茫择业、想转行提升,或是刚入门的程序员、编程小白来说,有一个问题几乎人人都在问:未来10年,什么领域的职业发展潜力最大?
答案只有一个:人工智能(尤其是大模型方向)
当下,人工智能行业正处于爆发式增长期,其中大模型相关岗位更是供不应求,薪资待遇直接拉满——字节跳动作为AI领域的头部玩家,给硕士毕业的优质AI人才(含大模型相关方向)开出的月基础工资高达5万—6万元;即便是非“人才计划”的普通应聘者,月基础工资也能稳定在4万元左右。
再看阿里、腾讯两大互联网大厂,非“人才计划”的AI相关岗位应聘者,月基础工资也约有3万元,远超其他行业同资历岗位的薪资水平,对于程序员、小白来说,无疑是绝佳的转型和提升赛道。
如果你还不知道从何开始,我自己整理一套全网最全最细的大模型零基础教程,我也是一路自学走过来的,很清楚小白前期学习的痛楚,你要是没有方向还没有好的资源,根本学不到东西!
下面是我整理的大模型学习资源,希望能帮到你。
👇👇扫码免费领取全部内容👇👇
最后
1、大模型学习路线
2、从0到进阶大模型学习视频教程
从入门到进阶这里都有,跟着老师学习事半功倍。
3、 入门必看大模型学习书籍&文档.pdf(书面上的技术书籍确实太多了,这些是我精选出来的,还有很多不在图里)
4、AI大模型最新行业报告
2026最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。
5、面试试题/经验
【大厂 AI 岗位面经分享(107 道)】
【AI 大模型面试真题(102 道)】
【LLMs 面试真题(97 道)】
6、大模型项目实战&配套源码
适用人群
四阶段学习规划(共90天,可落地执行)
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
硬件选型
带你了解全球大模型
使用国产大模型服务
搭建 OpenAI 代理
热身:基于阿里云 PAI 部署 Stable Diffusion
在本地计算机运行大模型
大模型的私有化部署
基于 vLLM 部署大模型
案例:如何优雅地在阿里云私有部署开源大模型
部署一套开源 LLM 项目
内容安全
互联网信息服务算法备案
…
👇👇扫码免费领取全部内容👇👇
3、这些资料真的有用吗?
这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
