文本分析 - 标签数据分布查看
1 课程概览
本课介绍文本数据分析的作用和方法,包括标签数量分布、句子长度分布、单词总数、词频统计和关键词词云。使用中文酒店评论语料(二分类情感分析),通过数据分析发现数据质量问题(错别字、缺失值、噪声)和分布不均衡问题(标签分布、句子长度异常),指导后续模型训练和超参数选择。
2 核心概念与定义
- 文本数据分析(Text Data Analysis):在文本处理前,通过统计和可视化方法查看数据分布情况,帮助理解语料、发现问题、指导超参数选择。
- 数据质量问题:错别字、语法错误、重复内容、缺失值、噪声数据。
- 分布不均衡问题:标签分布不均匀、句子长度分布异常(过短无意义、过长难处理)。
- 二分类情感分析(Binary Sentiment Analysis):中文酒店评论语料,标签 1=好评(积极),0=差评(消极)。
3 模型与算法详解
文本数据分析的作用
- 理解数据语料:快速检查数据中可能存在的问题
- 指导模型训练:帮助选择超参数(如标签 Y 分布是否均匀、X 是否有脏数据)
数据问题分类
| 类别 | 具体问题 |
|---|---|
| 数据质量类 | 错别字、语法错误、重复内容、缺失值、噪声数据 |
| 分布不均衡类 | 标签分布不均匀、句子长度分布异常(过短/过长) |
文本数据分析方法
| 分析方法 | 可视化方式 |
|---|---|
| 标签数量分布 | 柱状图 |
| 句子长度分布 | 柱状图、直方图、密度图 |
| 词频统计 | 统计图 |
| 关键词词云 | 词云图 |
| 正负样本散点分布 | 散点图 |
数据集说明
| 属性 | 说明 |
|---|---|
| 数据集 | 中文酒店评论语料 |
| 任务类型 | 二分类情感分析 |
| 标签含义 | 1=好评(积极),0=差评(消极) |
| 数据格式 | TSV 文件,两列:内容 + 标签 |
文本处理流程概览
- 文本数据分析:查看标签分布、句子长度分布、词频统计、词云
- 文本特征处理:n-gram(1-gram、2-gram、3-gram)
- 文本长度规范:截断(超过固定长度)+ 补齐(不足固定长度,用 0 填充)
- 文本数据增强:回译法(中文→法语→德语→葡萄牙语→中文)
4 数学原理与推导
本课为数据分析概述,无数学推导。
5 代码示例
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
# 读取数据(TSV格式)
train_data = pd.read_csv("./data/train.tsv", sep="\t")
test_data = pd.read_csv("./data/test.tsv", sep="\t")
# 查看标签数量分布(柱状图)
sns.countplot(x="label", data=train_data)
plt.title("标签数量分布")
plt.show()
6 重难点与易错提醒
- ❗重点:文本处理前的第一个动作是文本数据分析,查看数据分布情况。
- ❗重点:数据问题分两类——数据质量类(错别字、缺失值等)和分布不均衡类(标签、句子长度)。
- ⚠️易错:标签 1=好评(积极),0=差评(消极),需根据内容判断。
- 💡深入理解:句子长度分布用于确定固定长度,超过截断,不足补齐(用 0 填充)。
- 💡深入理解:回译数据增强法通过多语言翻译增加数据量。
7 课堂问答精选
Q1:文本数据分析的作用是什么?
A:①帮助理解数据语料,快速检查可能存在的问题;②指导模型训练过程中的超参数选择(如标签分布是否均匀、是否有脏数据)。
Q2:数据问题分为哪两类?
A:①数据质量类问题:错别字、语法错误、重复内容、缺失值、噪声数据;②分布不均衡问题:标签分布不均匀、句子长度分布异常(过短无意义、过长难处理)。
Q3:标签 1 和 0 分别代表什么?
A:1 代表好评(积极),0 代表差评(消极)。需根据评论内容判断,如"早餐不好、服务不到位"是差评(0),"前台服务员态度挺好的"是好评(1)。
Q4:文本长度规范如何处理?
A:根据句子长度分布确定固定长度(如 50),超过的截断,不足的用 0 补齐。
8 本课小结
- 文本数据分析是文本处理前的第一步,查看数据分布。
- 数据问题:质量类(错别字、缺失值)+ 分布不均衡类(标签、长度)。
- 分析方法:标签分布、句子长度分布、词频统计、词云、散点图。
- 数据集:中文酒店评论,二分类(1=好评,0=差评)。
- 文本处理流程:分析 → 特征处理(n-gram)→ 长度规范 → 数据增强(回译)。
9 延伸思考
- 如何处理标签分布不均衡问题?
- 句子长度异常(过短/过长)如何处理?