自然语言处理 |词性 - 默认标记
什么是词性 (POS) 标记?这是一个将句子转换为形式的过程——单词列表、元组列表(每个元组都有一个形式(word, tag) )。 case of 中的标记是词性标记,表示该词是名词、形容词、动词等。 默认标记是词性标记的基本步骤。它是使用 DefaultTagger 类执行的。 DefaultTagger 类将 'tag' 作为单个参数。 NN是单数名词的标记。 DefaultTagger 在使用最常见的词性标签时最有用。这就是为什么推荐使用名词标签的原因。 代码 #1:它是如何工作的?
Python3
# Loading Libraries
from nltk.tag import DefaultTagger
# Defining Tag
tagging = DefaultTagger('NN')
# Tagging
tagging.tag(['Hello', 'Geeks'])
Python3
# Loading Libraries
from nltk.tag import DefaultTagger
# Defining Tag
tagging = DefaultTagger('NN')
tagging.tag_sents([['welcome', 'to', '.'], ['Geeks', 'for', 'Geeks']])
Python3
from nltk.tag import untag
untag([('Geeks', 'NN'), ('for', 'NN'), ('Geeks', 'NN')])
输出 :
[('Hello', 'NN'), ('Geeks', 'NN')]
每个标注器都有一个 tag() 方法,它接受一个标记列表(通常是由单词标记器生成的单词列表),其中每个标记是一个单词。 tag() 返回标记标记的列表—— (word, tag)的元组。 DefaultTagger 如何工作?它是 SequentialBackoffTagger 的子类,实现了 choose_tag() 方法,具有三个参数。
- 令牌列表
- 当前令牌的索引,以选择标签。
- 以前的标签列表
代码 #2:标记句子
Python3
# Loading Libraries
from nltk.tag import DefaultTagger
# Defining Tag
tagging = DefaultTagger('NN')
tagging.tag_sents([['welcome', 'to', '.'], ['Geeks', 'for', 'Geeks']])
输出 :
[[('welcome', 'NN'), ('to', 'NN'), ('.', 'NN')],
[('Geeks', 'NN'), ('for', 'NN'), ('Geeks', 'NN')]]
注意:标记句子列表中的每个标记(在上面的代码中)都是NN ,因为我们使用了 DefaultTagger 类。代码 #3:说明如何取消标记。
Python3
from nltk.tag import untag
untag([('Geeks', 'NN'), ('for', 'NN'), ('Geeks', 'NN')])
输出 :
['Geeks', 'for', 'Geeks']