我正试图在马达加斯加(我的母语)创建一个有标记的语料库。我遵循了文档、Python、文本处理、和、自然语言、处理和页面https://www.nltk.org/book/ch05.html中的说明。我成功地创建了我自己的基于通用词性Tagset和一个小标记语料库的词性Tagset。这是我的密码:
import os, os.path
path = os.path.expanduser('D:/Mes documents/MY_POS_tagger/nltk_data')
if not os.path.exists(path):
os.mkdir(path)
print("OS path done :%s"%os.path.exists(path))
import nltk.data
nltk.data.path.append('D:/Mes documents/MY_POS_tagger/nltk_data')
print("NLTK data path done:%s"%(path in nltk.data.path))
#read a POSfile
import nltk
from nltk.corpus.reader import TaggedCorpusReader
from nltk.tag import UnigramTagger
#there's only one document malagasy.pos, it's there where my tagged corpora.
reader = TaggedCorpusReader('D:/Mes documents/MY_POS_tagger/nltk_data/corpora/cookbook', r'.*\.pos')
train_sents=reader.tagged_sents()
tagger=UnigramTagger(train_sents)
#dago.txt contain just sentences without tag, i just wanted to test if the tag i assign on the POS file will work
text=(nltk.data.load('corpora/cookbook/dago.txt', format='raw'))
text_tokenized=nltk.word_tokenize(text)
print tagger.tag(text_tokenized)我的结果是:
OS path done :True
NLTK data path done:True
[('Matory', u'VB'), ('ny', None), ('alika', u'NN')]所以我可以看出这是工作,但我在上面的文档中看到,我必须训练我的标签。所以我问是否有人能建议我怎么做,因为我读到我需要挑选一个受过训练的标签,训练和梳理Ngram taggers,但我不明白泡菜意味着什么或做什么。我不知道我现在所做的是否是创建和利用NLTK标记的语料库的正确途径。谢谢
发布于 2018-09-09 18:29:44
我需要腌制受过训练的标签,训练和梳理Ngram taggers,但我不明白泡菜意味着什么或做什么
根据您问题的这一部分,Pickle是Python中的一个库,它允许将二进制数据转储或从硬盘中加载,这与您选择的任何python对象有关。
这里的信息:https://docs.python.org/3/library/pickle.html
然而,他们建议你采取一个经过预先训练的标记者,这很可能属于另一种语言,并添加从马达加斯加标记的语料库中提取的标记,你已经建造了。但是,如果您有足够大的标记文档语料库,那么您自己和NLP社区开发一个专门针对马达加斯加语的标记器可能会更有用。经过一次快速的研究,我在互联网上找不到任何东西,因此准备一份是很有用的。
https://stackoverflow.com/questions/51609143
复制相似问题