<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Mercy</title>
    <description>The latest articles on DEV Community by Mercy (@qq5yu).</description>
    <link>https://dev.to/qq5yu</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3189362%2F5f52cdf8-a8c8-4027-9503-be09efbe0f19.jpeg</url>
      <title>DEV Community: Mercy</title>
      <link>https://dev.to/qq5yu</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/qq5yu"/>
    <language>en</language>
    <item>
      <title>📄Paper: RORA-VLM: Robust Retrieval Augmentation for Vision Language Models</title>
      <dc:creator>Mercy</dc:creator>
      <pubDate>Fri, 29 May 2026 04:13:04 +0000</pubDate>
      <link>https://dev.to/qq5yu/paper-rora-vlm-robust-retrieval-augmentation-for-vision-language-models-5b4l</link>
      <guid>https://dev.to/qq5yu/paper-rora-vlm-robust-retrieval-augmentation-for-vision-language-models-5b4l</guid>
      <description>&lt;p&gt;&lt;strong&gt;Public At&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;International Conference on Learning Representations (ICLR) 2025&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;💡 Why I read this&lt;/strong&gt;&lt;br&gt;
最近在找論文的 idea 剛好找到這篇，發表在 ICLR 2025，不過被 Reject 了有點可惜&lt;br&gt;
這篇主要是把 RAG 應用到 VLM ，讓模型在回答問題時可以利用外部知識&lt;br&gt;
在很多 VQA 的任務中，答案其實不在圖片裡面，而是需要額外的背景知識&lt;br&gt;
例如一張圖顯示一種鳥，問題是：「這種鳥主要分布在哪裡？」&lt;br&gt;
圖片只能讓你看出鳥長什麼樣，但像棲地這種資訊一定要查資料才知道&lt;br&gt;
這篇主要在解決：「當 retrieved knowledge 有 noise 時，VLM 怎麼還能穩定推理？&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;🧠 Core idea&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;作者提出一個 robust retrieval framework 給 VLM：&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft3il3c5naor2j0hzrmym.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft3il3c5naor2j0hzrmym.png" alt=" " width="799" height="386"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Two-stage retrieval&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;先用 image retrieve 相似 entity，再用 entity expansion 做 text retrieval。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;在第一個階段，他們把 query image 當作一個「anchor」，去資料庫裡找很多長得很像的圖片。&lt;/p&gt;

&lt;p&gt;他們用的資料庫叫 &lt;a href="https://github.com/google-research-datasets/wit" rel="noopener noreferrer"&gt;WIT&lt;/a&gt;，裡面有 3700 萬張圖片，每張圖片都搭配一個 entity 的名字跟描述。&lt;/p&gt;

&lt;p&gt;在第二個階段，他們把在第一個階段拿到的 entity 名稱、描述加進原本的問題裡面，變成一個更具體的 query，再去用 google 查知識(call api)&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;✨ For Example&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;原本的問句: 

&lt;ul&gt;
&lt;li&gt;which year was this building built?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;找到的 Entity

&lt;ul&gt;
&lt;li&gt;Castle of Good Hope&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;新的 Query (原本的問句 + entity)

&lt;ul&gt;
&lt;li&gt;which year was Castle of Good Hope built?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs12o4enxk65xkayllalz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs12o4enxk65xkayllalz.png" alt=" " width="532" height="704"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Query-oriented visual token refinement&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;只保留和 query 最相關的 visual tokens，減少 image background noise。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;一開始有兩個輸入：問題和圖片。&lt;br&gt;
在 VLM 裡面，一張圖片會被切成很多塊，每個區塊會變成一個 visual token。&lt;/p&gt;

&lt;p&gt;接下來，模型會根據問題的內容，計算每一塊(image patch) 和 query 的相關性。&lt;br&gt;
與問題比較相關的區塊會被保留下來，不相關的就被忽略。&lt;/p&gt;

&lt;p&gt;對於每一張檢索到的圖片，也會做一樣的篩選，用「query image 的比較重要的幾個 patch」來判斷，只留下和 query image 相關的區塊。&lt;/p&gt;

&lt;p&gt;最後留下的這些區塊，會轉成對應的 visual tokens，並以 sequence 的形式排列(refined visual tokens)，作為 VLM 的 Input&lt;/p&gt;

&lt;p&gt;也就是模型最後看到的圖片資訊，其實已經被篩選過了。&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fep02egk7za1el49ln4yi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fep02egk7za1el49ln4yi.png" alt=" " width="800" height="264"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;中間那些綠色的區塊，其實代表的是，每個 patch 和問題之間的相關性分數。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;3. Noise-resilient RAG&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;training 時故意加入錯誤 retrieval，讓 model 學會忽略 irrelevant knowledge。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;VLM 會同時看到：原始圖片、問題、還有多筆查到的知識（圖片 + 文字）&lt;/p&gt;

&lt;p&gt;這些 retrieval 結果裡面，有些是正確的，有些是錯的。&lt;br&gt;
模型要做的事就是根據相關程度(每張圖片與 query 到的 image)，決定要相信哪一段資訊。&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F41egow2oh6lzmm5jnom3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F41egow2oh6lzmm5jnom3.png" alt=" " width="800" height="634"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;👉 綠色 = 高 attention &lt;br&gt;
👉 紅色 = 忽略&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;經過這個過程，模型可以回答問題，例如這個建築是在 1666–1679 年建造的。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;✨ Full Workflow&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F22cwt4kpjzufweq9mjh4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F22cwt4kpjzufweq9mjh4.png" alt="Full Workflow" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;📄Soure&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://openreview.net/pdf/1dff65b976d44f89183d623a8d26842e17ed51da.pdf" rel="noopener noreferrer"&gt;https://openreview.net/pdf/1dff65b976d44f89183d623a8d26842e17ed51da.pdf&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>vlm</category>
      <category>rag</category>
      <category>paper</category>
    </item>
  </channel>
</rss>
