谷歌提出視覺記憶方法,讓大模型訓練數據更靈活
目前,多數大模型一旦經過預訓練,其內部結構便難以改變,就像把知識刻在石頭一樣。如果你想對模型的數據進行更新,就需要對整個模型重新訓練,消耗大量時間和AI算力。
為了解決這一難題,谷歌DeepMind的研究人員提出了創新視覺記憶技術,其核心是將深度學習模型的表示能力與數據庫的靈活性相結合,可以靈活地添加或刪除數據。簡單來說,和人類的視覺記憶差不多,既能不斷學習新的知識,又能對已有的知識進行更新和調整。
構建視覺記憶的過程主要有兩個步驟:首先建立視覺記憶,然后利用快速最近鄰檢索進行分類。視覺記憶本質上是一個存儲了圖像及其對應標簽的數據庫,其中每張圖片都被映射到一個高維嵌入空間。
當接收到一個新的查詢圖像時,系統會計算其與內存中所有圖像之間的距離,并返回最接近的幾個鄰居作為候選答案。接下來,通過對這些候選答案進行加權投票來確定最終分類結果。
在構建視覺記憶的第一步中,從一個圖像數據集中提取(圖像,標簽)對,并使用一個固定的預訓練圖像編碼器來提取特征映射。這些特征映射和對應的標簽對被存儲在一個數據庫中,形成了用于分類的視覺記憶。這種方法的一個關鍵優勢在于,它不需要在添加信息到視覺記憶時進行額外的訓練,可以快速地將新的知識整合到模型中,而不需要重新訓練整個神經網絡。
特征提取是構建視覺記憶的關鍵環節之一。在這個過程中,使用DinoV2、CLIP預訓練的圖像編碼器將圖像映射到一個特征空間中,其中相似的圖像在特征空間中的距離也相近。通過這種方式,可以為每個圖像生成一個特征向量,這個向量捕捉了圖像的關鍵信息,并為后續的相似性搜索提供了基礎。
一旦有了這些特征向量,我們就可以構建一個數據庫,其中包含了圖像的特征向量和對應的標簽。這個數據庫就是我們的視覺記憶,它存儲了模型所“知道”的所有信息。當需要對一個新的查詢圖像進行分類時,系統會提取該圖像的特征向量,并在視覺記憶中尋找與之最相似的圖像。
在視覺記憶建立之后,下一步就是利用這個記憶進行快速的最近鄰搜索,以輔助圖像分類。給定一個查詢圖像,系統首先提取其特征向量,然后在視覺記憶中搜索與之最相似的特征向量。這些相似的特征向量被稱為“鄰居”,按照與查詢圖像的距離進行排序。最近的鄰居被認為是與查詢圖像最相似的圖像,因此在分類決策中具有最高的權重。
例如,如果我們想讓模型識別新的物體類別數據,可以簡單地將這些新類別的圖像特征向量和標簽添加到視覺記憶中,模型就能夠在不重新訓練的情況下,立即使用這些新信息進行分類決策。
除了能靈活添加數據之外,還能快速刪除特定數據,主要通過機器反學習來實現。機器反學習可以通過簡單地從數據庫中刪除對應的(圖像,標簽)對來實現。這樣,當模型再次進行分類決策時,這些被刪除的數據就不會被考慮在內。
例如,如果我們發現某個數據樣本包含有偏見或不準確的信息,我們可以將其從視覺記憶中刪除,以確保模型的決策不受這些數據的影響。
為了進一步優化視覺記憶,研究人員還引入了“記憶剪枝”方法,通過識別并移除或降低低質量樣本的影響來實現優化。
記憶剪枝的過程涉及到對視覺記憶中的每個樣本進行評估,以確定它們對分類決策的貢獻。這可以通過分析樣本在訓練集上的表現來實現,例如,通過計算樣本在分類決策中導致錯誤的次數。那些導致錯誤次數較多的樣本可能被認為是低質量的,因此可以被移除或降低權重。
論文地址:https://arxiv.org/pdf/2408.08172
本文轉自 AIGC開放社區,作者: AIGC開放社區
