R语言自然语言处理3:中文语料库构建

自然语言处理(简称NLP),是研究计算机处理人类语言的一门技术,有着广泛的应用:句法语义分析、信息抽取、文本挖掘、机器翻译、信息检索、问答系统、对话系统……人们对NLP的应用寄予厚望.本文将以徐志摩诗集为研究对象, 展示用R语言构建华文语料库.

中文语料库

很多编程语言对中文的兼容支持有限, 本文使用徐志摩的诗集作为研究对象, 使用R语言展示华文文学的研究方法.

语料库建立

语料库是一份文本的集合,通常是一个数据库或数据集.

1

载入packages

最新版本的tm包于2017年7月更新, 在当前的文本数据处理中功能十分强大.

tm包通过Corpus(语料)对文本文档进行处理, 语料为文本文档的集合

载入支持包

第一次使用包需要使用命令安装:

install.packages("package_name")

2

语言设置

tm包通过language设置语言种类.

tm包中处理语言使用ISO-639-2,中文对应的编码为“zh”,其他语言编码可在表中查询

3

文本获取

一般中文诗集均可在网上下载, 下载格式通常为txt纯文本格式.

这里将徐志摩诗集分成6个txt文件的小册子

共有6册诗集

构造doc格式文件作为语料

设置语料

向量是数据处理中最快速、高效的方式.

将doc内容, 按照向量的形式构造出语料,即“term-document matrices” (词项-文档矩阵

4

语料分析文档

构造语料分析文档

构造二进制文本文档

5

语料检查

通常一个语料库是一个数据集, 包含了上千或上万篇幅的文档, print( )函数提供了一个精简查看文档的方式,

inspect( )函数可查看文档的更多信息

查看语料库信息

获取第6篇文章内容

《再别康桥》

读取文档内容

由于tm包将文本中的字符按照向量的形式进行操作, 因此tm包包括了所有对向量的操作方式.(提取、转置、特征值等等).tm包中, 对于字符的操作与向量的操作通用.向量的操作请查看本公众号暑期系列内容.

小结

中文博大精深, 文学作品数量庞大.R语言通过简单的编程方式,可帮助人文社科背景的研究人员通过规范简洁的代码快速分析出海量文本文档内容.

李珍妮. R语言自然语言处理:中文语料库构造 [EB/OL] . 2018-8-17

迎大家在本公众号后台留言交流

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180817G1AUVY00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券