2

我正在使用来自学术中心的中文 Wordnet。它是 Wordnet 1.6 的翻译。不幸的是,它不是免费提供的,必须购买,手册基本上说是参考 Wordnet 的手册。我想弄清楚的是如何比较两个词之间的相似度。我想它是用 WordNetSynsetOffset 完成的,但我在 Wordnet 网站或文档上找不到任何关于如何使用它来比较两个单词的内容。至于实际的算法,我想这是一个好的开始http://marimba.d.umn.edu/similarity/measures.html

<Record Conut="65">  
    <EnglishLemma>exercise</EnglishLemma>  
    <POS>Noun</POS>  
    <WordNetSynsetOffset Version="1.6">00469856</WordNetSynsetOffset>  
    <EnglishFrequancyRank>通用詞彙</EnglishFrequancyRank>  
    <ChineseTransList>  
        <ChineseTrans>  
            <ChineseLemma>例題</ChineseLemma>  
            <ChineseFrequancyRank>通用詞彙</ChineseFrequancyRank>  
        </ChineseTrans>  
    </ChineseTransList>  
</Record>  
4

2 回答 2

4

所以我认为你正在寻找的(基于评论)是 WordNet API。

如果中文格式相同,您可能可以使用安装随附的 WordNet API。它是一个 C 库,您可以在此处找到文档:

http://wordnet.princeton.edu/wordnet/documentation/

基本上 - 这是它的工作原理。Synset 是所标识的同义词集的一组同义词,由 Synset Id(00469856)唯一标识。同义词集通过各种形式的语义关系连接到其他同义词集。大多数相似性指标通过搜索一个 Synset 来工作(通过您在下面引用的数字,API 应该支持这一点),然后通过使用各种指标查看另一个 Synset 的距离。

同义词集还包含同义词集语义含义的文本描述——我们习惯的标准字典定义。在某些情况下,一些相似性度量(例如 Lesk 算法)使用文本描述来比较两个同义词集彼此之间的“相似性”。

还有其他可用的 API 允许您通过它的 API 以各种语言搜索和访问 WordNet。

http://wordnet.princeton.edu/wordnet/related-projects/

例如,这里是 WordNet 3.0 字典文件中的 Synset 定义示例:

00020671 29 v 04 催眠 0 催眠 0 催眠 0 催眠 0 (...更多遗漏)...

唯一标识符 00020671 标识此同义词集。催眠在这里有四个同义词。

于 2011-04-16T00:10:08.157 回答
0

一个词可能有许多可能的意义(同义词)。如果你想比较两种感觉之间的相似性,你首先必须消除每个单词的歧义。一旦您知道要比较哪两种感觉,您就可以使用@bwalenz 的建议。

于 2011-06-18T20:19:40.353 回答