问题标签 [word-sense-disambiguation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1018 浏览

python - 使用 NLTK 对阿拉伯语文本进行词义消歧

NLTK 允许我用 消除文本歧义nltk.wsd.lesk,例如

PyWSD做同样的事情,但它只适用于英文文本。


NLTK 支持来自Open Multilingual WordNet的阿拉伯语 wordnet ,例如

此外,同义词集被索引为阿拉伯语:

但是我怎样才能消除阿拉伯语文本的歧义并使用 nltk 从查询中提取概念?

我想知道是否可以使用 Lesk 算法通过 nltk 处理阿拉伯文本?

0 投票
3 回答
2368 浏览

nlp - 从 wordnet 中选择合适的词义

我正在使用 Wordnet 来查找本体概念的同义词。我怎样才能找到适合我的本体概念的意义。例如,有一个本体概念“会议”,它在 wordnet 中有以下同义词 名词会议有 3 种意义(前 3 种来自标记文本)

  1. (12) 会议——(预先安排的协商或交换信息或讨论的会议(尤其是有正式议程的会议))
  2. (2) 联赛、会议——(为其成员组织比赛的运动队协会)
  3. (2) 会议、小组讨论——(有一致(严肃)主题的参与者之间的讨论)现在第一个和第三个同义词对我的本体概念有适当的意义。我怎样才能从wordnet中只选择这两个?
0 投票
2 回答
12949 浏览

python - 将单词识别为名词、动词或形容词

给定一个单词,例如“table”,我想确定它最常用的是什么,它最常用的是名词、动词还是形容词。我想在python中做到这一点。除了wordnet还有别的吗?我不喜欢wordnet。或者,如果我使用 wordnet,我将如何使用它呢?

0 投票
0 回答
48 浏览

nlp - 如何确定句子中单词的确切含义?

这里所说determine the meaning的意思是根据句子中的句法功能和语义含义选择一个类似NLTK的自然语言工具包产生的引理。

举例来说,在下面的句子中:

智能手机已经发展成为现代技术中最重要的部分,但制造它们的行业却让自己 陷入了困境,只有苹果和三星这两家公司能够产生可靠的利润。

对于单词backed,NLTK 提供了 12 个引理:

  1. back.v.01 落后;批准
  2. back.v.02 后退
  3. second.v.01 给予支持或赞同
  4. back.v.04 导致向后旅行
  5. back.v.05 支持财务支持
  6. back.v.06 在后面
  7. bet_on.v.01 下注
  8. back.v.08 向逆时针方向移动
  9. back.v.09 确定为有效或真实
  10. back.v.10 通过提供背部或支撑来加强
  11. backed.a.01 有背板或背板,通常是指定的类型
  12. backed.s.02 用于在与乳剂相对的一侧涂有吸收光的物质的薄膜

如何让机器自动帮我选一个?

0 投票
0 回答
623 浏览

python - 如何提高lesk算法在词义消歧中的效率

大家好,目前我正在做一个关于词义消歧的项目,我遇到了 lesk 算法 pywsd 的 python 实现https://github.com/alvations/pywsd

如何使用上面的代码获得最大的正确性

我听说 pos 标记有助于提高效率,谁能告诉我如何将 pos 标记添加到上面的 lesk 代码中,有没有什么方法可以让我获得最大的特定意义的正确性

0 投票
0 回答
30 浏览

wordnet - 是否有任何用于谓词参数上下文约束的库?

我正在尝试使用 WordNet 的动词框架进行词义消歧,但它们缺乏对谓词参数的限制,因此无法仅使用动词框架来消歧。

我可以手动添加约束,但我想看看是否有人已经这样做了。是否存在标有谓词参数上下文约束的公开可用的动词框架集合?如果编程语言和环境很重要,我正在使用 Java 和 GATE 来调用 WordNet。

0 投票
0 回答
104 浏览

python - 跨语言词义消歧

我是计算机编程的初学者,我正在完成一篇关于 Parallel Corpora in Word Sense Disambiguation 的文章。基本上,我打算表明用词义代替词翻译可以简化识别模棱两可词含义的过程。我已经用 GIZA++ 对我的平行语料库(EUROPARL 英语-西班牙语)进行了字对齐,但我不知道如何处理输出文件。我的目的是建立一个分类器来计算翻译词的概率,给定源文本中模糊词周围的标记的上下文特征。所以,我的问题是:如何从平行语料库中提取歧义词的实例及其对齐的翻译?

我在 Python 上尝试了各种脚本,但这些脚本是在以下假设下运行的:1)英语和西班牙语文本位于不同的语料库中,2)英语和西班牙语句子共享相同的索引,这显然不起作用。例如

如果您能就此事提供任何指导,我将不胜感激。

0 投票
1 回答
810 浏览

solr - Solr/Lucene 查询词形还原与上下文

我已经成功地为 Lucene 实施了捷克语词形还原器。我正在用 Solr 对其进行测试,它在索引时很好用。但它在用于查询时效果不佳,因为查询解析器不向词形还原器提供任何上下文(之前或之后的单词)。

例如,pila vodu在索引时对短语的分析与在查询时不同。它使用了模棱两可的词pila,可以表示pila (锯,例如电锯)或pít(动词“喝”的过去时)。

pila vodu->

  • 索引时间:pít voda
  • 查询时间:pila voda

..所以这个词pila没有找到,也没有在文档片段中突出显示。

这种行为记录在solr wiki(引用如下),我可以通过调试我的代码来确认它(只有孤立的字符串“pila”和“vodu”被传递给 lemmatizer)。

... Lucene QueryParser 在将任何文本提供给分析器之前在空白处进行标记,因此如果一个人搜索单词sea biscit,分析器将分别给出“sea”和“biscit”两个词,...

所以我的问题是:

是否有可能以某种方式更改、配置或调整查询解析器,以便词形还原器可以看到整个查询字符串,或者至少是单个单词的某些上下文?我也想为不同的 solr 查询解析器(如dismaxedismax )提供解决方案。

我知道像 (quotes) 这样的短语查询没有这样的问题"pila vodu",但是我会丢失没有确切短语的文档(例如带有"pila víno"甚至"pila dobrou vodu"的文档)。


编辑 - 试图解释/回答以下问题(谢谢@femtoRgon):

如果这两个术语不是一个短语,因此不一定会一起出现,那么为什么要在上下文中对它们进行分析呢?

当然,最好只分析组合在一起的术语。例如,在索引时,词形还原器会检测输入文本中的句子,并且只分析单个句子中的单词。但是如何在查询时实现类似的事情呢?实现我自己的查询解析器是唯一的选择吗?我非常喜欢解析器的pf2andpf3选项,edismax如果是我自己的解析器,我是否必须再次实现它们?

背后的想法实际上更深一些,因为词法分析器正在对具有相同词汇基础的单词进行词义消歧。例如,这个词bow在英语中有大约 7 种不同的意义(参见wikipedia),词形还原器正在区分这些意义。所以我想利用这种潜力使搜索更加精确——只返回包含bow查询所需具体意义上的单词的文档。所以我的问题可以扩展到:如何<lemma;sense>为查询词获得正确的 -pair?如果单词出现在其共同的上下文中,则词形还原器通常能够分配正确的含义,但是当没有上下文时,它就没有机会了。

0 投票
2 回答
11485 浏览

python - ResourceExhaustedError :OOM 分配具有形状 [] 的张量时

这是我的代码。它一直出现这个错误'ResourceExhaustedError:OOM when allocating tensor with shape'我使用 guppy。然后得到了这个。孔雀鱼的结果

为什么 tensorflow 的变量占用这么多空间。

0 投票
1 回答
1627 浏览

python - 使用 WordNet 进行词义消歧。如何选择与相同含义相关的单词?

我正在使用 WordNet 和 NLTK 进行词义消歧。我对所有与声音有关的单词都感兴趣。我有一个这样的单词列表,“roll”就是其中之一。然后我检查我的任何句子是否包含这个词(我也会根据 POS 检查它)。如果是,我只想选择与声音相关的句子。在下面的示例中,它将是第二句话。我现在的想法就是选择这样的词,他们的定义中有一个词“声音”作为“快速连续敲打的鼓(尤其是小军鼓)的声音”。但我怀疑还有一种更优雅的方式。任何想法将不胜感激!

输出: