Lily作者

文本预处理技术详解

摘要:自然语言处理NLP(Natural Language Processing),顾名思义,就是使用计算机对语言文字进行处理的相关技术。在对文本做分析时,我们一大半的时间都会花在文本预处理上,而中文和英文的预处理流程稍有不同。本文就对中、英文的常用的文本预处技术做一个总结

文章内容主要按下图流程讲解:

1.中英文文本预处理的特点

中英文的文本预处理大体流程如上图,但是还是有一些区别。首先,中文文本没有像英文用空格来分开不同单词的,因此不能直接像英文一样用简单的空格或标点符号来完成分词。所以我们一般需要用分词算法来完成分词,具体操作在后面会讲到。

当然,英文文本的预处理也有自己特殊的地方比如拼写问题。很多时候,对英文预处理要包括拼写检查,比如“Helo World”这样的错误,我们不能在分析的时候再去纠错。还有就是词干提取(stemming)和词形还原(lemmatization),主要是因为英文中一个词会有不同的表达形式,这个步骤有点像孙悟空的火眼金睛,直接得到单词的原始形态。比如,"faster"、"fastest", 都变为"fast";“leafs”、“leaves”,都变为"leaf"。

2. 收集数据

文本数据的获取一般有两种方法:

  • 别人已经做好的数据集,或第三方语料库如wiki,这样可以省去很多处理成本。

  • 自己从网上爬取的数据。很多时候我们所面对的是某种特定的领域的应用,这些开放语料库经常无法满足我们的需求。我们就需要用爬虫技术去爬取想要的信息了。可以使用如beautifulsoup、scrapy等框架编写出自己需要的爬虫。

  • 定义数据搜集策略来搜集数据可以通过制定数据搜集策略,从业务的角度来搜集所需要的数据。 

  • 第三方的合作。通过购买的方式也可以满足部分数据的需求

专业用户独享

本文为机器之心深度精选内容,专业认证后即可阅读全文
开启专业认证
入门Word2VecNLP文本预处理
8
暂无评论
暂无评论~