【问题标题】:bad words filter without bad words坏话过滤​​没有坏话
【发布时间】:2019-03-21 15:15:10
【问题描述】:

我需要一个没有坏词的“坏词”过滤器,因为我不想在我的系统上有一个坏词列表。我认为最简单的方法是使用 Bloom Filter 来存储来自一组坏词的 SHA1。还有其他我应该考虑的方法吗?

【问题讨论】:

  • 我很想写this is a fxxxing good idea :-)
  • 为什么不同时使用和不使用坏话呢? pip install expletives(无耻塞:github.com/alvations/expletives
  • 嗯?你是什​​么意思,有和没有坏话?所有好词的列表?

标签: nlp bloom-filter


【解决方案1】:

为此使用布隆过滤器效果很好。对于误报概率,您应该使用相对较低的值,例如 p = 0.000001(0.0001% 误报)。

SHA-1:对于大多数用途,它不需要是 SHA-1。计算 SHA-1 哈希相对较慢,特别是如果您有很多内容要哈希。 (请记住,您必须分别对每个单词进行散列。)相反,您可以使用 Murmur 散列(例如)。这样,散列会快得多。如果您担心有人故意尝试进行哈希冲突(为什么有人会这样做,我不能说),那么种子应该保密。并且也许使用更强大的东西,比如 SipHash(因为 Murmur 哈希不是为安全而设计的)。

【讨论】:

    猜你喜欢
    • 2013-09-15
    • 2011-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-13
    • 1970-01-01
    • 2012-11-25
    相关资源
    最近更新 更多