cost 116 ms
當語料庫有 100 億個獨特的 DNA 序列時,如何使用 BK-trees 實現快速模糊搜索引擎?

[英]How to implement a fast fuzzy-search engine using BK-trees when the corpus has 10 billion unique DNA sequences?

我正在嘗試使用 python 中的BK-tree數據結構來存儲具有約 100 億個條目( 1e10 )的語料庫,以實現快速模糊搜索引擎。 一旦我將超過 1000 萬( 1e7 )個值添加到單個 BK 樹中,我開始看到查詢性能顯着下降。 我正在考慮將語料庫存儲到一千棵 BK 樹的森林中並並行查詢它們 ...

BK-樹搜索全部

[英]BK - Tree Search All

BK樹(Burkhard-Keller樹)與模糊字符串搜索(例如拼寫檢查,單詞推薦)相關聯。 並且所有的BK樹搜索算法都與此處說明的相同。 目的是如果我搜索“ aeek” ,則返回例如“ seek”和“ peek” 。 現在,我的問題是,我正在嘗試使用這種模糊字符串搜索算法從給定字典中 ...

刪除 BK 樹中的節點

[英]Deleting a node in a BK Tree

我已經看到許多不同語言的 BK 樹的許多不同實現,並且從字面上看,它們似乎都沒有包含從樹中刪除節點的方法。 即使是最初介紹 BK 樹的原始文章也沒有提供關於節點刪除的有意義的見解,因為作者只是建議標記要刪除的節點以便忽略它: 結構 1 [the BK Tree] 和 2 中的 key 的刪除遵循與上 ...

如何平衡BK樹,是否有必要?

[英]How do I balance a BK-Tree and is it necessary?

我正在研究使用編輯距離算法在名稱數據庫中實現模糊搜索。 我發現了一個數據結構,據說可以通過分而治之的方法來幫助加快速度--Burkhard-Keller Trees 。 問題是我找不到關於這種特定類型樹的非常多的信息。 如果我用任意節點填充我的BK樹,我有多大可能有平衡問題? ...

BK-Tree如何優化

[英]How optimize BK-Tree

我正在 Cython 中實現 BK-Tree。 對於一百萬項,搜索時間太長:大約 30 秒 :( 這是我的 Cython 代碼: 距離.h 例子: 這棵樹開始按 256 位 hash 搜索重復圖像。 如何優化這個findInTree function? ...

使用Levenshtein距離在字典中尋找朋友的朋友

[英]Finding Friend of Friend in a Dictionary using Levenshtein distance

以下是我正在嘗試做的事情。 如果兩個單詞W1和W2的Levenshtein distance為1,則它們是朋友。我也應該找到friend的所有朋友。 我試圖用Bk-Tree做同樣的事情。 它適用於小型字典(字典每行僅包含一個單詞),但對於較大的字典,它的運行速度非常慢,並且運行了一個多小時 ...

該算法是否已正確實施?

[英]Has this algorithm been implemented properly?

我目前正在實施BK樹來進行拼寫檢查。 我正在使用的詞典非常大(數以百萬計的單詞),這就是為什么我根本無法承受任何低效率的原因。 但是,我知道我編寫的查找功能(可以說是整個程序中最重要的部分)可以做得更好。 我希望就此找到一些幫助。 這是我寫的查詢: 我知道我正在不必要地運行循環很 ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM