问题标签 [inverted-index]

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.

0 投票
1 回答
574 浏览

solr - Solr:将带有 JSON 文件的目录指向索引

我刚开始玩 solr。我按照教程中的说明设置 solr 并阅读了有关索引 json 的说明,但这些说明中没有一个清楚地告诉我如何将 solr 指向包含一组 json 文件的目录。

这是场景:

我有一个目录,其中包含已在目录中转换为 JSON 的 avro 文件。这些 json 文件实际上反映了倒排索引。这是一个例子:

我正在将其作为原型构建(概念证明),实现此目的的最佳方法是什么?

0 投票
1 回答
1492 浏览

java - 带有“[^a-zA-Z0-9]+”的 Java String.split 仍将空格显示为单词

我在使用 Java 中为给定文档创建单词到频率图的程序时遇到问题。当我打印出所有单词时,我仍然将“”视为“单词”。

这是转述的代码:

这是一些示例输出:

这个空白是如何出现的?谢谢

ps 如果你想看完整的代码,这里有一个链接

0 投票
0 回答
439 浏览

regex - 正则表达式的倒排索引?正则表达式搜索引擎?

我想知道是否有可能为所有可能的正则表达式建立一个倒排索引......我有一些想法,但目前它们非常模糊。

我这样做的原因是因为我认为使用正则表达式的搜索引擎会非常有用(我相信很多人会同意),尽管搜索引擎的问题是有很多东西要搜索。这就是为什么会有倒排索引,我猜。

也许类似的东西?我真的不知道。
这是我的想法的描述:

搜索引擎应该是正则表达式搜索引擎。与只匹配单词的普通搜索引擎不同,这将匹配用户指定的特定正则表达式。

搜索示例:[^ ]*ell[^ ]* .*\。

例如,类似的东西。这背后的原因是,有时我想搜索由于普通搜索引擎的局限性而无法找到的东西。

这将是一个简单的类似 sed 的正则表达式,可能有点 javascripty。无论如何,它们都是相似的(具有基础知识)

编辑:我见过正则表达式搜索引擎,但这不是我要问的。我想知道是否可以建立一个。

编辑2:也许是一个倒排索引,其中包含一些单词和数字(及其长度)等。也许是某种表格,我可以快速挑选出一些东西,所以如果我的正则表达式中有一定长度的数字,我可以快速过滤我索引的所有具有该长度的数字吗?

如果我将这些想法结合起来,我就会意识到可能会进行多次搜索,但数据源会缩小,直到剩下的所有内容都与正则表达式匹配?例如:ell.\*\\.将搜索带有 的所有内容e,然后搜索带有 的所有内容,然后搜索带有另一个跟随的所有l内容,然后搜索任意数量的字符后跟 a 。alel.

0 投票
1 回答
208 浏览

machine-learning - 识别信息检索系统中最相关的文档

我在业余时间开发了一个仿照谷歌的搜索引擎。

我使用位于http://infolab.stanford.edu/~backrub/google.html的原始谷歌研究论文作为我的指导方针。

由于我正在开发一个非常非常简化的谷歌版本,我现在根本没有使用 pagerank 算法。

到目前为止,我已经开发了一个简单的解析器和索引器,其结果是我有一个倒排索引,其中包含针对每个唯一单词的命中数、命中位置和文档哈希。

现在我正在尝试开发一个查询引擎。但是,我发现很难为多令牌查询识别最相关的文档。

具体来说,我很难计算文档中查询词彼此的接近程度。

我想到了一种算法,可以扫描每个文档中的查询词,并根据查询词彼此接近的程度计算邻近度分数,但是我怀疑这需要很长时间,我认为有更好的方法这样做我不知道,研究论文太笼统而无法得到答案。

我只是在寻找正确方向的指针。

任何形式的帮助将非常非常非常感激。

0 投票
1 回答
1854 浏览

java - 在文档中找到的单词索引 - Java

我正在尝试编写一个程序,该程序将文本文件作为输入,检索单词,并输出每个单词以及它们所在的每个行号。我在这个项目中遇到了很多麻烦,尽管我已经取得了一些进展...

到目前为止,我有一个ArrayList包含在文档中找到的所有单词,没有标点符号。我能够输出这个列表并查看文本文件中的所有单词,但我不知道从这里去哪里......有什么想法吗?

例子:

我需要能够以某种方式将每个单词与它们来自哪一行相关联,这样我就可以填充一个数据结构,该数据结构将保存每个单词及其关联的行号。

我是一名编程新手,所以我不太熟悉所有类型的数据结构和算法......我的导师建议我使用动态多链表,但我不知道如何实现 ArrayLists 和数组。

任何想法将不胜感激。谢谢!

0 投票
1 回答
1139 浏览

full-text-search - 开发分布式全文搜索索引(AKA 倒排索引)

我知道如何在一台机器上开发一个简单的倒排索引。简而言之,它是一个保存在内存中的标准哈希表,其中: - 键 - 单词 - 值 - 单词位置列表 例如,代码在这里:http ://rosettacode.org/wiki/Inverted_Index#Java

问题:

现在我试图让它分布在 n 个节点之间,依次:

  1. 使该索引水平可扩展
  2. 对此索引应用自动分片。

我对自动分片特别感兴趣。欢迎任何想法或链接!

谢谢。

0 投票
2 回答
894 浏览

algorithm - 计算倒排索引中的单词邻近度

作为搜索引擎的一部分,我开发了一个倒排索引。

所以我有一个列表,其中包含以下类型的元素

现在这个记录是针对一个词的。hitLocation 包含在文档中找到特定单词的位置。

现在我想要的是计算元素List<int> hitLocation与另一个元素的接近程度List<int> hitLocation,然后如果列表中的元素相邻,则增加两个记录的权重。

我遇到的问题是为此目的找到合适的算法。任何帮助表示赞赏

0 投票
1 回答
6990 浏览

ruby - 如何使用正则表达式匹配 Ruby 中的多行字符串以用于倒排索引?

作业说明: http: //pastebin.com/pxJS4gfR

目标:获取文档集合并生成其倒排索引。

我的计划

  1. 从集合文件中获取相关字符串
  2. 标记它们并将它们放入哈希中以供以后使用。

我正在使用以下正则表达式\.I(.*?)\.B\m从集合文件中获取所需的文本,如下所示:http ://rubular.com/r/mOpfuvRT12

编辑:我使用了mudasobwa的建议

这抓取了我需要的必要文本,但是我需要将抓取的文本放入一个 Hash 以供以后使用,我不确定如何使用它,String.scan/regex/因为它返回一个数组数组。

我基本上是想复制这个例子:

0 投票
1 回答
3889 浏览

search - Cassandra 中的二级索引和倒排索引有什么区别?

当我读到这两个时,我认为他们都在解释相同的方法,我用谷歌搜索但一无所获。执行上有区别吗?Cassandra自己做二级索引但是倒排索引必须自己实现?

顺便说一句,哪个搜索速度更快?

0 投票
1 回答
428 浏览

postgresql - 具有复合值类型的 postgres 存储,或者归因于倒排索引的更好方法

似乎无法弄清楚用复合类型的填充 hstore 的语法——注意:我不想将记录转换为 hstore。

我知道这很简单;然而,谷歌今天不是我的朋友。

用例:自定义倒排索引。

数据正在建模词位的倒排索引,复合数据类型是与我将用于实现文档聚类的词位相关的各种概率。有谁知道这样做的更好方法?如果允许将属性附加到倒排索引中的键->发布对,我愿意使用外部系统。

如果它对我正在尝试做的事情有坚实的支持,我会使用外部的东西,我怀疑每个元组坚持 3-10k 词位然后对它们进行批处理会很讨厌,因为整个 hstore 必须被解析和转换。

目前我的词位在每个元组 50-1k 的范围内,主要是几百个,我只是为我的研究算法做这件事。但是必须有更好的方法来做到这一点。