
[英]How to tackle efficient searching of a string that could have multiple variations?
[英]Search in Folksonomies. How to tackle synonymy problem?
有人可以阐明在诸如del.icio.us之类的网站上如何进行搜索吗?
如果我输入“ js”(1),“ javascript”(2)或“ java脚本”(3)作为对Delicious的查询,则指向有关Java Script的资源。 但是,根据查询,返回的结果集是不同的(del.icio.us系统为“ js”和“ javascript”查询返回不同的书签集)。
因此,系统似乎并没有真正意识到(1)和(2)是彼此的同义词。 相反,它尝试将我的查询与在相关标签或标题中包含查询字符串的书签进行匹配。 那是对的吗?
您将如何“教育”系统所有(1),(2),(3)实际上都是同义词,并且无论选择哪个查询,用户都应该看到所有与Java Script相关的资源?
这样做甚至是个好主意吗?
谢谢,格雷格
是的:人脑 。
认真地:以编程方式从紧密相关的主题中区分同义词将是非常非常困难的IMO。 有些标记组合极有可能同时出现,例如javascript
和jquery
。 当然,您也许可以使用以下信息来做些事,例如,没有javascript
不会发生jquery
,因此它必须是它的某种子集,但实际上,它确实也会独立发生。 如果正确标记了XML
和XSLT
通常会经常出现在一起,但是它们不是同义词,要知道这一点,您需要具有实际技术知识的人员来进行呼叫。
我建议使用一个预过滤系统来查找同义词的候选者,并由管理员进行实际的同义词处理。
没有完美的解决方案。 您可以显式声明关键字为同义词,其他所有内容或多或少都是猜测。
一种方法可能是使用距离度量。 在美味的情况下,您可以汇总将两个关键字应用于相同书签的次数。
不过,您可能会分配误报。 例如,可能是“ ruby”与“ rails”一起使用的频率比反之亦然,因为“ rails”表示“ ruby”,而“ ruby”不是“ rails”。 这对于从同义词中淘汰相关术语可能是有用的属性,这些同义词应或多或少地互换使用。
您也可以尝试使用WordNet
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.