文本预处理以准备Python中的机器学习 – 自然语言处理

机器学习前的文本预处理:自然语言处理中的Python准备工作

照片由Kiril Dobrev提供,来自Unsplash

一些在Python中常用的文本预处理技术及示例

在这个社交媒体和在线商业时代,文本数据从各个方面涌现出来。然而,处理文本数据是棘手的。因为原始文本可能包含各种杂质、不必要的噪音、拼写错误等等。因此,在进行任何涉及文本数据的建模之前,必须进行适当的预处理。

本文将介绍一些常用的文本预处理技术,以便为机器学习准备文本数据。

去除数字

在文本中包含数字可能会对机器学习模型产生误导。因为无论如何,文本都需要被转换为数字。每个文本都被转换为一个数字。如果文本再次包含数字,那么这可能会干扰这些数字的解释。因此,去除数字可能会有帮助。

我在这里使用了正则表达式来去除数字。因此,我首先需要导入‘re’。

import re  text = "A班有35个学生,B班有29个学生,他们都擅长数学"res = re.sub(r'\d+', '', text)res 

输出:

'A班有 学生,B班有 学生,他们都擅长数学'

文本中的所有数字都被去除了。

去除额外的空格

这是另一个有趣的问题。有时,在原始数据中会存在一个额外的空格,在视觉上可能没有问题。但它可能会引起问题。如果有多余的空格,同一个单词可能会出现为两个不同的单词。例如,如果我们在单词“song”之前添加一个额外的空格,在开发模型时,这会被视为与“song”不同的单词,只是因为有了空格,这可能对模型的性能产生不良影响。

st = "结果很棒 "st.strip()

输出:

'结果很棒'

开头和结尾的空格都被去除了。

我使用了Kaggle上的twitter.csv数据…