多模態與視覺語言

Perceiver 架構

Perceiver 是一種 transformer,設計來吞下任意大小、任意模態的輸入——影像、音訊、點雲、影片——而不會遭遇普通自注意力在輸入巨大時的二次方爆炸。它的核心想法是:保留一小組固定數量、可學習的潛在向量作為工作記憶,讓這小組陣列反覆地跨注意力進入龐大的輸入,把高維資料蒸餾成一個精簡表示,再用便宜的自注意力在其上推理。

在架構上,每個區塊是從潛在向量(作為查詢)跨注意力進入輸入的位元組陣列(作為鍵與值),接著疊上若干層潛在自注意力,這些區塊反覆堆疊且常共享權重。由於昂貴的跨注意力對輸入數量是線性而非二次方,成本便與輸入長度解耦:一千個或一百萬個像素都由同一個固定大小的潛在瓶頸處理。Perceiver IO 進一步加上可學習的輸出查詢陣列,使模型能輸出任意形狀的結構化結果。

這種潛在瓶頸模式是 Flamingo 中重採樣器與 BLIP-2 中 Q-Former 的概念祖先——它們用少數可學習查詢,把數量可變的影像補丁壓縮成固定的詞元預算,再交給語言模型。其取捨是:若潛在陣列對任務而言太小,瓶頸可能丟棄細微的細節。

又稱
PerceiverPerceiver IOPerceiver 架構