學界| Facebook新論文介紹相似性搜索新突破:在GPU上實現十億規模

2020-12-04 機器之心Pro

選自arXiv.org機器之心編譯作者:吳攀

相似性搜索的規模和速度一直是研究者努力想要克服的難題。近日,Facebook 人工智慧研究團隊在 arXiv 發布的新論文《Billion-scale similarity search with GPUs》宣稱在這一問題上取得了重大進展,在 GPU 上實現了十億規模級的相似性搜索。該團隊已經將相關實現的代碼進行了開源。機器之心在此對該研究論文及其代碼項目進行了簡單介紹。

論文地址:https://arxiv.org/abs/1702.08734開源地址:https://github.com/facebookresearch/faiss

摘要

相似性搜索(similarity search)可以在用於圖像或視頻等複雜數據處理的專用資料庫系統中尋找應用,這些複雜數據通常是用高維特徵表示的,而且往往需要特定的索引結構(indexing structure)。本論文解決了讓這種任務更好地利用 GPU 的問題。儘管 GPU 擅長數據並行任務,但之前的方法會在並行性不高的算法(如 k-min selection)上遇到瓶頸或不能有效利用內存的層次結構。我們提出了一種用於 k-selection 的設計,其可以以高達理論峰值性能 55% 的速度進行運算,從而實現了比之前最佳的 GPU 方法快 8.5 倍的最近鄰搜索。我們通過為基於積量化(product quantization)的暴力計算、近似和壓縮域搜索(compressed-domain search)提出優化過的設計,從而將其應用到了不同的相似性搜索場景中。在所有這些場景中,我們的方法的表現都遠遠超越了之前的最佳表現。我們的實現可以在 35 分鐘內從 Yfcc100M 數據集的 9500 萬張圖像上構建一個高準確度的 k-NN 圖(graph),也可以在 12 個小時內在 4 個 Maxwell Titan X GPU 上構建一個連接了 10 億個向量的圖。我們已經開源了我們的方法,以便人們進行比較和重複利用。

WarpSelect 簡介

我們的 k-selection 實現名叫 WarpSelect,其完全在寄存器(register)中維持狀態,且僅需要在數據上進行單次通過,從而避免了 cross-warp synchronization。其使用了 merge-odd 和 sort-odd 作為原語(primitive)。因為寄存器文件能比共享內存提供遠遠更多的存儲,所以它支持 k ≤ 1024。每一個 warp 都專用於 k-selection 的 n 個數組 [ai] 中的單一一個。如果 n 足夠大,那麼每個 [ai] 一個 warp 會導致 GPU 被完全佔用。如果 l 是預先已知的,每個 warp 的大 l 會通過遞歸分解(recursive decomposition)進行處理。

圖 2:WarpSelect 概覽。輸入值從左邊流入,右邊的 warp queue 保存其輸出結果

算法 3:WarpSelect 的偽代碼

以下是對 FAIR 開源的相關項目 Faiss 的 README.md 文件的編譯介紹:

項目地址:https://github.com/facebookresearch/faiss

Faiss 是一個用於有效的相似性搜索和密集向量聚類的庫。其包含了在任何大小(甚至可以大到裝不進 RAM)的向量集中進行搜索的算法。其也包含用於評估和參數調整的支持性代碼。Faiss 是用 C++ 編寫的,且帶有用於 Python/numpy 的完整封裝器(wrapper)。其中一些最有用的算法是在 GPU 上實現的。Faiss 由 Facebook AI Research 開發。

介紹

Faiss 包含幾種用於相似性搜索的方法。其假定其實例可以被表示成向量且可以通過整數識別,然後這些向量可以與 L2 實例或點積進行比較。類似於一個查詢向量(query vector)的向量是那些有最低 L2 實例或最高點積的帶有查詢向量的向量。其也支持餘弦相似性(cosine similarity),因為這是在歸一化的向量上的點積。

這裡的大多數方法都和那些基於二元向量和緊湊的量化代碼類似,僅使用了一種對向量的壓縮過的表示,也不要求保持原始向量。這通常會導致搜索準確度下降,但這些方法可以在單個向量上在主內存中擴展到數十億個向量。

該 GPU 實現可以接受來自 CPU 或 GPU 內存的輸入。在一個帶有 GPU 的伺服器上,其 GPU 索引可以被用作其 CPU 索引的插入替換(比如,使用 GpuIndexFlatL2 替代 IndexFlatL2),且來自或發往 GPU 內存的副本可以被自動地處理。

構建

該庫基本上是通過 C++ 實現的,帶有可選的通過 CUDA 的 GPU 支持和一個可選的 Python 接口。它使用了一個 Makefile 進行編譯。參見 INSTALL 了解詳情:https://github.com/facebookresearch/faiss/blob/master/INSTALL

Faiss 的工作方式

Faiss 是圍繞一種存儲了一個向量集的索引類型(index type)而構建的,並且提供了一個使用 L2 和/或點積向量比較在其中進行搜索的函數。一些索引類型是簡單的基線,比如精準搜索。大部分可用的索引結構都對應了與以下方面的權衡:

搜索時間搜索質量每個索引向量所用的內存訓練時間無監督學習時對外部數據的需求

Faiss 的完整文檔

以下連結可訪問文檔:

完整文檔(包括一個教程)請參閱這個 wiki 頁面:http://github.com/facebookresearch/faiss/wikidoxygen 文檔給出了每個類的信息:http://rawgithub.com/facebookresearch/faiss/master/docs/html/annotated.html要重現這篇研究論文的結果,請參考基準 README:https://github.com/facebookresearch/faiss/blob/master/benchs/README.md

本文為機器之心編譯,轉載請聯繫本公眾號獲得授權。

相關焦點

  • 新賽道新突破!我國研製出全球神經元規模最大的類腦計算機
    該計算機使用了792顆由浙江大學研製的達爾文2代類腦晶片,神經元數量規模相當於小鼠大腦,典型運行功耗只需要350-500瓦,這是目前國際上神經元規模最大的類腦計算機。與此同時,團隊還研製了專門面向類腦計算機的作業系統——達爾文類腦作業系統,實現對類腦計算機硬體資源的有效管理與調度,支撐類腦計算機的運行與應用。
  • Facebook 今年被 CVPR 收錄的論文都說了啥?
    本論文引入了 DeepSDF,即一個用於形狀類別表徵的學到的連續符號距離函數(SDF),它能夠基於局部和帶噪聲的 3D 輸入數據實現高質量形狀表徵、插值和補充。論文地址:https://arxiv.org/pdf/1901.05103.pdf《使用網絡規模近鄰搜索的對抗性圖像的防禦》Defense Against Adversarial Images Using Web-Scale
  • Science昨日首次撤稿中國學界論文
    文章作者聲稱該研究提出了一種提高電解質離子電導率的方法,並完成了一種高離子電導率的電解質開發,「研究利用半導體異質界面場誘導金屬態,助推超質子實現又快又好地「跑起來」,從而獲得優異的電導率。這與傳統電解質材料電導率相比,提升了 3 個數量級,並且實現了先進質子陶瓷燃料電池的示範」。
  • 中國人類蛋白質組學研究新突破三大看點
    新華社北京3月2日電 題:「發現肝細胞癌精準治療潛在新靶點!」——中國人類蛋白質組學研究新突破三大看點  新華社記者 陳芳、胡喆  近日,生命科學研究領域再傳喜訊!我國科學家通過國際權威期刊《自然》雜誌上線發表了關於早期肝細胞癌蛋白質組研究領域取得突破的論文,發現了肝細胞癌精準治療的潛在新靶點。
  • 臺大教授論文違反學術倫理 學界籲進一步調查重振聲譽
    臺大教授論文違反學術倫理 學界籲進一步調查重振聲譽 2017-01臺灣學界則呼籲相關部門進行公平、公正調查,重振學術界聲譽。  臺灣大學生化科學研究所教授郭明良團隊此前在國際期刊發表多篇大腸癌幹細胞相關研究成果。2016年11月,有匿名網站質疑其多篇論文圖片涉造假,違反學術倫理,包括臺大校長楊泮池與郭明良共同署名的論文。當月,臺大宣布成立特別委員會進行調查。  臺大日前召開記者會說明階段性調查結果。
  • 東北這位教授厲害了:發200餘篇論文、帶領團隊突破國外技術封鎖,創效數十億
    近年來,他帶領團隊通過自主研製突破了十餘項關鍵技術,打破國外技術封鎖,間接為製造企業創造數十億元的經濟價值;深耕&34;造幾十載,他發表學術論文200餘篇,屢獲科技獎,產出一批具有重大意義的科研學術成果;助力學校建設,他帶領全院實現一系列突破。他是瀋陽工業大學機械工程學院院長劉偉軍教授。
  • 我科學家在氮化反應領域實現新突破
    焦寧介紹,在藥物化學工業中,醯胺鍵的構建是應用最為廣泛的化學反應,約佔總反應類型數的25%。長期以來,發展高效的醯胺合成方法一直是合成化學的主要目標之一。目前,發現於1923年的施密特反應,被廣泛應用於天然產物及藥物合成中,但這一反應依賴於具有潛在爆炸性和高毒性的疊氮化物的使用,嚴重製約了該方法在更多藥物、精細化工品和材料合成中的應用和發展。
  • 科研時間┃論文相似性檢測:你做對了嗎?
    論文相似性檢測(PSD:Paper Similarity Detection )俗稱「 論文查重」或者「學術不端檢測
  • 全真道與老莊學研究的新進展
    在到會的代表中,既有一批成就卓越的資深學者,也有眾多論著豐厚的中年專家,還有不少嶄露頭角的年輕學人;既有蜚聲學界的海外漢學家,又有專心學術的道門中人。可謂老中青三代學者濟濟一堂,教外教內人士暢所欲言。這是繼2008年4月在華中師範大學舉辦全真道與老莊學國際學術研討會以後的又一次盛會。
  • 解密搜索營銷 未來新圈地運動二大變局
    搜狐與阿里巴巴成立了「新搜狗」;新華社宣布與中移動合作成立新媒體國家傳播公司,推出開發移動終端的新搜尋引擎業務;人民網推出以新聞內容為主的獨立搜尋引擎;國家網絡電視臺CNTV正在醞釀推出獨立搜尋引擎;Google此前處於伺服器轉移及ICP(網絡內容服務商)牌照審核的不確定性當中,以至於在安撫廣告客戶及代理商方面出現漏洞,使市場份額繼續下滑,由上一季度的31%下滑至這一季度的24%,但仍佔據中國搜尋引擎市場老二的位置
  • 學界| 斯坦福Nature論文宣布新突破:深度學習皮膚癌診斷達專家水平
    該研究的相關論文《Dermatologist-level classification of skin cancer with deep neural networks》已經發表在 Nature 上。本文編譯自史丹福大學的官方介紹新聞,讀者可在文末查看論文摘要和點擊「閱讀原文」查閱原論文。
  • 我在液態金屬生物醫學材料學實現全面突破
    原標題:我在液態金屬生物醫學材料學實現全面突破   液態金屬是物理化學行為十分獨特的新興功能物質。過去,科學家們大多關注液態金屬在半導體、機器人製造等方面的應用,但我國科學家的研究卻開闢了液態金屬的新領域——日前,中國科學院理化技術研究所低溫生物與醫學實驗室和清華大學醫學院組成的聯合小組,首次系統地提出並構建了液態金屬生物醫學材料學新領域,並應學術期刊《國際材料學評論》之邀,撰寫了專題評述論文。
  • Facebook開戶政策更新:部分新廣告主最多只能創建7個廣告帳戶;Face...
    快來看下吧~01開戶政策更新:對部分新廣告主引入新開戶數額限制措施從7月14日開始,Facebook將開始對一部分新的電商廣告主引入新開戶數額限制的風控措施。此措施在初步階段將只限於一些沒有直客團隊照顧的新電商客戶。對於這些新客戶,Facebook將實行在最初階段給予7個新帳戶數額的限制(7個新帳戶指所有代理商開戶的總額)。廣告主必須在滿足一段時間的Facebook內部風險評估後, 方能創建更多新帳戶。
  • 上海科學家用新轉基因技術大量獲取蜘蛛絲蛋白
    中新社上海8月14日電 (鄭瑩瑩)蜘蛛絲是自然界中機械性能最好的天然蛋白纖維,其強度甚至高於用於製作防彈衣的凱夫拉縴維,在工業、醫療和國防上都有著廣泛的應用前景,但如何大量獲取蜘蛛絲纖維一直是難題。相關論文報導新近在線發表於國際學術期刊PNAS(《美國科學院院報》)。譚安江研究員告訴中新社記者,蠶絲蛋白和蜘蛛絲蛋白在結構上有一定的相似性,利用轉基因家蠶獲取蜘蛛絲蛋白並不是一個新想法,10年前就有日本科學家進行了嘗試,美國科學家在2012年也發表了相關文章,但在這些研究中蜘蛛絲蛋白在蠶繭裡的含量都很低。
  • facebook臉書中文版下載
    啥,沒時間,不怕,facebook臉書中文版下載滿足你,快來下載體驗吧。facebook臉書中文版下載版本記錄:facebook臉書中文版下載絕對是一款經典佳作,快來下載體驗。
  • Facebook 發布 Detectron2:基於 PyTorch 的新一代目標檢測工具
    目前已在 GitHub 上開源,雷鋒網 AI 開發者將其重要內容整理編譯如下。Detectron2 簡介據官方介紹,Detectron2 是 FAIR 的下一代目標檢測和分割研究平臺。目前,它實現了最先進的目標檢測算法。
  • Hinton等人新研究:如何更好地測量神經網絡表示相似性
    谷歌大腦 Simon Kornblith、Geoffrey Hinton 等人的一項新研究引入了 centered kernel alignment (CKA) 作為相似性指數,並分析 CKA、線性回歸、典型相關分析(CCA)等相關方法之間的關係,證明 CKA 優於其他相似性指數。在機器學習的很多任務中,深度神經網絡可以自動從數據中學習強大的特徵表示。
  • 促進電子信息材料發展 學界與產業界該如何「握手」
    在12月6日舉行的「下一代電子信息材料與器件高峰論壇暨第三屆低維材料應用與標準研討會」中,12位院士就如何打通集成電路及半導體行業的新材料研發、 應用和產業升級建言獻策。中國科學院院士劉忠範在大會報告中指出:「材料研發需要工匠精神,絕非短期突擊所能為。
  • 大腦網絡和宇宙網絡的驚人相似性
    它可以被建模為一個多層網絡,也就是所謂大腦連接組:近鄰的神經元連接形成局部結構,不同的局部結構之間形成連接實現認知功能。揭開人腦連接組的結構和功能之謎,並明確膠質細胞和微環境的作用,是如今神經科學主要的挑戰。
  • 二十載AI論文大調查,十萬多篇論文分析「學界鴻溝在加劇」
    為了更加直觀的體現公司在科研中的作用,作者用上圖展示了在一段時間內,與公司相關的論文在人工智慧會議上的份額。上圖表明,在最「著名」的十個會議中,都在經歷「公司力量」的上升趨勢。 此外,上圖也說明了,各領域校企合作論文的比例都有不同程度的上漲,其中KDD(數據挖掘頂級會議)中合作論文在2020年比例超過50%,ICCV(國際計算機視覺大會)達到45%。