文本预处理的主要模块介绍
1 课程概览
本课介绍文本预处理章节的整体框架,涵盖文本预处理的五大环节:文本处理基本方法(分词、NER、词性标注)、文本张量表示方法(one-hot、word2vec、word embedding)、文本数据分析、文本数据增强。重点讲解文本预处理的作用与目的,以及数据清洗、长度规范、标签均衡等核心操作。
2 核心概念与定义
- 文本预处理(Text Preprocessing):文本语料在输送给模型前进行的一系列处理工作,使其符合模型输入要求。
- 分词(Tokenization):将文章/段落切割成词或字的过程,中文遵循"字词句段篇章"的层级结构。常用工具为 jieba 分词器。
- NER(Named Entity Recognition,命名实体识别):从文本中识别出具有特定意义的实体(如人名、地名、机构名等)。
- 词性标注(POS Tagging, Part-of-Speech Tagging):为文本中每个词标注其词性(名词、动词、形容词等)。
- one-hot 编码:一种稀疏的文本张量表示形式。
- Word2Vec:一种稠密的文本张量表示方法,包含 CBOW 和 Skip-Gram 两种模式。
- Word Embedding:另一种稠密的文本张量表示形式。
- 截断(Truncation):对超过规定长度的句子进行截取。
- 补齐(Padding):对不足规定长度的句子进行填充补齐。
3 模型与算法详解
文本预处理五大环节
- 认识文本预处理:了解整体流程与作用
- 文本处理基本方法:分词、NER、词性标注
- 文本张量表示方法:one-hot、word2vec、word embedding
- 文本数据分析:标签分布、句子长度分布等
- 文本数据增强:回译法等
文本预处理的作用
文本语料在输送给模型前需进行预处理,类似于炒菜前对食材的清洗、去皮、切块:
- 将文本转换为张量:模型无法直接处理文本,需转为张量形式(如 one-hot 编码)
- 规范张量尺寸:确定用多少个数字表示张量
数据处理两大维度
特征(X)处理
| 处理项 | 说明 | 示例 |
|---|---|---|
| 脏数据清洗 | 剔除异常值 | 身高数据中出现 5 米以上的异常值 |
| 缺失值处理 | 填补或删除缺失数据 | — |
| 长度分布分析 | 统计句子长度分布 | 绝大多数句子长度分布在 10 左右 |
| 截断与补齐 | 统一句子长度 | 超过 10 字截断,不足 10 字补齐 |
标签处理
- 标签均衡性检查:检查正负样本比例是否均衡
- 示例:二分类问题中,班级男生 70+ 人,女生个位数 → 数据不均衡
- 需对不均衡数据进行处理
文本张量表示方法对比
| 表示方法 | 类型 | 特点 |
|---|---|---|
| one-hot | 稀疏表示 | 简单但稀疏 |
| Word2Vec | 稠密表示 | 含 CBOW 和 Skip-Gram 两种模式 |
| Word Embedding | 稠密表示 | 与 Word2Vec 有区别(后续详解) |
4 数学原理与推导
本课为模块介绍,无数学推导。Word2Vec 的 CBOW 和 Skip-Gram 原理将在后续课程详解。
5 代码示例
本课为模块介绍,无代码示例。
6 重难点与易错提醒
- ❗重点:文本张量表示方法是本节重点,需掌握 one-hot、word2vec、word embedding 三种方法。
- ⚠️易错:Word2Vec 有 CBOW 和 Skip-Gram 两种模式,需理解两者区别与推导过程——这是今天的小难点。
- ⚠️易错:Word2Vec 和 Word Embedding 都是稠密表示,需区分两者区别。
- 💡深入理解:文本预处理的目的不仅是数据清洗,更是为了指导模型超参选择、提升模型评估指标。
7 课堂问答精选
Q1:为什么需要分词?
A:中文讲究"字词句段篇章"的层级组合——文章由篇幅组成,篇由段落组成,段落由句子组成,句子由词组成,词由字组成。需要将文章或段落切割成词或字,才能进行后续处理。目前常用 jieba 分词器。
Q2:如何处理句子长度不一致的问题?
A:先通过画图分析所有句子的长度分布。假设绝大多数句子长度分布在 10 左右,则对超过 10 字的句子进行截断(只取前 10 字),对不足 10 字的句子进行补齐(填充至 10 字),从而统一长度规范。
Q3:什么是脏数据?如何处理?
A:脏数据指明显异常的数据值。例如标记身高时,绝大多数人在 1.5~2 米之间,若出现 5 米以上的值即为脏数据,需要进行清洗处理。
8 本课小结
- 文本预处理是 NLP 的实操基本功,包括五大环节:认识预处理、基本方法、张量表示、数据分析、数据增强。
- 特征处理包括:脏数据清洗、缺失值处理、长度分布分析、截断与补齐。
- 标签处理需关注数据均衡性。
- 文本张量表示:one-hot(稀疏)vs Word2Vec/Word Embedding(稠密)。
- Word2Vec 含 CBOW 和 Skip-Gram 两种模式,是本节难点。
9 延伸思考
- Word2Vec 的 CBOW 和 Skip-Gram 两种模式有何区别?各自适用什么场景?
- Word2Vec 和 Word Embedding 的本质区别是什么?