盡管生成式人工智能在今年極其引人注目,但新時代的最大變革可能深藏在軟件堆棧中。AI算法在視野之外改變著世界,生成式人工智能正在顛覆傳統(tǒng)數(shù)據(jù)庫中的固定結(jié)構(gòu)表格,用更復(fù)雜、適應(yīng)性強(qiáng)且更直觀的新AI能力來追蹤和處理這個世界的數(shù)據(jù)。
數(shù)據(jù)庫的更新涉及到數(shù)據(jù)存儲堆棧的每個層級,基本數(shù)據(jù)結(jié)構(gòu)正在被審查。數(shù)據(jù)庫廠商正在改變我們存儲信息的方式,以更好地與AI模型配合工作。數(shù)據(jù)庫管理員的角色,曾經(jīng)沉悶而枯燥,但現(xiàn)在正演變?yōu)楦訌V泛的角色。
以下是數(shù)據(jù)庫隨著AI的發(fā)展而發(fā)生變化、適應(yīng)或改進(jìn)的10種方式。
向量和嵌入
AI開發(fā)人員喜歡將信息存儲為一長串?dāng)?shù)字的向量。過去,數(shù)據(jù)庫將這些值存儲為行,每個數(shù)字位于單獨的列中?,F(xiàn)在,一些數(shù)據(jù)庫支持純向量,因此無需將信息拆分為行和列,用于存儲的某些向量可能由數(shù)百甚至數(shù)千個數(shù)字組成。
這樣的向量通常與嵌入配對使用,嵌入是一種將復(fù)雜數(shù)據(jù)轉(zhuǎn)換為單個數(shù)字列表的模式。設(shè)計嵌入仍然是一門藝術(shù),并且常常依賴于對底層領(lǐng)域的知識。當(dāng)嵌入設(shè)計良好時,數(shù)據(jù)庫可以提供快速訪問和復(fù)雜查詢。
像Pinecone、Vespa、Milvus、Margo和Weaviate等公司正在構(gòu)建專門用于存儲向量的新型數(shù)據(jù)庫。其他公司如PostgreSQL正在將向量添加到其現(xiàn)有工具中。
查詢模型
將向量添加到數(shù)據(jù)庫帶來的不僅僅是方便。新的查詢函數(shù)不僅可以搜索精確匹配,還可以定位“最接近”的值,這有助于實現(xiàn)推薦引擎或異常檢測等系統(tǒng)。將數(shù)據(jù)嵌入向量空間簡化了涉及匹配和關(guān)聯(lián)的棘手問題,使其變?yōu)榧兇獾膸缀尉嚯x。
Pinecone、Vespa、Milvus、Margo和Weaviate等向量數(shù)據(jù)庫提供向量查詢。一些意想不到的工具,如Lucene或Solr,也提供相似度匹配功能,可以通過大塊非結(jié)構(gòu)化文本提供類似的結(jié)果。
推薦
新的基于向量的查詢系統(tǒng)比過去的查詢方式更神奇且富有神秘感。舊的查詢只會尋找匹配項;而這些由人工智能驅(qū)動的數(shù)據(jù)庫有時更像是在讀取用戶的思維。它們使用相似度搜索來找到“接近”的數(shù)據(jù)項,這些數(shù)據(jù)項通常與用戶所需相符。底層的數(shù)學(xué)原理可能僅僅是在n維空間中計算距離,但不知何故,這已經(jīng)足以提供意想不到的結(jié)果。這些算法長期以來一直作為完整應(yīng)用程序獨立運行,但它們正在逐漸被融入數(shù)據(jù)庫本身,從而可以支持更好、更復(fù)雜的查詢。
Oracle只是一個針對這個市場的數(shù)據(jù)庫示例。Oracle長期以來一直提供各種模糊匹配和相似度搜索功能?,F(xiàn)在它直接提供了針對在線零售等行業(yè)定制的工具。
索引范例
過去,數(shù)據(jù)庫構(gòu)建了簡單的索引,支持按特定列進(jìn)行更快的搜索。數(shù)據(jù)庫管理員擅長使用連接和過濾子句來創(chuàng)建復(fù)雜查詢,通過適當(dāng)?shù)乃饕梢蕴岣卟樵兯俣取,F(xiàn)在,向量數(shù)據(jù)庫被設(shè)計為創(chuàng)建跨向量所有值的有效索引。我們剛剛開始探索各種應(yīng)用程序來找到彼此“相鄰”的向量。
但這只是個開始。當(dāng)AI在數(shù)據(jù)庫上進(jìn)行訓(xùn)練時,它會吸收其中所有信息?,F(xiàn)在,我們可以用普通語言向AI發(fā)送查詢,而AI將以復(fù)雜但自適應(yīng)的方式進(jìn)行搜索。
數(shù)據(jù)分類
人工智能不僅僅是在數(shù)據(jù)庫中添加一些新的結(jié)構(gòu),有時,它會在數(shù)據(jù)的內(nèi)部添加新的結(jié)構(gòu)。有些數(shù)據(jù)以一堆凌亂的位表示。可能存在沒有注釋的圖像或很久以前某人寫的大塊文本。人工智能算法會清理混亂,并對混亂的數(shù)據(jù)集進(jìn)行排序。它們可以自動填寫表格,對一塊文本進(jìn)行情感分類,猜測照片中面部的態(tài)度,從圖像中提取細(xì)節(jié),并且算法還可以學(xué)會檢測模式。它們對數(shù)據(jù)進(jìn)行分類、提取重要細(xì)節(jié),并創(chuàng)建一個規(guī)則清晰的信息表格視圖。
亞馬遜網(wǎng)絡(luò)服務(wù)(Amazon Web Services)將SageMaker等人工智能工具與Aurora等數(shù)據(jù)庫連接起來,提供各種數(shù)據(jù)分類服務(wù),。
更好的性能
好的數(shù)據(jù)庫可以處理許多數(shù)據(jù)存儲的細(xì)節(jié)。在過去,程序員仍然需要花時間糾結(jié)于數(shù)據(jù)庫使用的各種參數(shù)和模式,以使其高效運行。數(shù)據(jù)庫管理員的角色是為了處理這些任務(wù)而設(shè)立的。
現(xiàn)在許多這些高級元任務(wù)都正在自動化進(jìn)行,通常通過使用機(jī)器學(xué)習(xí)算法來理解查詢模式和數(shù)據(jù)結(jié)構(gòu)。它們能夠監(jiān)控服務(wù)器上的流量,制定調(diào)整策略以滿足需求,并且可以實時適應(yīng)并學(xué)會預(yù)測用戶所需。
Oracle提供了最好的例子之一。過去,公司為數(shù)據(jù)庫管理員支付高薪?,F(xiàn)在,Oracle將其數(shù)據(jù)庫稱為自主數(shù)據(jù)庫,因為它們配備了先進(jìn)的人工智能算法,可以實時調(diào)整性能。
數(shù)據(jù)清潔度
運行一個良好的數(shù)據(jù)庫不僅需要保持軟件的正常運行,還需要確保數(shù)據(jù)盡可能干凈且沒有故障。人工智能通過搜索異常、標(biāo)記異常并可能提出修正建議簡化了這項工作量。它們可以找到客戶姓名拼寫錯誤的地方,然后通過搜索其他數(shù)據(jù)找到正確的拼寫。它們還可以學(xué)習(xí)傳入數(shù)據(jù)格式,并將數(shù)據(jù)攝取到一個單一統(tǒng)一的語料庫中,使所有名稱、日期和其他細(xì)節(jié)以盡可能一致的方式呈現(xiàn)。
微軟的SQL Server是一個與數(shù)據(jù)質(zhì)量服務(wù)緊密集成的數(shù)據(jù)庫示例,可以清理具有問題(如缺失字段或重復(fù)日期)的數(shù)據(jù)。
欺詐檢測
創(chuàng)建更安全的數(shù)據(jù)存儲是機(jī)器學(xué)習(xí)的一個特殊應(yīng)用。一些人正在使用機(jī)器學(xué)習(xí)算法來查找其數(shù)據(jù)流中的異常情況,因為這些異常情況往往是欺詐行為的很好指標(biāo)。某人是否在深夜首次去自動取款機(jī)?此人是否曾在該大陸使用過信用卡?AI算法可以嗅探出危險信號,并將數(shù)據(jù)庫轉(zhuǎn)變?yōu)槠墼p檢測系統(tǒng)。
例如,Google的Web服務(wù)提供了幾種選項,可以將欺詐檢測集成到您的數(shù)據(jù)存儲堆棧中。
更嚴(yán)密的安全性
一些組織正在內(nèi)部應(yīng)用這些算法。人工智能不僅僅是為了優(yōu)化數(shù)據(jù)庫的使用模式,它們還在尋找可能表明有人正在入侵的異常情況。遠(yuǎn)程用戶不會每天都請求完整復(fù)制整個表格。一個好的AI可以嗅出可疑之處。
IBM的Guardium Security就是一個與數(shù)據(jù)存儲層集成以控制訪問并監(jiān)測異常情況的工具示例。
將數(shù)據(jù)庫和生成式AI融合
過去,人工智能與數(shù)據(jù)庫相分離。在訓(xùn)練模型時,數(shù)據(jù)會從數(shù)據(jù)庫中提取出來,重新格式化,然后輸入到人工智能中?,F(xiàn)在的新系統(tǒng)直接從現(xiàn)有的數(shù)據(jù)中訓(xùn)練模型。對于最大的任務(wù)來說,這樣做可以節(jié)省時間和能源,因為僅僅將數(shù)據(jù)遷移可能需要幾天甚至幾周的時間。這也簡化了開發(fā)運維團(tuán)隊的生活,使得訓(xùn)練一個人工智能模型就像發(fā)出一個命令一樣簡單。
甚至有人提議完全替換數(shù)據(jù)庫。不再將查詢發(fā)送到關(guān)系型數(shù)據(jù)庫,而是直接發(fā)送給一個人工智能,它會以任何格式回答查詢。谷歌提供了Bard,微軟則推出了ChatGPT。它們都是取代搜索引擎的嚴(yán)肅競爭對手。它們同樣完全可以取代傳統(tǒng)的數(shù)據(jù)庫。
這種方法也有一些缺點。在某些情況下,人工智能會產(chǎn)生幻覺,并給出完全錯誤的答案。在其他情況下,它們可能會心血來潮從而改變輸出的格式。
但是,當(dāng)領(lǐng)域足夠垂直、訓(xùn)練集深度且完整時,人工智能可以提供令人滿意的結(jié)果。而且,它能夠避免定義表格結(jié)構(gòu)和強(qiáng)迫用戶編寫查詢來查找數(shù)據(jù)的麻煩。使用生成式人工智能來存儲和搜索數(shù)據(jù)可以更加靈活,適用于用戶和創(chuàng)建者雙方。