HDVQ-VAE: Binary Codebook for Hyperdimensional Latent Representations
HDVQ-VAE:用于超維潛在表示的二進(jìn)制代碼簿
https://prefer-nsf.org/pdf/HDVQ-VAE_2024.pdf

摘要
超維計(jì)算(HDC)作為一種新興的計(jì)算范式,憑借其輕量級(jí)且強(qiáng)大的計(jì)算能力以及固有的學(xué)習(xí)特性,展現(xiàn)出巨大潛力。通過(guò)利用二進(jìn)制超維向量,HDC能夠高效且穩(wěn)健地處理數(shù)據(jù),在速度和韌性方面均超越傳統(tǒng)機(jī)器學(xué)習(xí)(ML)方法。本文針對(duì)HDC系統(tǒng)中的關(guān)鍵挑戰(zhàn)展開研究,特別是數(shù)據(jù)向超維域的轉(zhuǎn)換以及HDC與傳統(tǒng)機(jī)器學(xué)習(xí)框架的融合問(wèn)題。我們提出了一種新穎的解決方案,即超維向量量化變分自編碼器(HDVQ-VAE),該方案將二進(jìn)制編碼與機(jī)器學(xué)習(xí)系統(tǒng)中的碼本表示無(wú)縫結(jié)合。我們的方法通過(guò)用二進(jìn)制(?1, +1)碼本替代傳統(tǒng)碼本,顯著降低了內(nèi)存開銷,同時(shí)增強(qiáng)了訓(xùn)練過(guò)程。借助這種架構(gòu),我們展示了改進(jìn)的編碼-解碼過(guò)程,并在可接受的峰值信噪比(PSNR)范圍內(nèi)生成了高質(zhì)量圖像。我們的工作通過(guò)考慮將高效的機(jī)器學(xué)習(xí)系統(tǒng)部署到嵌入式系統(tǒng),推動(dòng)了HDC的發(fā)展。
索引術(shù)語(yǔ)——超維計(jì)算(HDC),向量量化變分自編碼器(VQ-VAE)。
I. 引言
超維計(jì)算(HDC)因其能夠提供輕量級(jí)且高效的計(jì)算能力以及某些學(xué)習(xí)特性,最近受到了研究人員的廣泛關(guān)注[1]。與傳統(tǒng)機(jī)器學(xué)習(xí)(ML)相比,HDC憑借其獨(dú)特的數(shù)據(jù)表示方式,提供了速度和魯棒性。HDC利用超維符號(hào)二進(jìn)制向量(稱為超向量)執(zhí)行各種機(jī)器學(xué)習(xí)任務(wù)[2]。這些超向量具有全息信息存儲(chǔ)的固有屬性[3]。通過(guò)使用二進(jìn)制(?1, +1)超維向量,HDC實(shí)現(xiàn)了全息信息存儲(chǔ)[4],能夠在單個(gè)二進(jìn)制向量中包含多個(gè)輸入數(shù)據(jù),與傳統(tǒng)二進(jìn)制數(shù)制系統(tǒng)相比,資源消耗更低。超向量的維度(D)通常在1K到10K之間,向量需要近乎正交以實(shí)現(xiàn)無(wú)偏的符號(hào)表示。這種獨(dú)特的正交性屬性便于進(jìn)行捆綁、綁定和排列操作以實(shí)現(xiàn)編碼目的,使單個(gè)向量能夠表示多個(gè)輸入[5]。捆綁超向量會(huì)產(chǎn)生一個(gè)與所有加數(shù)最相似的超向量。綁定操作會(huì)產(chǎn)生一個(gè)與綁定的超向量集合最不相似的超向量,類似于逐坐標(biāo)乘法。排列(一種循環(huán)移位)生成不相關(guān)的超向量,同時(shí)保持正交性[6]。
盡管HDC是實(shí)現(xiàn)輕量級(jí)機(jī)器學(xué)習(xí)應(yīng)用的有前景的途徑,但必須認(rèn)真考慮數(shù)據(jù)如何轉(zhuǎn)換為其符號(hào)表示。本文專注于使用無(wú)監(jiān)督學(xué)習(xí)來(lái)簡(jiǎn)化編碼過(guò)程。與通常使用連續(xù)的實(shí)值向量(例如Word2Vec中的向量[7])的傳統(tǒng)機(jī)器學(xué)習(xí)方法不同,HDC方法采用離散的符號(hào)表示。這使得能夠使用超維二進(jìn)制向量進(jìn)行穩(wěn)健且內(nèi)存高效的全息信息存儲(chǔ),減少了與浮點(diǎn)表示相關(guān)的開銷。本文使用傳統(tǒng)機(jī)器學(xué)習(xí)來(lái)幫助選擇用于表示抽象數(shù)據(jù)的符號(hào)。據(jù)我們所知,在文獻(xiàn)中首次將向量量化變分自編碼器(VQ-VAE)架構(gòu)與HDC方法結(jié)合,以實(shí)現(xiàn)高效的潛在空間表示,而不失一般性。VQ-VAE碼本的離散特性與HDC的標(biāo)準(zhǔn)編碼技術(shù)一致,其中使用離散符號(hào)列表或碼本。此外,VQ-VAE的編碼器、解碼器和量化過(guò)程與我們以無(wú)監(jiān)督方式學(xué)習(xí)將抽象數(shù)據(jù)映射到一組符號(hào)的目標(biāo)一致。一旦獲得碼本,分類任務(wù)就成為整體學(xué)習(xí)架構(gòu)的第二個(gè)組成部分。傳統(tǒng)系統(tǒng)通常依賴于涉及復(fù)雜操作(如乘累加激活)的傳統(tǒng)浮點(diǎn)內(nèi)存表示。然而,在基于HDC的分類器中,采用單次學(xué)習(xí)策略,與傳統(tǒng)機(jī)器學(xué)習(xí)系統(tǒng)不同。本研究將使用HDVQ-VAE訓(xùn)練的二進(jìn)制碼本與HDC范式的單次學(xué)習(xí)策略相結(jié)合。潛在空間元素通過(guò)綁定和捆綁進(jìn)一步處理,以創(chuàng)建分類器系統(tǒng)。結(jié)果表明,所提出的框架提供了一種易于部署的架構(gòu),減少了內(nèi)存使用,同時(shí)保持了與傳統(tǒng)方法相當(dāng)?shù)臏?zhǔn)確度水平。本文的貢獻(xiàn)包括:1)通過(guò)碼本替換將HDC機(jī)制整合到VQ-VAE架構(gòu)中;2)啟用下游HDC應(yīng)用,利用HDC潛在空間;3)從float32碼本轉(zhuǎn)換為二進(jìn)制碼本,將潛在空間減少了32倍;4)由于碼本替換,整體模型大小減小。
II. 背景
A. 超維計(jì)算
超維計(jì)算(HDC)作為一種新興的計(jì)算范式,因其在開發(fā)超輕量級(jí)學(xué)習(xí)系統(tǒng)方面的潛力而受到關(guān)注。與傳統(tǒng)機(jī)器學(xué)習(xí)方法相比,HDC能夠直接處理數(shù)據(jù),無(wú)需額外的特征工程,支持單次學(xué)習(xí),消除了對(duì)誤差優(yōu)化和反向傳播的需求,并且由于其單比特處理能力,能夠?qū)崿F(xiàn)輕量級(jí)模型。通過(guò)將數(shù)據(jù)編碼為超向量并應(yīng)用一系列邏輯運(yùn)算,HDC可以直接得出訓(xùn)練樣本的類別,這與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)系統(tǒng)中的學(xué)習(xí)步驟(前向傳播-反向傳播)不同,后者需要多個(gè)優(yōu)化步驟。
HDC在表示符號(hào)(如字母、圖像像素位置和一維信號(hào)時(shí)間戳)方面表現(xiàn)出色,通過(guò)利用正交二進(jìn)制向量實(shí)現(xiàn)。每個(gè)向量包含D維,由隨機(jī)出現(xiàn)的+1和?1值組成(在硬件環(huán)境中分別解釋為邏輯1和邏輯0)。對(duì)于符號(hào)表示,由于它不是數(shù)值,因此向量評(píng)估遵循0和1之間的無(wú)偏概率點(diǎn)。假設(shè)每個(gè)符號(hào)向量表示的總體概率中點(diǎn)為0.5,則生成的向量之間不存在偏差。概率表示在總向量大小中具有邏輯值1的可能性,因此每個(gè)符號(hào)具有相等的概率。
另一方面,標(biāo)量值(包括一維信號(hào)幅度和圖像像素強(qiáng)度)也可以有效地在HDC系統(tǒng)中進(jìn)行編碼??臻g內(nèi)的最小和最大標(biāo)量值分別映射到?1?1?1?1……?1(最小超向量)和+1+1+1+1……+1(最大超向量)。范圍內(nèi)的任何值都通過(guò)根據(jù)值的大小隨機(jī)翻轉(zhuǎn)位從?1到+1(或反之)來(lái)表示[8]。
一旦完成向量生成,數(shù)據(jù)將經(jīng)過(guò)后續(xù)的編碼步驟,如綁定、移位、排列和捆綁,這些步驟根據(jù)具體應(yīng)用而定制。應(yīng)用主要使用兩種類型的編碼:1)基于n-gram的編碼和2)基于記錄的編碼。在語(yǔ)言處理等基于符號(hào)的應(yīng)用中,n-gram操作涉及處理n個(gè)符號(hào)(字母)及其對(duì)應(yīng)的超向量。任何n組符號(hào)都通過(guò)移位和排列其對(duì)應(yīng)的超向量進(jìn)行組合[9]。例如,在文本處理中進(jìn)行n=3的3-gram操作時(shí),會(huì)取句子中的三個(gè)字母超向量子集,對(duì)每個(gè)3組向量進(jìn)行移位和排列,并通過(guò)綁定操作將它們相乘。+1和?1二進(jìn)制值的乘法在硬件中通過(guò)XOR運(yùn)算實(shí)現(xiàn),最終結(jié)果是另一個(gè)超向量。從每個(gè)n-gram子集中得到的超向量(n-gram向量)隨后通過(guò)累積聚合(在硬件中通過(guò)人口計(jì)數(shù)操作實(shí)現(xiàn))生成一個(gè)單一向量,從而從多個(gè)n-gram輸入中產(chǎn)生一個(gè)向量。這種累積是一種捆綁操作,有助于實(shí)現(xiàn)HDC的整體學(xué)習(xí)特性。最后一步是將累積值重新二值化為二進(jìn)制形式。這個(gè)過(guò)程針對(duì)每個(gè)數(shù)據(jù)集類別進(jìn)行定制,生成一個(gè)統(tǒng)一的一維向量,代表相應(yīng)的類別。每個(gè)新樣本通過(guò)執(zhí)行相同的編碼步驟對(duì)該結(jié)果類別超向量做出貢獻(xiàn)[10]。推理過(guò)程遵循上述相同的編碼步驟;分類涉及測(cè)試樣本向量與類別超向量之間的相似性評(píng)估。更高的相似性分?jǐn)?shù)(通過(guò)余弦相似度、漢明距離、點(diǎn)積等指標(biāo)測(cè)量)表明類別與測(cè)試超向量之間的匹配度更高,從而得出分類結(jié)果。
B. 向量量化變分自編碼器
變分自編碼器(VAE)被廣泛應(yīng)用于許多場(chǎng)景,例如生成式圖像擴(kuò)散模型,用于產(chǎn)生壓縮的潛在空間,以便在該空間中進(jìn)行計(jì)算操作時(shí)成本更低。向量量化變分自編碼器(VQ-VAE)架構(gòu)與傳統(tǒng)VAE的不同之處在于,它學(xué)習(xí)離散的壓縮表示,而不是連續(xù)的表示。它用量化過(guò)程替換了重參數(shù)化技巧,通過(guò)距離測(cè)量將特征映射到有限符號(hào)列表或碼本中最近的符號(hào)[11]。本文正是受到HDC編碼目標(biāo)與VQ-VAE編碼過(guò)程的共同點(diǎn)的啟發(fā),即兩者都致力于將數(shù)據(jù)映射到離散的符號(hào)表示。圖1(a)展示了傳統(tǒng)的VQ-VAE架構(gòu)。

傳統(tǒng)的VQ-VAE使用三種主要的損失度量來(lái)指導(dǎo)其訓(xùn)練:1)均方誤差(MSE);2)碼本損失;3)承諾損失。MSE是在重建數(shù)據(jù)和原始數(shù)據(jù)之間計(jì)算的。碼本損失和承諾損失幾乎完全相同,它們之間唯一的區(qū)別在于在反向傳播過(guò)程中,哪一個(gè)向量集合被分離,以迫使另一個(gè)被考慮。以下是傳統(tǒng)VQ-VAE中的損失函數(shù):

III. HDVQ-VAE框架
所提出的架構(gòu)基于一個(gè)眾所周知的傳統(tǒng)機(jī)器學(xué)習(xí)模塊:向量量化變分自編碼器(VQ-VAE),并對(duì)其進(jìn)行了更新,引入二進(jìn)制數(shù)據(jù)表示以整合正交向量,從而形成了HDVQ-VAE。這種改進(jìn)提供了一種輕量級(jí)、易于部署且更高效的分類器,利用了超維計(jì)算(HDC)范式的編碼動(dòng)態(tài)。我們的架構(gòu)包括下采樣模塊、上采樣模塊和量化模塊。下采樣模塊由兩個(gè)順序模塊組成,每個(gè)模塊包含兩個(gè)卷積層,輸入數(shù)據(jù)在經(jīng)過(guò)加法操作并被送入雙曲正切(tanh)激活函數(shù)之前會(huì)通過(guò)這兩個(gè)卷積層。這兩個(gè)順序模塊中的第一個(gè)模塊在兩個(gè)卷積層之間有一個(gè)前置激活的雙曲正切函數(shù)。圖1(a)展示了傳統(tǒng)的架構(gòu),而圖1(b)展示了我們提出的HDVQ-VAE架構(gòu)。
我們將下采樣模塊中的卷積層替換為轉(zhuǎn)置卷積層,從而創(chuàng)建了我們的上采樣模塊。量化模塊包含碼本,并負(fù)責(zé)將潛在向量映射到這個(gè)碼本。在我們的提議中,我們將傳統(tǒng)的碼本替換為二進(jìn)制(?1, +1)表示,用于我們的架構(gòu)。這使得我們可以使用超向量或超向量的部分作為我們的碼本。我們使用偽隨機(jī)序列初始化這些碼本向量。在HDC中,正交性對(duì)于符號(hào)表示至關(guān)重要,而隨機(jī)源提供了這種正交性。一旦碼本初始化完成,它在整個(gè)架構(gòu)中保持固定,不會(huì)像傳統(tǒng)VQ-VAE那樣進(jìn)行進(jìn)一步的更新。這使我們能夠消除碼本損失和承諾損失。我們保留了直通過(guò)估計(jì)器,以將梯度從量化模塊的一側(cè)傳播到另一側(cè)[11]。碼本可以由超向量或超向量的部分組成。如果碼本由超向量的部分組成,那么潛在空間必須包含多個(gè)向量,這些向量在展平后形成一個(gè)超向量。
我們通過(guò)在修改后的VQ-VAE模型中消除碼本損失和承諾損失,顯著簡(jiǎn)化了訓(xùn)練過(guò)程。靜態(tài)碼本在訓(xùn)練過(guò)程中不需要更新,因此碼本損失變得多余。同樣,碼本的二進(jìn)制特性也減少了承諾損失的益處。除了傳統(tǒng)的損失函數(shù)外,我們還選擇根據(jù)一些眾所周知的指標(biāo)創(chuàng)建損失函數(shù)(L),以幫助指導(dǎo)網(wǎng)絡(luò):峰值信噪比(PSNR)[12]、結(jié)構(gòu)相似性(SSIM)、學(xué)習(xí)感知圖像塊相似性(LPIPS)[12]和困惑度(PPLX)[13]:

在我們的實(shí)驗(yàn)中,訓(xùn)練過(guò)程利用重建圖像及其原始圖像之間的損失來(lái)指導(dǎo)模型生成有意義的潛在表示。訓(xùn)練過(guò)程如算法1所示。

除了利用HDC進(jìn)行二進(jìn)制潛在空間表示外,分類器組件也被保留在HDC域中,以進(jìn)一步利用潛在空間。圖1(b)進(jìn)一步展示了為HDC域中的碼本專門設(shè)計(jì)的HDC分類器。該過(guò)程涉及將展平的向量與每個(gè)對(duì)應(yīng)類別的位置超向量相乘(綁定)并累積。位置向量與我們潛在塊的空間維度24×24相一致。初始化位置向量涉及為每個(gè)空間位置分配一個(gè)獨(dú)特的二進(jìn)制向量。通過(guò)以0.5的概率將位隨機(jī)分配為0或1,確保這些向量的獨(dú)特性。與量化潛在塊類似,我們將位置向量展平為一個(gè)單一超向量,然后與展平的量化潛在塊綁定。在評(píng)估(推理階段)傳入的查詢樣本時(shí),它們同樣在超向量域中進(jìn)行編碼,并與每個(gè)先前生成的類別超向量進(jìn)行比較。最高分?jǐn)?shù)決定了分類結(jié)果。因此,本文在后續(xù)部分將測(cè)試兩個(gè)主要提議:1)二進(jìn)制潛在空間;2)使用HDC分類器進(jìn)行碼本分類。
IV. 實(shí)驗(yàn)與結(jié)果
在本節(jié)中,我們開展了兩組實(shí)驗(yàn),分別考慮了我們的兩個(gè)主要貢獻(xiàn):1)超維(HD)潛在空間在圖像重建中的性能;2)潛在空間在分類問(wèn)題中的性能。使用圖1(b)所示的架構(gòu),我們首先考察二進(jìn)制超維潛在空間的性能。實(shí)驗(yàn)中使用的圖像是基于STL10數(shù)據(jù)集[14]構(gòu)建的,基于超維計(jì)算(HDC)的方法在圖像構(gòu)建性能方面達(dá)到了可接受的性能范圍。
我們的實(shí)驗(yàn)使用了STL10數(shù)據(jù)集[14]。我們選擇STL10數(shù)據(jù)集是因?yàn)槠鋱D像尺寸為96×96×3(寬×高×通道數(shù)),相較于MNIST和CIFAR數(shù)據(jù)集更大。較大的圖像尺寸使我們能夠在重建高質(zhì)量圖像方面進(jìn)行測(cè)試,其中碼本向量可能需要在更具挑戰(zhàn)性的問(wèn)題中表示更多細(xì)節(jié)。
額外的損失函數(shù)專注于細(xì)節(jié),有助于指導(dǎo)模型選擇碼本向量,以最好地將細(xì)節(jié)信息從編碼器傳遞到解碼器。如圖2所示,HDVQ-VAE能夠令人接受地重建圖像。一旦訓(xùn)練完成,我們可以使用圖1(b)中的編碼器和二進(jìn)制碼本生成二進(jìn)制潛在向量。我們使用這些潛在向量來(lái)測(cè)試傳統(tǒng)方法(即卷積神經(jīng)網(wǎng)絡(luò)CNN)的分類能力。CNN分類器由三個(gè)二維卷積層、一個(gè)展平層和兩個(gè)全連接層組成。卷積層的輸入輸出通道數(shù)分別為128、64、32和8,每個(gè)卷積層后都跟有一個(gè)雙曲正切(tanh)激活函數(shù)。展平后,輸出通過(guò)兩個(gè)全連接層,特征數(shù)從72減少到32,使用ReLU激活函數(shù),然后再減少到10個(gè)特征。我們使用“在平臺(tái)上減少”(reduce on plateau)的學(xué)習(xí)率調(diào)度器來(lái)訓(xùn)練模型,初始學(xué)習(xí)率為0.003,縮放因子為0.5,交叉熵?fù)p失的閾值為0.01。如圖3(a)和(b)所示,CNN分類器在評(píng)估準(zhǔn)確率上幾乎翻倍,而在訓(xùn)練準(zhǔn)確率上則增長(zhǎng)了三倍以上。圖3(c)和(d)分別報(bào)告了傳統(tǒng)方法和HDC方法的測(cè)試階段混淆矩陣。


對(duì)于我們的HDC分類測(cè)試,我們將HDVQ-VAE的二進(jìn)制潛在向量重塑,將其展平為一個(gè)更超維度的向量,形成我們的超向量。展平操作將我們的潛在表示從B×128×24×24轉(zhuǎn)換為B×73728,其中B是我們的批量維度,128是二進(jìn)制向量的大小。我們的新超向量與在訓(xùn)練開始時(shí)初始化的靜態(tài)位置超向量綁定。綁定后,我們?cè)跇?biāo)記之前對(duì)每個(gè)類別的向量進(jìn)行一次累積。在訓(xùn)練開始時(shí),我們測(cè)量綁定超向量(潛在×位置)與類別向量之間的相似度。我們根據(jù)錯(cuò)誤預(yù)測(cè)調(diào)整類別向量。在每個(gè)訓(xùn)練周期結(jié)束時(shí),我們?cè)俅螛?biāo)記類別向量。盡管訓(xùn)練HDC分類器不使用反向傳播,但它在損失和準(zhǔn)確率得分上優(yōu)于傳統(tǒng)分類器模型。由于量化過(guò)程的復(fù)雜學(xué)習(xí),VAE的VQ版本比CNN更符合HDC。HDC不僅計(jì)算成本更低,而且輕量級(jí),使其成為嵌入式系統(tǒng)的合適候選。
對(duì)于我們的HDVQ-VAE,碼本的二值化帶來(lái)了內(nèi)存節(jié)省和模型尺寸的整體減少。從float32轉(zhuǎn)換為二進(jìn)制表示,碼本大小縮小了32倍,傳遞給解碼器的信息比傳統(tǒng)VQ-VAE小32倍。盡管信息流減少了32倍,但在下游潛在分類中,無(wú)論是傳統(tǒng)分類器還是HDC分類器,在使用HDVQ-VAE的潛在表示時(shí),其性能都優(yōu)于傳統(tǒng)VQ-VAE。
V. 結(jié)論
本研究提出了一種新方法,通過(guò)引入超維向量表示來(lái)增強(qiáng)向量量化變分自編碼器,旨在為生成式人工智能(AI)和潛在空間分類提供一種更高效、更輕量化的解決方案。通過(guò)利用二進(jìn)制超向量空間進(jìn)行潛在表示,向量空間內(nèi)的碼本可用于圖像重建或分類。這項(xiàng)研究標(biāo)志著超維計(jì)算(HDC)在機(jī)器學(xué)習(xí)(ML)中的開端,表明其在未來(lái)工作中作為傳統(tǒng)ML框架的有益補(bǔ)充的潛力。
原文鏈接:https://prefer-nsf.org/pdf/HDVQ-VAE_2024.pdf
熱門跟貼