问题标签 [relevance]
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.
algorithm - 搜索排名/相关性算法
在知识库中开发文章数据库时(例如) - 对用户问题最相关的答案进行排序和显示的最佳方法是什么?
您会根据以前的用户是否找到帮助文章来使用关键字权重等附加数据,还是认为简单的关键字匹配算法就足够了?
mysql - 全文搜索相关性是用什么来衡量的?
我正在制作一个测验系统,当测验制作者将问题插入问题库时,我将检查数据库中是否存在重复/非常相似的问题。
测试 MySQL 的MATCH() ... AGAINST(),当我针对 100% 相似的字符串进行测试时,我得到的最高相关性是 30+。
那么相关性究竟是什么?引用手册:
相关性值是非负浮点数。零相关性意味着没有相似性。相关性是根据行中的单词数、该行中的唯一单词数、集合中的单词总数以及包含特定单词的文档(行)数来计算的。
我的问题是如果字符串重复,如何测试相关性值。如果它是 100% 重复的,请防止它被插入到问题库中。但如果只是如此相似,提示测验者验证,插入与否。那么我该怎么做呢?100% 相同字符串的 30+ 不是百分比,所以我很难过。
提前致谢。
c# - C#查找相关文档片段以显示搜索结果
在为我正在构建的站点开发搜索时,我决定采用便宜快捷的方式并使用 Microsoft Sql Server 的全文搜索引擎,而不是像 Lucene.Net 这样更强大的引擎。
不过,我希望拥有的功能之一是谷歌式的相关文档片段。我很快发现确定“相关”片段比我意识到的要困难。
我想根据找到的文本中的搜索词密度选择片段。所以,本质上,我需要在文本中找到搜索词最密集的段落。一个段落是任意数量的字符(比如 200 - 但它真的没关系)。
我的第一个想法是在循环中使用 .IndexOf() 并构建一个术语距离数组(从先前找到的术语中减去找到的术语的索引),然后......什么?将任意两个、任意三个、任意四个、任意五个顺序数组元素相加,并使用总和最小的元素(因此,搜索词之间的距离最小)。
这似乎很乱。
有没有比我想出的更成熟、更好或更明显的方法来做到这一点?
mysql - 如何操纵 MySQL 全文搜索相关性以使一个字段比另一个字段更“有价值”?
假设我有两列,关键字和内容。我对两者都有一个全文索引。我希望关键字中包含 foo 的行比内容中包含 foo 的行具有更高的相关性。我需要做什么才能使 MySQL 将关键字中的匹配权重高于内容中的匹配?
我正在使用“匹配”语法。
解决方案:
能够通过以下方式完成这项工作:
regex - 如何检查正则表达式的相关性?
假设我们有两个正则表达式:
和
输入:
显然它们都匹配,但 1234.* 匹配更好,因为它更具体。即更相关。有没有标准的方法来检查哪个更相关?
编辑:
一些澄清。我想通过检查哪个正则表达式与输入最匹配来做出决定。在这种情况下,我只匹配数字。
电话号码示例:
输入:
我们对以下每个正则表达式都有一个规则:
在这种情况下,我希望使用绑定到 31.* 的规则,因为这对于给定的输入更具体。如果我不使用正则表达式会很容易,因为我可以使用评分机制来检查它的匹配程度,但是这些规则可能有一些更高级的正则表达式,例如:
mysql - 数据库搜索并按相关性显示结果
给定以下表格,我如何在每个表格中搜索一个术语并按相关性对结果进行排序?谢谢你。
keyword - 按找到的关键字数量对表格进行排序
我有以下代码用于在文档标题中搜索多个关键字,效果很好。我现在想要一列显示在每个标题行中找到的关键字数量并以后代方式排序。例如,如果我正在搜索“产假”,我应该得到如下信息:
名称 - 找到的关键字
产假政策 -- 2
年假政策——1
给准妈妈的孕产建议——1
希望它是有道理的,非常感谢!
mysql - MySQL - 如何按相关性排序?INNODB 表
我在一个名为“cards”的 INNODB 表中有大约 20,000 行,所以 FULLTEXT 不是一个选项。
请考虑这张表:
因此,假设用户搜索“John”,我希望结果集的顺序为:
请注意,我们只提取了“约翰史密斯”一次,我们提取了他最近的条目。由于我的数据,所有的名字都是同一个人的,不用担心两个叫约翰史密斯的不同的人。想法?让我知道我是否可以澄清任何事情。
php - 如何使用 MySQL 和 PHP 比较一组数字并获得最相关的结果?
考虑一下:
我想将 D 与其余的进行比较,并得到一组最相关的数字。结果应该是这样的顺序:4(因为 D 与 A 有一个公共数字,4 在 A 以及 B 和 C 中),3(因为 D 与 A 有一个公共数字,3 在 A 和 B 中), 2(因为 D 与 A 有一个公共数字,并且 2 也在 A 中),然后是 5、6、7。
在 PHP/MySQL 中是否有一些算法可以有效地做到这一点?我不想重新发明轮子,而且数据库最终会有大量的集合..
php - php - display links to related content
I am looking to implement a 'youtube related videos' style related content system.
I have 5 tags/keywords for each of my pages, a title and a description. I would like to display links to the two most similar pages.
I am guessing a mysql query based around order by relevance.
many thanks.