Effiziente Inferenz von Modellen zur visuellen Anweisungsverfolgung mit elastischem Cache.
Efficient Inference of Vision Instruction-Following Models with Elastic Cache
July 25, 2024
papers.authors: Zuyan Liu, Benlin Liu, Jiahui Wang, Yuhao Dong, Guangyi Chen, Yongming Rao, Ranjay Krishna, Jiwen Lu
cs.AI
papers.abstract
Im Bereich der Anweisungsverfolgung großer Vision-Sprachmodelle (LVLMs) stehen die effiziente Bereitstellung dieser Modelle vor Herausforderungen, insbesondere aufgrund des hohen Speicherbedarfs ihrer Schlüssel-Wert (KV) Caches. Herkömmliche Cache-Verwaltungsstrategien für LLMs konzentrieren sich auf Cache-Verdrängung, was oft nicht auf die spezifischen Anforderungen multimodaler Anweisungsverfolgungsmodelle eingeht. Um diese Lücke zu erkennen, stellen wir in diesem Papier Elastic Cache vor, einen neuartigen Ansatz, der von der Anwendung unterschiedlicher Beschleunigungsmethoden für die Anweisungskodierung und die Ausgabenerzeugungsphasen profitiert. Wir untersuchen die wichtigen Metriken in verschiedenen Phasen und schlagen eine bedeutungsgetriebene Cache-Verschmelzungsstrategie vor, um redundante Caches zu reduzieren. Anstatt weniger wichtige Caches zu verwerfen, identifiziert unsere Strategie wichtige Schlüssel/Wert-Vektoren als Ankerpunkte. Umgebende weniger wichtige Caches werden dann mit diesen Ankerpunkten verschmolzen, wodurch die Erhaltung von Kontextinformationen in den KV-Caches verbessert wird und ein beliebiges Beschleunigungsverhältnis erzielt wird. Für die Anweisungskodierung verwenden wir die Häufigkeit, um die Bedeutung von Caches zu bewerten. In Bezug auf die Ausgabenerzeugung priorisieren wir Token basierend auf ihrem Abstand mit einem Offset, wodurch sowohl die anfänglichen als auch die neuesten Token beibehalten werden. Ergebnisse auf einer Reihe von LVLMs zeigen, dass Elastic Cache nicht nur die Effizienz steigert, sondern auch in der Sprachgenerierung über verschiedene Aufgaben hinweg signifikant bessere Leistungen als bestehende Beschneidungsmethoden erbringt. Der Code ist verfügbar unter https://github.com/liuzuyan/ElasticCache.
English
In the field of instruction-following large vision-language models (LVLMs),
the efficient deployment of these models faces challenges, notably due to the
high memory demands of their key-value (KV) caches. Conventional cache
management strategies for LLMs focus on cache eviction, which often fails to
address the specific needs of multimodal instruction-following models.
Recognizing this gap, in this paper, we introduce Elastic Cache, a novel
approach that benefits from applying distinct acceleration methods for
instruction encoding and output generation stages. We investigate the metrics
of importance in different stages and propose an importance-driven cache
merging strategy to prune redundancy caches. Instead of discarding less
important caches, our strategy identifies important key/value vectors as anchor
points. Surrounding less important caches are then merged with these anchors,
enhancing the preservation of contextual information in the KV caches while
yielding an arbitrary acceleration ratio. For instruction encoding, we utilize
the frequency to evaluate the importance of caches. Regarding output
generation, we prioritize tokens based on their distance with an offset, by
which both the initial and most recent tokens are retained. Results on a range
of LVLMs demonstrate that Elastic Cache not only boosts efficiency but also
notably outperforms existing pruning methods in language generation across
various tasks. Code is available at https://github.com/liuzuyan/ElasticCache