欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

nlp词性标注的作用

程序员文章站 2022-04-16 09:01:42
词性标注 – 除了语法关系,句中单词的位置(词性)标记也蕴含着信息,词的位置定义了它的用途和功能。宾夕法尼亚大学提供了一个完整的位置标记列表。下方代码则使用了NLTK库来对输入的文本进行词性标注。 from nltk import word_tokenize, pos_tag text = "I a ......

词性标注 – 除了语法关系,句中单词的位置(词性)标记也蕴含着信息,词的位置定义了它的用途和功能。宾夕法尼亚大学提供了一个完整的位置标记列表。下方代码则使用了nltk库来对输入的文本进行词性标注。

from nltk import word_tokenize, pos_tag
text = "i am learning natural language processing on analytics vidhya"
tokens = word_tokenize(text)
print pos_tag(tokens)
>>> [('i', 'prp'), ('am', 'vbp'), ('learning', 'vbg'), ('natural', 
'nnp'),('language', 'nnp'),('processing', 'nnp'), ('on', 'in'), 
('analytics', 'nnp'),('vidhya', 'nnp')]

在nlp中,词性标注有个很多重要用途:

a.消除歧义: 一些词的不同用法代表不同的意思. 如下列两句:

i. “please book my flight for delhi”

ii. “i am going to read this book in the flight”

“book” 在这里代表不同的意义, 好在它在两句的位置也不同. 第一句“book”是的动词, 第二句中它是个名词。 (lesk algorithm也被用于类似目的)

b.强化基于单词的特征: 一个机器学习模型可以从一个词的很多方面提取信息,但如果一个词已经标注了词性,那么它作为特征就能提供更精准的信息。 例如:

句子 -“book my flight, i will read this book”

单词 – (“book”, 2), (“my”, 1), (“flight”, 1), (“i”, 1), (“will”, 1), (“read”, 1), (“this”, 1)

带标注的单词 – (“book_vb”, 1), (“my_prp$”, 1), (“flight_nn”, 1), (“i_prp”, 1), (“will_md”, 1), (“read_vb”, 1), (“this_dt”, 1), (“book_nn”, 1)

译者注:如果不带词性标注,两个“book”就被认为是同义词,词频为2。这会在后续分析中引入误差。

c.标准化与词形还原: 位置标注是词形还原的基础步骤之一,可以帮助把单词还原为基本形式.

d.有效移除停用词 : 利用位置标记可以有效地去除停用词。