- Natural Language Toolkit - Discussion
- Natural Language Toolkit - Useful Resources
- Natural Language Toolkit - Quick Guide
- Natural Language Toolkit - Text Classification
- Synonym & Antonym Replacement
- Natural Language Toolkit - Word Replacement
- Stemming & Lemmatization
- Looking up words in Wordnet
- Training Tokenizer & Filtering Stopwords
- Natural Language Toolkit - Tokenizing Text
- Natural Language Toolkit - Getting Started
- Natural Language Toolkit - Introduction
- Natural Language Toolkit - Home
自然语言工具包
- 自然语言工具箱——改造树木
- 自然语言工具箱——改造楚克
- Chunking & Information 排外
- 自然语言工具箱——包装
- 自然语言工具包 - 更多国家 Taggers
- 自然语言工具箱——将Taggers混为一谈
- 自然语言工具箱——Unigram Tagger
- 部分Speech(POS)基本原理
- Corpus Readers and Customs Corpora
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Natural Language Toolkit - Unigram Tagger
What is Unigram Tagger?
如名称所示,单克的夸张是一种夸夸张,它只使用一个词作为确定其标语的背景。 简言之,Unigram Tagger是一种基于背景的夸大,其背景是一字,即Unigram。
How does it work?
国家扫盲中心为此提供了一个名为UnigramTagger的模块。 但是,在深入开展工作之前,让我们在以下图表的帮助下理解等级:
根据上述图表,可以理解UnigramTagger从NgramTagger继承。 它是ContextTagger的子类,继承SequentialBackoffTagger/b>。
UnigramTagger在以下步骤的帮助下作了解释:
我们看到,UnigramTagger 继承ContextTagger,实施context()方法。 <context()方法采用了与choose_tag(>方法相同的三个论点。
context(>)方法的成因是进一步用于创建模型的标语。 一旦形成模型,也使用“象征性”一词来研究最好的标签。
以这种方式,UnigramTagger将从判罚清单中建立一个背景模型。
Training a Unigram Tagger
NLTK's UnigramTagger, can be training by provide a pst of tadated imprisonment at the time of initiapzation. 在下面的例子中,我们将使用树库的硬性判决。 我们将使用该法典的头2500句话。
Example
首先从Nltk进口UniframTagger模块
from nltk.tag import UnigramTagger
其次,进口你想要使用的藏书。 在这里,我们利用的是树木库。
from nltk.corpus import treebank
现在,为了培训的目的,将判决。 为了培训目的,我们先判2 500刑,并将判决——
train_sentences = treebank.tagged_sents()[:2500]
其次,对用于培训目的的刑期适用UnigramTagger——
Uni_tagger = UnigramTagger(train_sentences)
为了测试目的,对培训目的,即2500人,处以相当于或更少的监禁。 在这里,我们首先需要1 500次测试——
test_sentences = treebank.tagged_sents()[1500:] Uni_tagger.evaluate(test_sents)
Output
0.8942306156033808
在这里,我们用单一字眼看望确定定位台标的夸夸张的精确度约为89%。
Complete implementation example
from nltk.tag import UnigramTagger from nltk.corpus import treebank train_sentences = treebank.tagged_sents()[:2500] Uni_tagger = UnigramTagger(train_sentences) test_sentences = treebank.tagged_sents()[1500:] Uni_tagger.evaluate(test_sentences)
Output
0.8942306156033808
Overriding the context model
以上图表显示UnigramTagger的等级,我们知道从ContextTagger继承的所有夸张,而不是自修,可以采用预设模式。 这一预设模式只是对一个主角的关键环境进行 Python测。 为UnigramTagger,背景要点为个人语言,而其他内容为NgramTagger。 子类是 t。
我们可以通过向Unigger通过另一个简单模式来推翻这一背景模式。 课程而不是通过培训。 让我们在下面一个简单的例子的帮助下理解这一点:
Example
from nltk.tag import UnigramTagger from nltk.corpus import treebank Override_tagger = UnigramTagger(model = {‘Vinken’ : ‘NN’}) Override_tagger.tag(treebank.sents()[0])
Output
[ ( Pierre , None), ( Vinken , NN ), ( , , None), ( 61 , None), ( years , None), ( old , None), ( , , None), ( will , None), ( join , None), ( the , None), ( board , None), ( as , None), ( a , None), ( nonexecutive , None), ( director , None), ( Nov. , None), ( 29 , None), ( . , None) ]
由于我们的模型包含“Vinken”作为唯一背景钥匙,你可以从上述产出中看到,只有这一字塔和所有其他字都没有作为标签。
Setting a minimum frequency threshold
对于决定哪类标签在某种特定情况下最有可能发生, 深层类使用发生频率。 即便背景词和标签只发生一次,但我们能够通过cutoff设定最低频率门槛。 页: 1 在下面的例子中,我们沿用了以前考试的截断价值,我们在考试中培训了一个Unigram-Tagger。
Example
from nltk.tag import UnigramTagger from nltk.corpus import treebank train_sentences = treebank.tagged_sents()[:2500] Uni_tagger = UnigramTagger(train_sentences, cutoff = 4) test_sentences = treebank.tagged_sents()[1500:] Uni_tagger.evaluate(test_sentences)
Output
0.7357651629613641Advertisements