OpenAI新模型用的嵌入技術(shù)被網(wǎng)友扒出來了
學(xué)起來吧。

前幾天,OpenAI 來了一波重磅更新,一口氣宣布了 5 個新模型,其中就包括兩個新的文本嵌入模型。
我們知道,嵌入是表示自然語言或代碼等內(nèi)容中概念的數(shù)字序列。嵌入使得機器學(xué)習(xí)模型和其他算法更容易理解內(nèi)容之間的關(guān)聯(lián),也更容易執(zhí)行聚類或檢索等任務(wù)。
使用更大的嵌入(比如將它們存儲在向量存儲器中以供檢索)通常要比更小的嵌入消耗更高的成本、以及更多的算力、內(nèi)存和存儲。而 OpenAI 此次推出的兩個文本嵌入模型分別是更小且高效的 text-embedding-3-small 模型和更大且更強大的 text-embedding-3-large 模型。
這兩個新嵌入模型都使用一種技術(shù)進行訓(xùn)練,允許開發(fā)人員權(quán)衡使用嵌入的性能和成本。具體來說,開發(fā)者通過在 dimensions API 參數(shù)中傳遞嵌入而不丟失其概念表征屬性,從而縮短嵌入(即從序列末尾刪除一些數(shù)字)。例如在 MTEB 基準上,text-embedding-3-large 可以縮短為 256 的大小, 同時性能仍然優(yōu)于未縮短的 text-embedding-ada-002 嵌入(大小為 1536)。

這一技術(shù)應(yīng)用非常靈活:比如當(dāng)使用僅支持最高 1024 維嵌入的向量數(shù)據(jù)存儲時,開發(fā)者現(xiàn)在仍然可以使用最好的嵌入模型 text-embedding-3-large 并指定 dimensions API 參數(shù)的值為 1024,使得嵌入維數(shù)從 3072 開始縮短,犧牲一些準確度以換取更小的向量大小。
OpenAI 所使用的「縮短嵌入」方法,隨后引起了研究者們的廣泛注意。
人們發(fā)現(xiàn),這種方法和 2022 年 5 月的一篇論文所提出的「Matryoshka Representation Learning」方法是相同的。


OpenAI 的新嵌入模型更新背后隱藏的是 @adityakusupati 等人提出的一種很酷的嵌入表征技術(shù)。
而 MRL 的一作 Aditya Kusupati 也現(xiàn)身說法:「OpenAI 在 v3 嵌入 API 中默認使用 MRL 用于檢索和 RAG!其他模型和服務(wù)應(yīng)該很快就會迎頭趕上?!?/p>

那么 MRL 到底是什么?效果如何?都在下面這篇 2022 年的論文里。
MRL 論文介紹

論文標題:Matryoshka Representation Learning
論文鏈接:https://arxiv.org/pdf/2205.13147.pdf
研究者提出的問題是:能否設(shè)計一種靈活的表征方法,以適應(yīng)計算資源不同的多個下游任務(wù)?
MRL 通過以嵌套方式對 O (log (d)) 低維向量進行顯式優(yōu)化在同一個高維向量中學(xué)習(xí)不同容量的表征,因此被稱為 Matryoshka「俄羅斯套娃」。MRL 可適用于任何現(xiàn)有的表征 pipeline,并可輕松擴展到計算機視覺和自然語言處理中的許多標準任務(wù)。
圖 1 展示了 MRL 的核心理念以及所學(xué)習(xí) Matryoshka 表征的自適應(yīng)部署設(shè)置:

Matryoshka 表征的第一個 m-dimensions(m∈[d])是一個信息豐富的低維向量,不需要額外的訓(xùn)練成本,其精確度不亞于獨立訓(xùn)練的 m 維表征法。Matryoshka 表征的信息量隨著維度的增加而增加,形成了一種從粗到細的表征法,而且無需大量的訓(xùn)練或額外的部署開銷。MRL 為表征向量提供了所需的靈活性和多保真度,可確保在準確性與計算量之間實現(xiàn)近乎最佳的權(quán)衡。憑借這些優(yōu)勢,MRL 可根據(jù)精度和計算約束條件進行自適應(yīng)部署。
在這項工作中,研究者將重點放在了現(xiàn)實世界 ML 系統(tǒng)的兩個關(guān)鍵構(gòu)件上:大規(guī)模分類和檢索。
在分類方面,研究者使用了自適應(yīng)級聯(lián),并使用由 MRL 訓(xùn)練的模型產(chǎn)生的可變大小表征,從而大大降低了達到特定準確率所需的嵌入式平均維數(shù)。例如,在 ImageNet-1K 上,MRL + 自適應(yīng)分類的結(jié)果是,在精度與基線相同的情況下,表征大小最多可縮小 14 倍。

同樣地,研究者在自適應(yīng)檢索系統(tǒng)中也使用了 MRL。在給定一個查詢的情況下,使用查詢嵌入的前幾個 dimensions 來篩選檢索候選對象,然后連續(xù)使用更多的 dimensions 對檢索集進行重新排序。與使用標準嵌入向量的單次檢索系統(tǒng)相比,這種方法的簡單實現(xiàn)可實現(xiàn) 128 倍的理論速度(以 FLOPS 計)和 14 倍的墻上時鐘時間速度;需要注意的是,MRL 的檢索精度與單次檢索的精度相當(dāng)(第 4.3.1 節(jié))。

最后,由于 MRL 明確地學(xué)習(xí)了從粗到細的表征向量,因此直觀地說,它應(yīng)該在不同 dimensions 之間共享更多的語義信息(圖 5)。這反映在長尾持續(xù)學(xué)習(xí)設(shè)置中,準確率最多可提高 2%,同時與原始嵌入一樣穩(wěn)健。此外,由于 MRL 具有粗粒度到細粒度的特性,它還可以用作分析實例分類難易程度和信息瓶頸的方法。






































