이 백서 에서는 Bloom 필터의 기존 오류율 분석이 잘못되었다고 주장하고 실제 오류율에 대한 길고 사소한 분석을 제공합니다. 링크 된 논문은 2010 년에 출판되었지만 블룸 필터의 전통적인 분석이 다양한 알고리즘 및 데이터 구조 과정에서 계속 가르치는 것을 보았습니다.
블룸 필터의 기존 분석이 실제로 올바르지 않습니까?
감사!
이 백서 에서는 Bloom 필터의 기존 오류율 분석이 잘못되었다고 주장하고 실제 오류율에 대한 길고 사소한 분석을 제공합니다. 링크 된 논문은 2010 년에 출판되었지만 블룸 필터의 전통적인 분석이 다양한 알고리즘 및 데이터 구조 과정에서 계속 가르치는 것을 보았습니다.
블룸 필터의 기존 분석이 실제로 올바르지 않습니까?
감사!
답변:
전통적인 분석은 괜찮습니다. "전통적인"분석은 정확하게 설명된다면 근사치입니다. 키를 필터에 해시 할 때 0/1 인 예상 셀 수를 계산 한 다음 실제 수인 것처럼 분석합니다. 요점은 0 (또는 1) 인 셀의 수가 기대 주위에 단단히 집중되어 있기 때문에 근사치입니다. 이것은 잘 알려져 있으며 Andrei Broder의 설문 조사 기사에서도 찾을 수 있다고 생각합니다.
이 백서에서는 실제로 Bloom 필터의 성능은 임의의 변수 (실제 0/1 항목의 분수에 해당함)이며 어떤 이유로 든 그 성능을 정확하게 계산하려면 조합 식을 수행해야합니다. 더 작은 필터의 경우, 사소한 차이가 없을 것입니다.
이 논문의 저자들과 이야기를 나 ve습니다. 그들의 분석은 모두 훌륭하고 훌륭합니다 (심지어 새로운 것이 아니라고 주장하지만). "전통적인 분석이 틀렸다"는 그들의 동기는 과장된 것이라고 생각합니다.
해시 함수가 분리 된 범위를 갖는 스플릿 블룸 필터의 경우 전통적인 분석은 근사치 또는 농도 경계없이 실제로 정확 하다는 Michael의 대답에 추가하겠습니다 . 서로 다른 해시 함수에 대한 오류 확률은 상관 관계가 아닌 독립적이되기 때문입니다. 분할 블룸 필터의 공간 / 오류 트레이드 오프는 기본적으로 블룸 필터와 동일하므로 교습에 좋은 변형이라고 생각합니다.