這篇文章主要講解了Python如何利用Faiss庫(kù)實(shí)現(xiàn)ANN近鄰搜索,內(nèi)容清晰明了,對(duì)此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會(huì)有幫助。
Embedding的近鄰搜索是當(dāng)前圖推薦系統(tǒng)非常重要的一種召回方式,通過(guò)item2vec、矩陣分解、雙塔DNN等方式都能夠產(chǎn)出訓(xùn)練好的user embedding、item embedding,對(duì)于embedding的使用非常的靈活:
然而有一個(gè)工程問(wèn)題,一旦user embedding、item embedding數(shù)據(jù)量達(dá)到一定的程度,對(duì)他們的近鄰搜索將會(huì)變得非常慢,如果離線(xiàn)階段提前搜索好在高速緩存比如redis存儲(chǔ)好結(jié)果當(dāng)然沒(méi)問(wèn)題,但是這種方式很不實(shí)時(shí),如果能在線(xiàn)階段上線(xiàn)幾十MS的搜索當(dāng)然效果最好。
Faiss是Facebook AI團(tuán)隊(duì)開(kāi)源的針對(duì)聚類(lèi)和相似性搜索庫(kù),為稠密向量提供高效相似度搜索和聚類(lèi),支持十億級(jí)別向量的搜索,是目前最為成熟的近似近鄰搜索庫(kù)。
接下來(lái)通過(guò)jupyter notebook的代碼,給大家演示下使用faiss的簡(jiǎn)單流程,內(nèi)容包括:
對(duì)于已經(jīng)訓(xùn)練好的Embedding怎樣實(shí)現(xiàn)高速近鄰搜索是一個(gè)工程問(wèn)題,facebook的faiss庫(kù)可以構(gòu)建多種embedding索引實(shí)現(xiàn)目標(biāo)embedding的高速近鄰搜索,能夠滿(mǎn)足在線(xiàn)使用的需要
安裝命令:
conda install -c pytorch faiss-cpu
本文名稱(chēng):Python如何利用Faiss庫(kù)實(shí)現(xiàn)ANN近鄰搜索-創(chuàng)新互聯(lián)
新聞來(lái)源:http://www.rwnh.cn/article42/csdjec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、定制開(kāi)發(fā)、App設(shè)計(jì)、響應(yīng)式網(wǎng)站、外貿(mào)建站、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容