大模型底座之向量化,以及向量化的原理 原創(chuàng)
“ 向量化是一切大模型技術(shù)的基礎(chǔ),大模型中的一切都是向量?!?/strong>
在之前的文章曾不止一次的講過向量,向量作為大模型的基礎(chǔ)數(shù)據(jù)格式,其重要性不言而喻;但大部分人對向量還是沒有一個深刻的認(rèn)識。
所以,今天我們就來討論一個問題,那就是向量化,大模型的入口。
向量化
向量的概念這里就不解釋了,有問題的可以看之前的文章,或者自己去找一下向量,矩陣的內(nèi)容看看。
先來討論第一個問題,為什么要向量化?
原因在于計(jì)算機(jī)無法直接處理非數(shù)值性計(jì)算,所以的計(jì)算都需要轉(zhuǎn)換成數(shù)值運(yùn)算才行;但數(shù)值計(jì)算的方式有很多,為什么會選擇向量作為載體?
原因就在于向量的幾個基本特性:
- 第一就是向量便于計(jì)算機(jī)進(jìn)行處理;
- 第二就是向量能夠表示文本,圖像等之間的語義關(guān)系
- 第三就是使用矩陣來表示向量,計(jì)算效率更高
什么是向量化?
簡單來說向量化就是把其它格式的數(shù)據(jù)轉(zhuǎn)換為向量形式,這里的其它格式包括我們常見的一切格式的數(shù)據(jù),文本,圖像,視頻,音頻等等;因此,可以直接把向量化理解為一種數(shù)據(jù)格式轉(zhuǎn)換的技術(shù)。
在大模型中哪些地方需要進(jìn)行向量化?
簡單來說,任何需要輸入到大模型的數(shù)據(jù)都需要向量化;其次,需要記錄語義關(guān)系的也都需要向量化,比如RAG,向量數(shù)據(jù)庫等。
眾所周知,大模型是由一個輸入層,一個隱藏層,一個輸出層組成;而其中隱藏層包括一個或多個神經(jīng)網(wǎng)絡(luò)層。其中,輸入層需要做的一件事就是把輸入數(shù)據(jù)向量化,只有這樣才能被隱藏層接受和處理。
記住一句話,在大模型中一切都是向量。
那怎么實(shí)現(xiàn)向量化?
在不同的技術(shù)階段,向量化的方式也有所不同;以文本向量化來說,文本向量化一般有三種方式:
- one-hot編碼
- 詞匯映射(Word2Vec)
- Word Embedding(廣義上Word2Vec也屬于Word Embedding的一種)
詞嵌入是文本向量化的一種常見方式,一般情況下會將一個單詞映射到一個高維向量中來代表這個詞,這就是詞向量。
而文本嵌入層的作用就是,將文本中詞匯的數(shù)字表示轉(zhuǎn)變?yōu)楦呔S的向量表示,旨在高維空間捕捉詞匯間的關(guān)系。
Embedding 可以說是目前比較常見的一種向量化的方式,各大模型服務(wù)商,以及開源社區(qū)都發(fā)布了大量的Embedding模型來提供給用戶使用;而Embedding嵌入就是一種經(jīng)過專門訓(xùn)練的用來向量化數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)模型。
只不過Embedding嵌入模型經(jīng)過矩陣算法的優(yōu)化,比傳統(tǒng)的向量化方式效率更高,效果更好。
而且,Embedding的應(yīng)用非常廣泛,其不僅是大模型的基礎(chǔ)技術(shù)之一;事實(shí)上,Embedding也是大模型技術(shù)的應(yīng)用場景之一。比如在圖像搜索,推薦系統(tǒng),廣告,搜索等業(yè)務(wù)中,Embedding都發(fā)揮著重要的作用。
了解了文本向量化的工具之后,那么思考一下圖像和視頻是怎么實(shí)現(xiàn)向量化的?
在圖像向量化的過程中,卷積神經(jīng)網(wǎng)絡(luò)和自編碼器都是用于圖像向量化的有效工具;前者通過訓(xùn)練提取圖像特征并轉(zhuǎn)換為向量;后者則學(xué)習(xí)圖像的壓縮編碼以生成低維向量表示。
- 卷積神經(jīng)網(wǎng)絡(luò)(CNN):通過訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)模型,我們可以從原始圖像數(shù)據(jù)中提取特征,并將其表示為向量。例如,使用預(yù)訓(xùn)練的模型(如VGG16, ResNet)的特定層作為特征提取器。
- 自編碼器(Autoencoders):這是一種無監(jiān)督的神經(jīng)網(wǎng)絡(luò),用于學(xué)習(xí)輸入數(shù)據(jù)的有效編碼。在圖像向量化中,自編碼器可以學(xué)習(xí)從圖像到低維向量的映射
本文轉(zhuǎn)載自公眾號AI探索時(shí)代 作者:DFires
