NLP 中的自定义语料库


简介

语料库被称为机器可读的文本文档集合。语料库具有特定的结构。可以在语料库上执行各种 NLP 操作。语料库阅读器是可以读取这些文本文件的实用程序。自定义语料库是使用 NLTK 数据包生成的。创建自定义语料库遵循特殊的约定。Corpora 是 corpus 的复数形式。

在本文中,让我们简要了解一下语料库以及如何创建自定义语料库。

自定义语料库

语料库可以采用以下任何格式。

  • 来自以电子方式存在的原始文本。

  • 来自转录成文本的语音/语音数据

  • 来自可以从文档中提取文本的光学字符识别 (OCR) 工具。

WordNet、TreeBank 等是一些流行的 NLP 语料库。

创建自定义语料库

我们需要 NLTK 数据库来创建自定义语料库。我们将为数据定义一个自定义路径,即 nltk_data。nltk.data.path 包含 nltk 识别的某些路径。对于构建自定义语料库,我们的路径应存在于此路径列表中。

'/root/nltk_data', '/usr/nltk_data', '/usr/share/nltk_data', '/usr/lib/nltk_data', '/usr/share/nltk_data', '/usr/local/share/nltk_data', '/usr/lib/nltk_data', '/usr/local/lib/nltk_data'

接下来,我们在 ~/nltk_data/corpus 文件夹中创建一个名为 custom_corpus.txt 的文件,然后使用 NLKT 加载。NLTK 中有两种类型的加载程序格式 - raw 和 yaml。

## custom corpus NLP

!mkdir ~/nltk_data/corpus
!touch ~/nltk_data/corpus/custom_corpus.txt
!echo hello > ~/nltk_data/corpus/custom_corpus.txt
!touch ~/nltk_data/corpus/custom_corpus.yaml
!echo data:134 > ~/nltk_data/corpus/custom_corpus.yaml


import os, os.path
import nltk.data

data_path = os.path.expanduser('~/nltk_data')
  
# check whether path exists , otherwise create
if not os.path.exists(data_path):
    os.mkdir(data_path)
      
print ("Is the required path present : ", os.path.exists(data_path))
print ("Path exists within NLTK : ", data_path in nltk.data.path)

import nltk.data

## load text raw file
nltk.data.load("corpus/custom_corpus.txt", format = "raw")

## load yaml file
nltk.data.load("corpus/custom_corpus.yaml", format = "yaml")

输出

Is the required path present :  True
Path exists within NLTK :  True
{'data:134': None}

结论

NLTK 提供了创建自定义语料库以用于实际应用的工具。NLTK 加载器可以读取自定义语料库,并且可以轻松应用内置函数。自定义语料库是使用定义的结构和约定创建的,遵循一组规则。有许多语料库阅读器可用于读取自定义语料库。

更新于: 2023 年 9 月 22 日

282 次查看

开启您的 职业生涯

通过完成课程获得认证

开始
广告

© . All rights reserved.