词性标注是确定性的吗?

2024-06-01 00:21:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直想弄清楚为什么会发生这种事,但希望有人能对此有所了解。我正在尝试标记以下文本:

ae0.475      X  mod 
ae0.842      X  mod
ae0.842      X  mod 
ae0.775      X  mod 

使用以下代码:

^{pr2}$

得到了以下结果:

['ae0.475', 'X', 'mod']  :  NN NNP NN
['ae0.842', 'X', 'mod']  :  -NONE- NNP NN
['ae0.842', 'X', 'mod']  :  -NONE- NNP NN
['ae0.775', 'X', 'mod']  :  NN NNP NN

我不明白。有人知道这种不一致的原因是什么吗?我对词性标记的准确性不是很特别,因为我试图提取一些模板,但它似乎在不同的实例中使用不同的标记,以表示“几乎”相同的单词。在

作为解决方案,我将所有数字替换为1并解决了问题:

['ae1.111', 'X', 'mod']  :  NN NNP NN
['ae1.111', 'X', 'mod']  :  NN NNP NN
['ae1.111', 'X', 'mod']  :  NN NNP NN
['ae1.111', 'X', 'mod']  :  NN NNP NN

但是我很好奇为什么在我的第一个例子中它用不同的标签来标记实例。有什么建议吗?在


Tags: 实例代码标记文本none模板mod原因
2条回答

我尽力从一个不使用整个棕色语料库的人那里了解未发现的this

Note that words that the tagger has not seen before, such as decried, receive a tag of None.

所以,我想看起来像ae1.111的东西一定会出现在语料库文件中,但不会出现ae0.842。这有点奇怪,但这就是给出-NONE-标记的原因。在

编辑:我非常好奇,downloaded the Brown corpus我自己,在里面搜索了纯文本。数字111出现了34次,而数字842只出现了4次。842只出现在美元金额的中间或是一年的最后3位数字,而{}则多次作为页码出现。775也作为页码出现一次。在

所以,我要做一个猜想,因为Benford's Law,你最终匹配以1、2、3开头的数字比以8或9开头的数字要频繁得多,因为这些通常是书中引用的随机页的页码。我真的很想知道这是不是真的(当然,我自己也不感兴趣!)。在

“确定性”是指同一个句子每次使用相同的算法以相同的方式进行标记,但是由于你的单词不在nltk的数据中(事实上,甚至不是真实句子中的真实单词),它将使用一些算法来推断标记是什么。这意味着,当单词改变时,你可以有不同的标记(即使改变的数字和你一样不同),而且这些标记无论如何都没有什么意义。在

这让我想知道你为什么要在非自然语言结构中使用NLP。在

相关问题 更多 >