问题标签 [shingles]

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 投票
0 回答
37 浏览

python-3.x - 如何制作带状疱疹 x Docs 的布尔矩阵?

我必须制作一个 [所有文档中的唯一瓦片集] x [文档 ID] 的布尔矩阵。到目前为止,我有一个名为allshinglesU的列表,其中包含所有文档中所有唯一的带状疱疹集。我还有一个名为docsAsShingleSetsW的键值字典,它以文档 ID 作为键,在该文档中找到的 shingle 集作为值。如何制作一个布尔矩阵来识别文档 n 上是否出现了唯一的瓦片集?

这是我到目前为止的进展:

0 投票
0 回答
34 浏览

elasticsearch - 在 Elasticsearch 中使用同义词生成带状疱疹

我的索引中的术语有一个备用拼写文件。我想生成包含特定术语的替代拼写的二元组。例如,我biriyani, biryani, briyani的备用拼写 csv 文件中有我的字段包含文本Chicken Biryani。我希望能够生产chicken biryani, chicken biriyani, chicken briyani代币。

现在,如果我使用带有同义词过滤器的空白标记器,则会生成chicken, biriyani, biryani, briyani预期的以下标记。现在,如果我应用 shingle 过滤器,则生成的令牌是chicken, chicken biryani, biryani, biryani biriyani, biriyani, biriyani briyani, briyani. 此标记流包含单词本身的同义词的带状疱疹,这些同义词不应该存在,并且它不包含带有chicken [alternate spellings of biryani]像 chicken biriyani 或 chicken briyani 等的标记。如果我在同义词过滤器之前放置 shingle 过滤器,那么它只会添加同义词标记一元:chicken, chicken biryani, biriyani, biryani, briyani。有没有办法生成包含与原始标记相同位置的同义词的标记,或者在这种情况下chicken biryani, chicken biriyani, chicken briyani

测试示例设置:

我正在运行 Elasticsearch 5.6