那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么是向量數據庫?關系數據庫和向量數據庫之間的區別是什么?

新機器視覺 ? 來源:新機器視覺 ? 2023-08-16 10:13 ? 次閱讀

近些年來,向量數據庫引起業界的廣泛關注,一個相關事實是許多向量數據庫初創公司在短期內就籌集到數百萬美元的資金。

你很可能已經聽說過向量數據庫,但也許直到現在才真正關心向量數據庫——至少,我想這就是你現在閱讀本文的原因…… 如果你閱讀本文只是為了簡單回答上面的問題,那就讓我們直接進入話題吧。

定義:什么是向量數據庫?

向量數據庫是一種以向量嵌入(高維向量)方式存儲和管理非結構化數據(如文本、圖像或音頻)的數據庫,以便于快速查找和檢索類似對象。

如果這個定義只會引起人們更多的理解上的混亂,那么就讓我們一步一步來進行解釋。本文的靈感來自WIRED的5級視頻系列,本文將揭示向量數據庫在以下三個難度級別中的內容:

最淺顯的解釋

向數字原住民和技術愛好者解釋向量數據庫

工程師和數據專業人員解釋向量數據庫

向量數據庫:最淺面的解釋

這有點離題,但你知道我不明白的是什么嗎?當人們按顏色排列書架時,哎喲!當他們不知道書的封面是什么顏色時,他們是如何找到書的?

向量數據庫背后的直覺

如果你想快速找到一本特定的書,那么,按類型和作者排列書架比按顏色排列更有意義。這就是為什么大多數圖書館都是這樣組織的原因,以便幫助你快速找到你想要的東西。

但是,你如何根據一個查詢而不是一個流派或作者來找到可以閱讀的書籍呢?如果你想讀一本書,例如:類似于《饑餓的毛毛蟲》或關于一個和你一樣喜歡吃美食的主角?

如果你沒有時間瀏覽書架,最快的方法是向圖書管理員征求他們的推薦,因為他們讀過很多書,會確切地知道哪本書最適合你的查詢。

在組織書籍的例子中,你可以將圖書管理員視為向量數據庫,因為向量數據庫旨在存儲關于對象(例如書籍)的復雜信息(例如書籍的情節)。

因此,向量數據庫可以幫助你根據特定的查詢(例如,一本關于…的書)而不是一些預定義的屬性(例如,作者)來查找對象,就像圖書管理員一樣。

向數字原住民和技術愛好者解釋向量數據庫

現在,讓我們繼續探討圖書館的例子,并獲得更多的技術知識:當然,現在,在圖書館中搜索書籍的技術比只按類型或作者搜索更先進了一些。

如果你去圖書館,通常角落里會有一臺電腦,可以幫助你找到一本具有更具體屬性的書,比如書名、國際標準圖書編號、出版年份或一些關鍵詞。根據輸入的值,就可以查詢存儲可用書籍信息的數據庫。不過,這個數據庫通常是一個傳統的關系數據庫。

c1f95bca-3b70-11ee-9e74-dac502259ad0.png

關系數據庫和向量數據庫之間的區別是什么?

關系數據庫和向量數據庫之間的主要區別在于它們存儲的數據類型。雖然關系數據庫是為適合表的結構化數據而設計的,但是,向量數據庫即是為非結構化數據(如文本或圖像)而設計的。

存儲的數據類型也會影響數據的檢索方式:在關系數據庫中,查詢結果基于特定關鍵字的匹配。在向量數據庫中,查詢結果是基于相似性進行的。

你可以把傳統的關系數據庫想象成電子表格。它們非常適合存儲結構數據,例如關于一本書的基本信息(例如,標題、作者、ISBN等),因為這類信息可以存儲在列中,非常適合過濾和排序。

使用關系數據庫,你可以快速獲取所有書籍,例如兒童書籍,并且標題中有“毛蟲”。

但是,如果你喜歡《饑餓的毛毛蟲》是關于食物的呢?你可以試著搜索關鍵詞“食物”,但除非在書的摘要中提到關鍵詞“食品”,否則你甚至找不到“非常饑餓的毛毛蟲”。相反,你可能會以一堆烹飪書和失望告終。

這是關系數據庫的一個限制:你必須添加你認為某人可能需要的所有信息才能找到該特定項目。但是,你怎么知道該添加哪些信息以及添加多少信息呢?添加所有這些信息往往非常耗時,并且不能保證完整性。

然而,這正是向量數據庫發揮作用的地方! 不過,你首先需要先來了解一下一個叫做向量嵌入(vector embeddings)的概念。

今天的機器學習(ML)算法可以將給定的對象(例如,單詞或文本)轉換為保留該對象信息的數字表示。想象一下,你給一個ML模型一個詞(例如,“食物”),然后這個ML模型發揮了它的魔力,給你返回了一長串數字。這個長長的數字列表是單詞的數字表示,即稱為向量嵌入。

因為這些嵌入是一長串數字,所以我們稱之為高維。讓我們假設這些嵌入只是三維的,以便將它們可視化,如下所示。

c24bb762-3b70-11ee-9e74-dac502259ad0.png ?

你可以看到,類似的單詞,如“饑餓”(hungry)、“口渴”(thirsty)、“食物”(food)和“飲料”(drink),都被分組在一個相似的角落里,而其他單詞如“自行車”(bicycle)和“汽車”(car),則在這個向量空間中靠近在一起,但在不同的角落里。

數字表示使我們能夠將數學計算應用于通常不適合計算的對象,如單詞。例如,除非將單詞替換為其嵌入;否則,以下計算將不起作用:

drink - food + hungry = thirsty

因為我們可以使用嵌入進行計算,所以我們也可以計算一對嵌入對象之間的距離。兩個嵌入對象之間的距離越近,它們就越相似。

正如你所看到的,向量嵌入非常酷。

讓我們回到前面的例子,假設我們將每本書的內容嵌入到圖書館中,并將這些嵌入存儲在向量數據庫中。現在,當你想找到一本“主角喜歡食物的童書”時,你的查詢也會被嵌入,并返回與你的查詢最相似的書籍,例如《饑餓的毛毛蟲》或《金發姑娘與三只熊》。

向量數據庫的使用情況是什么?

事實上,向量數據庫在大型語言模型(LLM)的宣傳開始之前就已經存在了。最初,它們被應用于推薦系統中,因為它們可以快速找到給定查詢的相似對象。但是,由于它們可以為大型語言模型提供長期記憶,因此最近也被應用于問答應用程序中。

向工程師和數據專業人員解釋向量數據庫

如果在打開本文之前,你已經猜到向量數據庫可能是存儲向量嵌入的一種方式,并且只想知道向量嵌入的背后是什么,那么,現在讓我們來深入了解并討論一下相關的算法。

向量數據庫是如何工作的?

向量數據庫能夠快速檢索查詢中的類似對象,因為它們已經預先計算過了。其基本概念被稱為近似最近鄰(Approximate Nearest Neighbor:ANN)搜索,它使用不同的算法來索引和計算相似性。

正如你所能想象的,當你有數百萬個嵌入時,用簡單的k近鄰(kNN)算法計算查詢和每個嵌入對象之間的相似性可能會變得相當耗時。而使用ANN搜索算法,你可以以一定的準確性換取速度,并檢索與查詢近似最相似的對象。

索引:為此,向量數據庫對向量嵌入進行索引。此步驟將向量映射到數據結構,從而實現更快的搜索。

你可以把索引看作是把圖書館里的書分成不同的類別,比如作者或流派。但由于嵌入可以包含更復雜的信息,進一步的分類可能是“主角的性別”或“情節的主要位置”。因此,索引可以幫助您檢索所有可用向量的較小部分,從而加快檢索速度。

我們不會討論索引算法的技術細節;但是,如果你有興趣進一步閱讀,你可能想從查找分層導航小世界(Hierarchical Navigable Small World:HNSW)開始。

相似性度量:為了從索引向量中找到查詢的最近鄰居,向量數據庫應用相似性度量。常見的相似性度量包括余弦相似性、點積、歐幾里得距離、曼哈頓距離和漢明距離(Hamming distance)。

向量數據庫相對于將向量嵌入存儲在NumPy數組中的優勢是什么?

我經常(已經)遇到的一個問題是:我們不能只使用NumPy數組來存儲嵌入嗎?——當然,如果你沒有很多嵌入,或者你只是在做一個有趣的愛好項目,你可以這樣做。但正如你已經猜到的,當你有很多嵌入時,向量數據庫會明顯更快,而且你不必把所有東西都保存在內存中。

最后,我僅會簡短地說一句,因為伊桑·羅森塔爾在解釋使用向量數據庫和使用NumPy數組之間的區別方面做得比我寫的要好得多。





審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 存儲器
    +關注

    關注

    38

    文章

    7528

    瀏覽量

    164345
  • 向量機
    +關注

    關注

    0

    文章

    166

    瀏覽量

    20926
  • 機器學習
    +關注

    關注

    66

    文章

    8439

    瀏覽量

    133087
  • LLM
    LLM
    +關注

    關注

    0

    文章

    299

    瀏覽量

    400

原文標題:一文帶你全面理解向量數據庫

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    大模型卷價格,向量數據庫“卷”什么?

    被大模型“帶飛”這一年,向量數據庫才剛剛寫下序言
    的頭像 發表于 05-23 09:24 ?1840次閱讀
    大模型卷價格,<b class='flag-5'>向量</b><b class='flag-5'>數據庫</b>“卷”什么?

    數據庫原理與應用,下載

    第一章   數據庫基礎 第二章   關系數據庫的基本理論 第三章   數據庫設計 第四章   關系數據庫
    發表于 05-14 16:55 ?0次下載

    基于WINCC工控組態軟件的關系數據庫的研究

    重點介紹了在工控組態軟件WINCC上的數據庫通信方法和采集過程,基于WINCC組態軟件的數據庫后臺是關系數據庫SQL Server。結合實際應用來研究關系數據庫SQL Server及其
    發表于 11-30 15:02 ?80次下載

    什么是關系數據庫

    什么是關系數據庫 關系數據庫簡介   關系數據庫以行和列的形式存儲
    發表于 06-17 07:38 ?9125次閱讀

    關系數據庫是什么?

    關系數據庫是什么? 數字時代伊始,數據庫就一直是商業計算的核心組成部分。事實上,關系數據庫誕生于1970年。那一年,IBM的研究員E.F. Codd撰寫了一篇論文,概述了主
    發表于 07-31 12:26 ?2230次閱讀

    NoSQL數據庫類型

    節點都是一個文檔。 在進入不同的NoSQL數據庫之前,讓我們看看與關系數據庫之間的比較。傳統關系數據庫正在努力的走向規范化:確保每一個數據
    發表于 10-12 17:24 ?2次下載
    NoSQL<b class='flag-5'>數據庫</b>類型

    為什么要使用非關系數據庫

    著互聯網web2.0網站的興起,非關系型的數據庫現在成了一個極其熱門的新領域,非關系數據庫產品的發展非常迅速。而傳統的關系數據庫在應付web2.0網站,特
    發表于 09-25 17:38 ?10次下載
    為什么要使用非<b class='flag-5'>關系數據庫</b>

    數據庫系統原理與應用教程之關系數據庫的詳細資料說明

    關系數據庫是目前應用最為廣泛的數據庫系統。關系數據庫模型特點是:具有嚴格的數學理論基礎,用戶接口比較簡單,可用于并行式數據庫、分布式數據庫
    發表于 10-24 16:16 ?4次下載
    <b class='flag-5'>數據庫</b>系統原理與應用教程之<b class='flag-5'>關系數據庫</b>的詳細資料說明

    數據庫原理的關系代數詳細講解

    關系代數與關系數據庫操作   關系代數是關系數據庫系統查詢語言的理論基礎。
    發表于 10-31 11:53 ?5次下載

    數據庫和自建數據庫區別及應用

    數據庫是指優化和部署在云端的數據庫,阿里云和騰訊云都提供云數據庫,云數據庫和自己搭建的數據庫有什么區別
    的頭像 發表于 11-20 16:26 ?4689次閱讀
    云<b class='flag-5'>數據庫</b>和自建<b class='flag-5'>數據庫</b>的<b class='flag-5'>區別</b>及應用

    華為云數據庫-RDS for MySQL數據庫

    (for MySQL)為輔。 MySQL數據庫是全球最受歡迎的一種數據庫,它是屬于 Oracle旗下的一款產品,MySQL是一種關系數據庫管理系統,
    的頭像 發表于 10-27 11:06 ?1569次閱讀

    向量數據庫是如何工作的?

    向量數據庫和 Embedding 是當前 AI 領域的熱門話題。
    的頭像 發表于 06-18 11:06 ?928次閱讀
    <b class='flag-5'>向量</b><b class='flag-5'>數據庫</b>是如何工作的?

    科技云報到:大模型時代下,向量數據庫的野望

    科技云報到:大模型時代下,向量數據庫的野望
    的頭像 發表于 10-14 17:18 ?299次閱讀

    數據庫是哪種數據庫類型?

    數據庫是一種部署在虛擬計算環境中的數據庫,它融合了云計算的彈性和可擴展性,為用戶提供高效、靈活的數據庫服務。云數據庫主要分為兩大類:關系
    的頭像 發表于 01-07 10:22 ?142次閱讀

    關系數據庫和非關系區別

    關系數據庫和非關系數據庫在多個方面存在顯著差異,主機推薦小編為您整理發布關系數據庫和非
    的頭像 發表于 01-10 09:58 ?122次閱讀
    百家乐官网赌博经历| 淘宝博百家乐的玩法技巧和规则| 百家乐完美一对| 百家乐走势图备用网站| 百家乐好不好| 德州扑克底牌| 沁水县| 百家乐官网五湖四海娱乐平台 | 德州扑克技巧| 太阳城网络博彩| 百家乐官网最常见的路子| 百家乐官网攻略投注法| 如何玩百家乐官网扑克| 新锦江百家乐官网娱乐网| 雅加达百家乐官网的玩法技巧和规则| 网络百家乐破解平台| 大发8880| 百家乐官网娱乐求指点呀| 免费百家乐官网缩水软件| 大发888娱乐场下| 百家乐官网投注方法| 定制百家乐桌垫| 澳盈| 百家乐官网赌博策略| 百家乐游戏大小| 狮威亚洲娱乐城| 波浪百家乐官网游戏中| 百家乐赌博机怎么玩| qq德州扑克官网| E乐博百家乐官网现金网| 百家乐庄闲桌子| 威尼斯人娱乐官方网站| 百家乐官网大小桌布| 先锋百家乐的玩法技巧和规则| 夹江县| 百家乐官网天下| 88娱乐城官网| 百家乐官网庄牌| 大发888娱乐城大发888达法8| 百家乐官网必胜法技巧| 找查百家乐玩法技巧|