開源之夏 2022 | 申請 Jina AI 社區(qū)任務(wù),成為業(yè)界領(lǐng)先的神經(jīng)搜索開源項(xiàng)目貢獻(xiàn)者!
開源之夏 2022 項(xiàng)目已發(fā)布,申請 Jina AI 項(xiàng)目的同學(xué)可以準(zhǔn)備起來了~
開源之夏是由「開源軟件供應(yīng)鏈點(diǎn)亮計(jì)劃」發(fā)起,并長期支持的一項(xiàng)暑期開源活動(dòng)。旨在鼓勵(lì)全球在校學(xué)生,積極參與開源軟件的開發(fā)維護(hù),促進(jìn)優(yōu)秀開源軟件社區(qū)的蓬勃發(fā)展,培養(yǎng)和發(fā)掘更多優(yōu)秀的開發(fā)者。
今年是開源之夏舉辦的第三屆,共計(jì)吸引了 124 家社區(qū)提報(bào)超過 300+ 項(xiàng)目。Jina AI 作為業(yè)內(nèi)領(lǐng)先的神經(jīng)搜索 (Neural Search) 開源企業(yè),在開源之夏 2022 中共計(jì)提報(bào)了 3 個(gè)項(xiàng)目任務(wù)。
同學(xué)們現(xiàn)已可以進(jìn)行任務(wù)申請,獲得 Jina AI 資深工程師的親自指導(dǎo),以及 Jina AI 實(shí)習(xí)機(jī)會。完成項(xiàng)目并貢獻(xiàn)給社區(qū)后,還將獲得開源之夏活動(dòng)獎(jiǎng)金和結(jié)項(xiàng)證書。
Jina AI 項(xiàng)目任務(wù)詳情一覽
項(xiàng)目一:近似最近鄰搜索算法 HNSW 的改進(jìn)與優(yōu)化?
涉及技術(shù)領(lǐng)域:AI, 近似最近鄰, 向量檢索?
編程語言:C++, Python
項(xiàng)目難度:進(jìn)階
聯(lián)系導(dǎo)師:felix.wang@jina.ai
項(xiàng)目支持報(bào)名語言:中文
項(xiàng)目成果倉庫:https://github.com/jina-ai/annlite
項(xiàng)目描述:
針對海量向量數(shù)據(jù)的搜索,無論是工業(yè)界還是學(xué)術(shù)界都做了大量的研究。由于精確的向量搜索在海量數(shù)據(jù)的場景下搜索時(shí)間過長,所以目前的常見做法,是在向量上建立近似搜索索引。學(xué)術(shù)上我們稱之為近似最近鄰搜索 ANN (Approximate Nearest Neighbor Search) 問題,通常都是通過犧牲搜索精度來換取時(shí)間和空間的方式,從大量樣本中獲取最近鄰。
根據(jù) Benchmark 上 ANN 算法的基準(zhǔn)測試結(jié)果,基于圖結(jié)構(gòu)的 HNSW 算法在查詢速度和精度上優(yōu)于其他 ANN 算法。但是 HNSW 算法本身的主要問題就是對內(nèi)存占用較大,限制了其可以索引的數(shù)據(jù)大小。
目前我們的開源向量索引產(chǎn)品 AnnLite 核心近似搜索算法是基于 HNSW 來實(shí)現(xiàn),并在此基礎(chǔ)上提供了更加豐富的功能(例如支持前置過濾近似查詢)。為了使得 AnnLite 能夠具備更強(qiáng)的競爭力和實(shí)際應(yīng)用價(jià)值,我們希望能夠進(jìn)一步對 HNSW 算法進(jìn)行改進(jìn)和優(yōu)化。
技術(shù)要求:
開發(fā)者需要對 ANN 算法有較深入的理解,可以熟練使用 C++ 編程語言
產(chǎn)出要求:
* 需要 HNSW 支持向量量化 quantization 技術(shù),減少內(nèi)存占用的同時(shí)能夠加快向量距離的計(jì)算;
* 對 HNSW 的圖索引結(jié)構(gòu)進(jìn)行改進(jìn),在相同數(shù)據(jù)索引大小的情況下,進(jìn)一步減少圖規(guī)模大?。?/p>
* 升級前置條件過濾引擎,減少前置過濾耗費(fèi)的時(shí)間;
* 需要能夠撰寫完整的文檔,單元測試和集成測試。
申請地址:https://summer-ospp.ac.cn/#/org/prodetail/2203b0298
項(xiàng)目二:支持基于 Redis 的近似最近鄰搜索?
涉及技術(shù)領(lǐng)域:AI, 數(shù)據(jù)庫,存儲,近似最近鄰, 向量檢索?
編程語言:Python
項(xiàng)目難度:進(jìn)階
聯(lián)系導(dǎo)師:bo.wang@jina.ai
項(xiàng)目支持報(bào)名語言:中文
項(xiàng)目成果倉庫:https://github.com/jina-ai/docarray
項(xiàng)目描述:
神經(jīng)搜索 (Neural Search) 特指使用人工神經(jīng)網(wǎng)絡(luò)模型的搜索系統(tǒng)。很多常見的搜索應(yīng)用,比如以圖搜圖、聽聲辨樂,都需要神經(jīng)搜索。在神經(jīng)搜索系統(tǒng)中,所有的文件會通過人工神經(jīng)網(wǎng)絡(luò)被表示為一個(gè)向量并存儲在索引中。當(dāng)用戶進(jìn)行搜索時(shí),用戶的查詢目標(biāo)也會被表示為一個(gè)向量。通過比較查詢向量與索引向量的相似度/距離,我們可以找到最為匹配的文件。
基于神經(jīng)網(wǎng)絡(luò)的搜索通常需要在短時(shí)間內(nèi)查詢到最相似的文件。這依賴于近似最近鄰搜索 (Approximately Nearest Neightbour Search),簡稱 ANN 搜索。作為一個(gè)前沿研究領(lǐng)域,學(xué)者們已經(jīng)提出很多高效的 ANN 算法。Redis 數(shù)據(jù)庫目前已經(jīng)支持基于圖的 ANN 搜索算法:HNSW,該算法能夠最大程度的達(dá)到檢索召回率和檢索時(shí)間的平衡。
DocArray 作為 Jina AI 神經(jīng)搜索全家桶的底層模塊,能夠幫助開發(fā)者快速開發(fā)搜索系統(tǒng)。在DocArray 中,我們已經(jīng)支持了多種向量數(shù)據(jù)庫作為存儲后臺,如 ANNLite, Weaviate, Qdrant 以及 Elasticsearch。
為了幫助 Redis 社區(qū)的開發(fā)者,我們希望支持 Redis 數(shù)據(jù)庫作為 DocArray 的存儲后臺,幫助用戶高效的進(jìn)行向量檢索。
技術(shù)要求:
需要開發(fā)者對 DocArray, Redis 以及背后基于 HNSW 的 ANN 搜索算法有一定理解。
產(chǎn)出要求:
* 需要在 DocArray 中集成 Redis 作為存儲后臺;
* 代碼有完整的文檔及單元測試、集成測試;
* 需要在 DocArray 中產(chǎn)出 Redis ANN 搜索的基準(zhǔn),即:使用基于 Redis 的查詢速度/召回率對比我們已經(jīng)支持的存儲后臺,結(jié)果將發(fā)表在我們的比較基準(zhǔn)頁面。
申請地址:https://summer-ospp.ac.cn/#/org/prodetail/2203b0299
項(xiàng)目三:基于深度學(xué)習(xí)的3D物體特征表達(dá)與學(xué)習(xí)?
涉及技術(shù)領(lǐng)域:AI, 深度學(xué)習(xí)框架, 表征學(xué)習(xí), 3D Mesh 模型
編程語言:Python
項(xiàng)目難度:進(jìn)階
聯(lián)系導(dǎo)師:jem.fu@jina.ai
項(xiàng)目支持報(bào)名語言:中文
項(xiàng)目成果倉庫:https://github.com/jina-ai/executor-3d-encoder
項(xiàng)目描述:
3D 物體的表征形式多種多樣,其中一個(gè)比較典型的方法是 3D 點(diǎn)云,即某個(gè)坐標(biāo)系下的點(diǎn)的數(shù)據(jù)集。相比于文本、圖像,其包含了物體更加豐富的信息,包括三維坐標(biāo) X,Y,Z、顏色、分類值、強(qiáng)度值、時(shí)間等等。
3D 物體一個(gè)比較典型的應(yīng)用場景就是元宇宙,其中存在著大量的數(shù)字 3D 模型。精確建模與理解這些虛擬物體可以幫助我們更好的實(shí)現(xiàn)對 3D 模型進(jìn)行分類,搜索,以及管理。
目前我們已經(jīng)對一些 3D 物體模型的預(yù)訓(xùn)練模型進(jìn)行了封裝,并且支持對模型的微調(diào) (Finetune),使得用戶可以更加便捷地將這些模型應(yīng)用到實(shí)際生產(chǎn)環(huán)境中。
為了更好的適應(yīng)具體使用場景,針對預(yù)訓(xùn)練模型的微調(diào)通常會使用表征學(xué)習(xí)。表征學(xué)習(xí) (Representation Learning) 是深度學(xué)習(xí)的一個(gè)分支,其廣泛應(yīng)用于工業(yè)界,它通過訓(xùn)練深度學(xué)習(xí)模型優(yōu)化輸入數(shù)據(jù)的向量表示,以適應(yīng)相似度計(jì)算、檢索、推薦等不同應(yīng)用。
將深度表征學(xué)習(xí)與 3D 模型數(shù)據(jù)結(jié)合可以將 3D 物體的特征更好的展現(xiàn)出來,以此支持各個(gè)領(lǐng)域下對 3D 物體數(shù)據(jù)的搜索需求。
本項(xiàng)目旨在集成更多針對 3D 物體的神經(jīng)網(wǎng)絡(luò)模型,并實(shí)現(xiàn)對不同模型的統(tǒng)一管理。
技術(shù)要求:
對深度學(xué)習(xí)/表征學(xué)習(xí)有基本理解,熟練使用和掌握 Python,熟練使用和掌握PyTorch 等深度學(xué)習(xí)框架
產(chǎn)出要求:
* 調(diào)研并實(shí)現(xiàn)目前 SOTA 的 3D 點(diǎn)云編碼網(wǎng)絡(luò)
* 實(shí)現(xiàn) 3D 點(diǎn)云數(shù)據(jù)的預(yù)處理,支持對不同模型的快速訓(xùn)練
* 需要能夠撰寫完整的文檔,單元測試和集成測試
申請地址:https://summer-ospp.ac.cn/#/org/prodetail/2203b0345
報(bào)名申請 Jina AI 項(xiàng)目任務(wù)
以上就是 Jina AI 在開源之夏 2022 的項(xiàng)目任務(wù)及詳情,現(xiàn)已開啟學(xué)生與社區(qū)項(xiàng)目溝通通道,其他關(guān)鍵時(shí)間節(jié)點(diǎn)如下如所示:
