r個桶數量的DGIM算法的錯誤率上限

r個桶數量的DGIM算法的錯誤率上限

當允許具有相同大小的桶的數目是1或者2時,錯誤率上限爲50%

故對相同大小的桶的數目,令其爲 r-1 或者 r ,對於最大桶和最小桶則數目可以爲1~r間的任意一個數。

桶合併規則爲:如果大小爲 2j2^j 的桶的數目爲r+1,則將最左邊的兩個桶合併爲一個 2j+12^{j+1}大小的桶,如果可以繼續合併則繼續合併直至不能合併。

故當最左邊的桶中僅有一個1在查詢範圍內時,錯誤率相對來說是最大的,此時查詢結果被高估。假設最左邊的桶大小爲 2j2^j ,則真實的查詢結果至少 (這裏用"至少"是指這裏假設大小爲2j2^j的桶僅有一個,且右邊的桶數量都是r-1,實際上可以有更多,這樣真實查詢結果會更大,錯誤率將更低,爲了計算上限在此取最少) 應該是:

1+(r1)(2j1+2j2+...+1)=1+(r1)(2j1)1+(r-1)(2^{j-1}+2^{j-2}+...+1)=1+(r-1)(2^j-1)

由於在此處高估了 2j112^{j-1}-1 個,

錯誤率爲: 2j111+(r1)(2j1)<=2j11(r1)(2j1)=1r1 \frac{2^{j-1}-1}{1+(r-1)(2^j-1)}<=\frac{2^{j-1}-1}{(r-1)(2^j-1)}=\frac{1}{r-1}

故錯誤率上界爲 1r1\frac{1}{r-1} ,因此只要令r足夠大,便可以將錯誤率降至夠低,複雜度會增大。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章