文本数据分析能够有效帮助我们理解数据预料,快速查出预料可能存在的问题,并指导之后模型训练过程中一些超参数的选择。
常用的几种文本数据分析方法,包括:
- 标签数量分布:数据中正负样本的分布最好接近1:1
- 句子长度分别:通过观察句子的长短来挑选合适的处理方法
- 词频统计与关键词词云:
数据集选择的是ChnSentiCorp_htl_all数据集(见知乎【NLP入门】文本分类:酒店评论),内容为酒店评论。共有7766条数据。类别仅有好坏两种,正面评价5322个,负面评价2444个,有一定的不平衡。内容如下:
数据中第一列为label,其中0表示该条样本是负面评价,1表示正面评价。剩余部分为具体评价内容。应该不难理解。
一、标签数量分布
import seaborn as sns # 绘制直方图的库
import pandas as pd
import matplotlib.pyplot as plt
# 读取数据
data = pd.read_csv('./Datasets/ChnSentiCorp_htl_all.txt', sep=',')
sns.countplot('label', data=data) # 统计标签“label”列中各个标签的数量
plt.title(label='标签数量分布', fontdict={'family': 'SimHei'}) # 设置图像显示的题目
plt.show() # 展示图像
显示结果如下:
可