中文数据清洗

大体步骤

数据清洗是预处理的第一个步骤,主要是对文本数据进行清理和格式化,以便后续处理,对于中文数据清洗而言,各种查找资料然后总结步骤通常如下:
文本规范化(Normalization),将文本中所有的字母统一转换为大写或小写,如不需要标点符号也可以过滤掉文本中的标点符号。
英文语料分词(Tokenization),将文本拆分为无法再分拆的符号。
去除停用词(Stop Word),去除文本中没有意义的停用词
变形标准化(Stemming and Lemmatization),将复数、过去式、动名词等还原。
对于中文数据清洗步骤如下:
相较于英文语料,中文文本规范化需要额外处理繁简转换和全角/半角的问题。
文本规范化(Normalization):将全角字符转换为半角字符、将繁体字转换为简体字、将中文语料中包含的英文大小写统一。
中文分词(Tokenization)
去除停用词(Stop Word)
变形标准化(Stemming and Lemmatization)

1、 分词

分词是将连续的文本切分为独立的单词或词组,是中文文本处理中的关键步骤。常用的分词工具包括jieba。jieba分词支持多种分词模式,包括精确模式、全模式和搜索引擎模式。jieba分词包运用到了数据结构里的字典树对词语进行高效的分类,便于查找,支持三种分词模式:
1、精确模式,试图将句子精确的切开,适合文本分析
2、全模式,把句子中所有的可以成词的词语都扫描出来,速度非常快,但是不能解决歧义。
3、搜索引擎模式,在精确模式的基础上,对长词再进行切分,提高召回率,适合用于引擎分词。

import jieba
# 使用jieba进行分词
seg_list = jieba.cut(text, cut_all=False)  # 精确模式分词

2、去除停用词

停用词是指在文本中出现频率很高但对语义贡献较小的词,如“的”、“了”等。去除停用词可以降低特征维度并提高模型性能。我们可以使用jieba库中的stopwords功能来去除停用词;停用词是文本中一些高频的代词、连词、介词等对文本分类无意义的词,通常维护一个停用词表,特征提取过程中删除停用表中出现的词,本质上属于特征选择的一部分。参考Hanlp的停用词表https://github.com/hankcs/HanLP

import jieba.analyse
import jieba.posseg as pseg
# 去除停用词示例
stop_words = set(jieba.analyse.get_stopwords('zh'))  # 获取停用词列表
word_list = [word for word in seg_list if word not in stop_words]  # 去除停用词

词干提取

中文

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值