这看起来像是在寻找一种有价值的资产,但是由于我们在很多事情上都有一个免费的选择,所以我对此很乐观。
存储两个键值对的数据库,如
键值
或
key-context-value
对于收集数据并希望标记数据或搜索可能相关的记录的web开发人员来说,这将是非常有用的。
像这样的数据表甚至是他们想要存储的数据的规范化形式。
如果您听说过这样的免费复制数据表的,请分享。谢谢。
发布于 2012-06-15 19:02:53
您可以使用WordNet:它包含英语单词之间的一般关系(分为名词、动词、形容词和副词)。这些关系在同义词集(同义词集)之间,并将这种关系描述为“公共汽车”是“车辆”,“车轮”是“汽车”的一部分。
注意:要在WordNet字典中查找单词,需要使用引理(单词的基本形式),因此,如果要从免费文本(如网站)中查找单词,则必须先计算单词的引理。您可以通过应用一些自然语言处理(NLP)技术或创建自己的启发式方法来做到这一点。
除了同步集关系之外,WordNet还包含对同步集的简短定义(光泽),您可以使用这些定义获得更多的上下文。此外,语义消歧技术可以帮助您决定使用多义词的哪种意义,这也是提供上下文的一种形式。
如果您需要更多的上下文而不是WordNet提供的内容(英语单词的一般含义之间的一般关系),那么您应该找到一个合适的本体来描述概念之间的语义关系。您必须将文本映射到它所涉及的概念(同样,NLP技术可以在这方面有所帮助)
发布于 2012-06-22 02:39:17
您可以使用卢塞尼 (或任何文本搜索引擎)来存储您的文档,并使用自定义斯泰默根据含义(而不是单词变体)对文档文本进行索引。
通常,词干分析器被用来将一个单词的所有变体转换为词干。例如,虽然文档是以文本形式存储和检索的,但任何“唱歌、唱歌”的词都会被索引为" sing ",所以当使用搜索词"sing“进行搜索时,所有包含唱歌、唱歌、唱歌或唱歌的文档都会受到影响。
同样,搜索词也可能会停止,所以搜索任何“唱歌、唱歌、唱歌或唱歌”都会搜索,就好像“唱歌”是搜索词一样。
标准词干器处理通常的英语单词变体,但你可以根据意思创建一个词干。例如,您可能会为所有想要“链接”的单词创建一个词干器,将“问题、问题或抱怨”中的任何“问题、问题或抱怨”等产生。
使用词干器的优点是,所有与搜索相关的繁重工作都是由文本搜索引擎为您完成的(此外,文本搜索引擎非常快!)
在实现时,您可以使链接数据驱动,或者根据数据库中的数据为词干分析器生成代码,或者使其在完成搜索/索引操作时动态地查找数据库,或者介于两者之间--缓存值并定期刷新它们。
发布于 2012-06-22 09:50:46
根据您的需求,您可以查找map-reduce范例的不同实现。最著名的是Hadoop,特别是Hadoop MapReduce。虽然这是一个框架,而不是数据库,但它完全按照您的要求--以key=value对的方式存储和处理数据。这是一个用于构建大型、可伸缩系统的产品。如果您需要更简单的东西,就会有一些较小的实现,比如基于PHP的(在MySQL之上),甚至还有一个“简单”的MySQL聚合,在大多数情况下可以模仿MapReduce,在这种情况下,您不需要包含大量数据的分布式系统。
https://stackoverflow.com/questions/8286506
复制相似问题