1

我需要通过检查每个条目的预定义字符串的模糊匹配来过滤文本文章流(我正在搜索拼写错误的产品名称,有时它们有不同的单词顺序和额外的非字母字符,如“:”或“,”)。

通过将这篇文章放入 sphinx 索引并对其执行搜索,我得到了很好的结果,但不幸的是,我每秒收到数百篇文章,并且在获取每篇文章后更新索引太慢(我知道它不是为此类任务设计的)。我需要一些库,它可以在大约 100kb 的小文本的内存索引中构建并对其执行模糊搜索,这样的东西存在吗?

4

2 回答 2

1

这个问题几乎与贝叶斯垃圾邮件过滤和已经编写的工具相同,可以根据您的标准进行训练以识别。

添加以回应评论

那么你现在如何将流划分为 bin 呢?如果您已经有一个分离文章的语料库,只需将其输入分类器。贝叶斯分类器是在上下文中进行模糊内容匹配的方法,可以对从垃圾邮件到核苷酸到天文光谱类别的所有内容进行分类。

您可以使用较少随机的方法(例如 Levenshtein),但在某些时候您必须描述命中和未命中之间的区别。贝叶斯方法的美妙之处在于,特别是如果您已经拥有一个分离的语料库,您实际上并不需要明确知道您是如何分类的。

于 2010-07-11T18:44:44.023 回答
1

使用 sqlite fts3 扩展怎么样?

使用 fts3(内容文本)创建虚拟表 enrondata1;

(您可以创建任意数量的列——所有列都将被索引)

之后,您插入您喜欢的任何内容,并且可以在不重建索引的情况下搜索它——匹配特定列或整行。

( http://www.sqlite.org/fts3.html )

于 2010-07-11T19:59:33.047 回答