gpt4 book ai didi

nlp - 查找与特定单词相关的单词(特别是物理对象)

转载 作者:行者123 更新时间:2023-12-03 13:31:11 24 4
gpt4 key购买 nike

我正在尝试查找与单个单词相关的单词(特别是物理对象)。例如:

网球 : 网 Racket 、网球、网球鞋

斯诺克 : 斯诺克球杆、斯诺克球、粉笔

国际象棋 : 棋盘,棋子

书柜 : 书

我曾尝试使用 WordNet,特别是 meronym 语义关系;但是,这种方法并不一致,如下结果所示:

网球 : 发球, 截击, 脚误, 设定点, 返回, 优势

斯诺克 : 没有

国际象棋 :国际象棋走法,棋盘(其自身的meronym关系显示“正方形”和“对角线”)

书柜 : 搁置

最终将需要对术语进行加权,但现在这并不是一个真正的问题。

有人对如何做到这一点有任何建议吗?

只是更新:最终混合使用了 Jeff 和 StompChicken 的答案。

从 Wikipedia 检索到的信息质量非常好,特别是如何(不出所料)有这么多相关信息(与不存在诸如“博客”和“ipod”之类的术语的语料库相比)。

维基百科的结果范围是最好的部分。该软件能够匹配以下术语(为简洁起见,列表被删减):

  • 高尔夫:[球、铁、发球台、球包、球杆]
  • 摄影:[相机、胶卷、照片、艺术、图像]
  • 钓鱼:[鱼、网、钩、圈、饵、饵、竿]

  • 最大的问题是将某些词归类为物理人工制品;默认 WordNet 不是可靠的资源,因为其中不存在许多术语(例如“ipod”,甚至“蹦床”)。

    最佳答案

    我认为您要的是概念之间语义关系的来源。为此,我可以想到多种方法:

  • Semantic similarity algorithms .这些算法通常对 Wordnet 中的关系执行树遍历,以得出两个术语相关程度的实值分数。这些将受到 WordNet 对您感兴趣的概念的建模程度的限制。WordNet::Similarity (用 Perl 编写)非常好。
  • 尝试使用 OpenCyc作为知识库 . OpenCyc 是 Cyc 的开源版本,Cyc 是一个非常庞大的“真实世界”事实知识库。它应该有比 WordNet 更丰富的语义关系集。但是,我从来没有使用过 OpenCyc,所以我不能说它有多完整,或者它是多么容易使用。
  • n-gram 频率分析 .正如杰夫·莫泽所说。一种数据驱动的方法,可以从大量数据中“发现”关系,但通常会产生嘈杂的结果。
  • Latent Semantic Analysis .一种类似于 n-gram 频率分析的数据驱动方法,可以找到语义相关的词集。

  • [...]

    从你说你想做的事情来看,我认为最后两个选项更有可能成功。如果关系不在 Wordnet 中,则语义相似性将不起作用,并且 OpenCyc 似乎对 snooker 了解不多。除了它存在的事实。

    我认为 n-gram 和 LSA(或类似的东西)的组合将是一个好主意。 N-gram 频率会找到与您的目标概念紧密结合的概念(例如网球),而 LSA 会找到在同一个句子/文档中提到的相关概念(例如 net、service)。此外,如果您只对名词感兴趣,则将输出过滤为仅包含名词或名词短语(通过使用 part-of-speech tagger )可能会改善结果。

    关于nlp - 查找与特定单词相关的单词(特别是物理对象),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/610399/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com