開創性CVM演算法破解40多年計數難題!電腦科學家擲硬幣算出「哈姆雷特」獨特單字
計數,聽起來簡單,卻在實際執行很困難。
想像一下,你被送到一片原始熱帶雨林,進行野生動物普查。每當看到一隻動物,就拍一張照片。
數位相機只是記錄追蹤動物總數,但你對獨特動物的數量感興趣,卻沒有統計。
那麼,若想取得這獨特動物數量,最好的方法是什麼?
這時,你一定會說,從現在開始計數,最後再從照片中將每一種新物種與名單進行比較。
然而,這種常見的計數方法,有時並不適用於高達數十億條目的資訊量。
來自印度統計研究所、UNL、新加坡國立大學的電腦科學家提出了一種新演算法—CVM。
它可以近似計算長列表中,不同條目的數量,而且只需要記住少量條目就可實現。
#論文網址:https://arxiv.org/pdf/2301.10191
這個演算法適用於任何一次出現一個條目的清單,例如演講中的文字、傳送帶上的商品,或州際公路上的汽車。
CVM演算法是以三位作者首字母命名,在解決「不同元素問題」上所取得的重大進展。
而這問題,長期困擾電腦科學家40多年。
它要求有一種高效的方法來監控一個元素流(其總數可能超過可用記憶體),並估算其中獨特元素的數量。
那麼,CVM演算法究竟是如何解決問題的呢?
開創性CVM演算法,秘訣在於「隨機化」
假設你在聽《哈姆雷特》有聲書。
這部戲劇共有30557個字,有多少是不同的?
為了找到答案,你可以邊聽邊暫停,按字母順序寫下每個單詞,然後跳過清單上已有的單詞,最後,只需要數一下清單上每個單字數。
這種方法是可行的,但太考驗一個人的「記憶量」了。
研究者Vinodchandran Variyam表示,「在典型的資料流情況中,可能會有數百萬個專案需要追蹤。你可能不想把所有的資訊都儲存起來。
這就是,雲端伺服器演算法可以提供更簡單方法的地方」。
訣竅,就在於「隨機化」。
Vinodchandran Variyam幫助發明了一種估算資料流中不同元素數量的CVM演算法
「哈姆雷特」有幾個獨特字?擲硬幣大挑戰
再回到《哈姆雷特》,假設你的「有效記憶體」只能容納100個字。
一旦音訊開始播放,你記下聽到的前100個單詞,並跳過任何重複的單字。
當完成100個單字記錄後,剩下的就是為每個單字擲硬幣-
##正面,保留單字。若為反面,將其刪除。
在這一輪初選之後,你將留下大約50個不同的單字。
現在,你繼續團隊所說的第一輪遊戲Round 1,繼續閱讀《哈姆雷特》,加入新單字。
如果你再次遇到一個已經在清單上的單詞,再次擲硬幣決定,一直到你的記憶體白板中,有100個單字。
然後,根據100次擲硬幣的結果,再次隨機刪除大約一半的單字。 Round 1到此結束。
接下來,進入第二輪Round 2。
和第一輪一樣,我們要增加一個單字的難度-當你遇到重複的單字時,再擲硬幣。
條件是,如果是反面,就像之前一樣刪除它。但如果是正面,就再擲一次硬幣。只有當第二次出現正面時,才保留這個單字。
一旦記憶體白板寫滿,結束這一輪,然後根據100次拋擲結果,再次刪除大約一半的單字。
在第三輪Round 3中,你需要連續三次擲硬幣正面,才能保留一個單字。
在第四輪中,連續四次正面保留一個單詞,以此類推。
最終,在第k輪,你會聽完整部《哈姆雷特》戲劇。
這個練習的重點是,確保每個單字都有相同的出現機率:1/2 (k) 。
假設,如果在《哈姆雷特》音訊結束時,你的清單中有61個單詞,用了六輪的時間完成。
你可以用61除以機率1/2 (6)來估計不同單字的數量-最終在這個遊戲中的結果是3904個。
演算法精度與記憶體量成正比
研究人員Chakraborty、Variyam和Meel從數學上證明了CVM演算法的精確度與內存量的大小成比例。
而《哈姆雷特》剛好有3967個獨特的單字。 (透過普通的計數方法)
在使用100個單字記憶體的實驗中,5輪實驗結果的平均估計為3955個單字。
在1000個單字記憶體憶量下,平均提高到3964個。
Variyam表示,「如果(內存量)大到可以容納所有單詞,那麼我們就可以達到100%的準確率」。
哈佛大學William Kuszmau表示,「這是一個很好的例子,說明即使是非常基礎和被廣泛研究過的問題,有時也可能存在簡單但並不明顯的解決方案仍待被發現」。
以上是開創性CVM演算法破解40多年計數難題!電腦科學家擲硬幣算出「哈姆雷特」獨特單字的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

烏茲別克斯坦正在試驗一種新的數字資產,即由政府債券擔保的Humo代幣。該代幣與國家貨幣掛鉤,1個Humo等於1000總和。根據烏茲別克斯坦在加密資產領域的法律框架,該項目正在實施。多個戰略合作夥伴參與了其開發,其中包括為烏茲別克斯坦3500萬持卡人提供服務的Humo支付系統。得益於Humo與商業銀行、市場和零售結構的廣泛合作,為代幣在日常交易中的廣泛應用創造了條件。項目的技術基礎由Asterium和Broxus公司提供。該項目採用了Broxus開發的Tycho區塊鏈協議。其特點是高交易速度和低交

在VSCode中編寫和測試SQL代碼可以通過安裝SQLTools和SQLServer(mssql)插件實現。 1.在擴展市場中安裝插件。 2.配置數據庫連接,編輯settings.json文件。 3.利用語法高亮和自動補全編寫SQL代碼。 4.使用快捷鍵如Ctrl /和Shift Alt F提高效率。 5.通過右鍵選擇ExecuteQuery測試SQL查詢。 6.使用EXPLAIN命令優化查詢性能。

SUI價格預測預計將增長至10美元,而比特幣現金(BCH)的看漲趨勢已將價格推高至417美元以上。隨著代幣達到3.80美元,關於SUI價格預測的討論持續升溫,SUI在一天內上漲了12%,交易量達到22.5億美元。分析師排名第11位,短期內測試了4美元的目標,並預測到今年年底將上漲至17.41美元,平均估計約為10.49美元。然而,勢頭不僅僅是市場驅動的。鏈上穩定的持有量已超過8.83億美元,突顯了生態系統的活躍度。 CanaryCapital提交的SUIETF申請引起了機構的關注。在開發領域,像P

加密搶跑是什麼?加密搶跑是如何形成的?如何避免加密搶跑?加密領域的搶跑利用未確認交易獲利,借助區塊鏈的透明性。了解交易者、機器人和驗證者如何操縱交易排序,其對去中心化金融的影響,以及保護交易的可能方法。下面,腳本之家小編給大家詳細介紹下加密搶跑吧!什麼是加密領域的搶跑?搶跑長期以來一直是金融市場的問題。它起源於傳統金融領域,指的是經紀人或內部人士利用特權信息,在客戶之前進行交易。這種行為被認定為不道德且非法,監管機構會對此進行查處和

很顯然,某些網絡在2025年下半年的動力正在增長,現在選擇正確的入口點可能意味著巨大的回報。在加密貨幣領域的一個繁忙月份,預售活動升溫,替代幣測試關鍵阻力水平,而某些網絡在2025年下半年表現良好。很顯然,現在選擇正確的入口點可能意味著巨大的獎勵。儘管Chainlink和Cosmos等平台正在探索新的集成和列表,而Aptos擴大了流動性訪問,但Blockdag的日常購買者競爭和預售指標正在創造新的機會。這四個之間的競爭非常激烈,但每個都為那些現在購買頂級加密貨幣的人提供了獨特的視角。以下是對20

排名前十的加密貨幣交易所分別是:1. Binance,2. OKX,3. Huobi,4. Coinbase,5. Kraken,6. Bittrex,7. Bitfinex,8. KuCoin,9. Gemini,10. Bybit,這些交易所因其高交易量、多樣化交易產品、用戶友好的界面和嚴格的安全措施而備受推崇。

PINAI是什麼? PINAI融資情況如何? PINAI如何革新數據隱私?了解PINAI如何解決數字身份碎片化問題,並通過其去中心化架構提供真正個性化的AI服務。探索安全邊緣計算和可信執行環境(TEE)在數據隱私方面的優勢。下面腳本之家小編給大家詳細介紹下PINAI是什麼?以及PINAI融資情況等。有需要的朋友一起看看吧!在當今數字世界中,個人數據分散在各大科技巨頭的平台上,用戶難以掌控自己的數據。目前的AI應用
