<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>fsa_official.log</title>
        <link>https://velog.io/</link>
        <description>fsa_official</description>
        <lastBuildDate>Wed, 27 Nov 2024 12:40:28 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>fsa_official.log</title>
            <url>https://velog.velcdn.com/images/fsa_official/profile/3fa9fb5c-8ecc-4365-9ec8-b048f2762a92/social_profile.png</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. fsa_official.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/fsa_official" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[[논문리뷰] QD-DETR]]></title>
            <link>https://velog.io/@fsa_official/%EB%85%BC%EB%AC%B8%EB%A6%AC%EB%B7%B0-QD-DETR</link>
            <guid>https://velog.io/@fsa_official/%EB%85%BC%EB%AC%B8%EB%A6%AC%EB%B7%B0-QD-DETR</guid>
            <pubDate>Wed, 27 Nov 2024 12:40:28 GMT</pubDate>
            <description><![CDATA[<ul>
<li><a href="https://arxiv.org/pdf/2303.13874">https://arxiv.org/pdf/2303.13874</a><ul>
<li>90회 인용</li>
</ul>
</li>
<li><a href="https://github.com/wjun0830/QD-DETR?tab=readme-ov-file">https://github.com/wjun0830/QD-DETR?tab=readme-ov-file</a><ul>
<li>207 star</li>
</ul>
</li>
</ul>
<hr>
<h1 id="텍스트-기반-쿼리-의존적-비디오-표현을-위한-qd-detr-소개">텍스트 기반 쿼리 의존적 비디오 표현을 위한 QD-DETR 소개</h1>
<ul>
<li><strong>모먼트 검색(Moment Retrieval)</strong><ul>
<li><code>영상 내에서 특정 텍스트 쿼리에 해당하는 순간을 찾아내는 작업</code></li>
<li>주어진 텍스트 설명에 해당하는 영상을 <strong>로컬라이즈</strong>하는 작업</li>
<li>예: <ul>
<li>&quot;축구 영상&quot; + text: &quot;goal이 들어간 장면&quot;</li>
<li>결과: 3분 3초 ~3분 10초 / 24분 5초 ~ 24분 12초</li>
</ul>
</li>
</ul>
</li>
<li><strong>하이라이트 검출(Highlight Detection)</strong><ul>
<li><code>각 비디오 클립이 주어진 쿼리에 얼마나 부합하는지를 점수로 나타내는 작업</code></li>
<li>주어진 비디오의 각 클립의 <strong>중요도 수준</strong>을 측정하는 작업</li>
<li>예<ul>
<li>&quot;축구 영상&quot; + text: &quot;goal이 들어간 장면&quot;</li>
<li>결과: clip 1 -&gt; 1점 , clip 2 -&gt; 0.8점, ... , clip N -&gt; 0.1점</li>
</ul>
</li>
<li>여기서 clip은 전체 비디오를 n초 단위로 자른 개념을 의미한다. </li>
</ul>
</li>
</ul>
<hr>
<ul>
<li>하지만 기존의 Transformer 기반 모델들은 <code>텍스트 쿼리의 정보를 충분히 활용하지 못하는 한계</code> <ul>
<li>예를 들어, 비디오 내용과 텍스트 쿼리 간의 연관성을 무시하고 순간이나 하이라이트를 예측하는 경우가 발생</li>
</ul>
</li>
</ul>
<hr>
<ul>
<li>이에 대한 해결책으로, 우리는 Moment Retrieval과 Highlight Detection에 특화된 <strong>쿼리 의존적 DETR(Query-Dependent DETR, QD-DETR)</strong>를 제안 </li>
<li><img src="https://velog.velcdn.com/images/hsbc/post/cb2ccda6-0e8d-4074-ac1c-846c82ff1302/image.png" alt=""></li>
</ul>
<h2 id="잠깐-saliency가-뭐야-중요도">잠깐! Saliency가 뭐야? (중요도)</h2>
<ul>
<li>좀 더 자세히 설명하자면:<ul>
<li><strong>살리에인시 점수</strong>는 비디오 내의 각 클립이 텍스트 쿼리와의 <strong>관련성</strong>을 수치화한 것</li>
</ul>
</li>
<li>이 점수는 해당 클립이 <code>쿼리에서 묘사하는 내용이나 행동, 사건</code> 등을 얼마나 잘 포함하고 있는지를 반영</li>
<li>높은 살리에인시 점수를 가진 클립은 쿼리와 매우 밀접하게 연관되어 있으며, 낮은 점수는 연관성이 적거나 없음을 의미</li>
<li>예시<ul>
<li>텍스트 쿼리: &quot;사람들이 불꽃놀이를 감상하는 장면&quot;</li>
</ul>
</li>
<li>비디오 클립들:<ul>
<li>클립 A: 사람들이 밤하늘을 바라보는 장면 (살리에인시 점수 높음)</li>
<li>클립 B: 낮에 사람들이 공원을 걷는 장면 (살리에인시 점수 낮음)</li>
<li>클립 C: 불꽃놀이가 하늘에서 터지는 장면 (살리에인시 점수 매우 높음)</li>
</ul>
</li>
<li>이처럼 살리에인시 점수는 각 클립이 쿼리와 얼마나 관련성이 있는지를 나타내며, <ul>
<li>이를 통해 모델은 비디오 내에서 <strong>쿼리에 해당하는 중요한 순간</strong>이나 <strong>하이라이트</strong>를 찾아낼 수 있습니다.</li>
</ul>
</li>
</ul>
<h2 id="1-서론">1. 서론</h2>
<h3 id="모먼트-검색과-하이라이트-검출의-필요성">모먼트 검색과 하이라이트 검출의 필요성</h3>
<ul>
<li>영상 내에서 <strong>사용자가 요청한 순간을 검색</strong>하는 연구 [1, 12, 13, 30]와 <strong>영상의 하이라이트를 요약</strong>하는 연구 [4, 33, 47, 57]가 활발히 진행 중</li>
<li>최근에는 <strong>Moment-DETR</strong> [23]이 제안되면서, 두 가지 작업을 동시에 수행할 수 있는 <strong>QVHighlights 데이터셋</strong>이 등장</li>
</ul>
<h2 id="2-관련-연구">2. 관련 연구</h2>
<ul>
<li><img src="https://velog.velcdn.com/images/hsbc/post/cb2ccda6-0e8d-4074-ac1c-846c82ff1302/image.png" alt=""><h3 id="21-모먼트-검색moment-retrieval과-하이라이트-검출highlight-detection">2.1 모먼트 검색(Moment Retrieval)과 하이라이트 검출(Highlight Detection)</h3>
</li>
<li>작업이 종종 비디오만으로 구현되지만, 추가적인 데이터 모달리티를 활용하는 연구도 있습니다. <ul>
<li>일반적으로, 멀티모달리티는 <strong>자연어 쿼리</strong>를 사용하여 원하는 썸네일을 찾거나 [30], </li>
<li><strong>오디오</strong>와 같은 추가 소스를 활용하여 하이라이트를 예측하는 방식 [3, 53]</li>
</ul>
</li>
<li>모먼트 검색과 하이라이트 검출 작업을 한 번에 처리하기 위해, <strong>Moment-DETR</strong> [23]은 <strong>QVHighlights 데이터셋</strong>을 제안하였는데, <ul>
<li>이 데이터셋은 사람이 작성한 <strong>텍스트 쿼리</strong>와 그에 상응하는 <strong>모먼트</strong> 및 <strong>클립 수준의 살리에인시 레이블</strong>을 포함</li>
</ul>
</li>
</ul>
<h2 id="3-제안하는-접근법-쿼리-의존적-detrqd-detr">3. 제안하는 접근법: 쿼리 의존적 DETR(QD-DETR)</h2>
<ul>
<li><img src="https://velog.velcdn.com/images/hsbc/post/cb2ccda6-0e8d-4074-ac1c-846c82ff1302/image.png" alt=""><h3 id="중요-특징">중요 특징</h3>
<h4 id="특징-1-위-그림의-빨간색-박스-부분">특징 1 (위 그림의 빨간색 박스 부분)</h4>
</li>
<li>쿼리의 맥락 정보를 완전히 활용하기 위해, 우리는 Transformer 인코더를 수정하여 <strong>초기 레이어에 크로스 어텐션 레이어</strong>를 장착<ul>
<li>이때 비디오를 <strong>쿼리(Query)</strong>로, 텍스트를 <strong>키(Key)</strong>와 <strong>밸류(Value)</strong>로 사용하는 크로스 어텐션 레이어를 삽입함으로써, <ul>
<li>인코더에서 비디오 표현을 추출할 때 <strong>텍스트 쿼리의 참여를 보장</strong></li>
</ul>
</li>
</ul>
</li>
<li>텍스트 쿼리의 정보를 더욱 적극적으로 활용하기 위해, 우리는 <strong>부정적(무관한) 비디오-쿼리 쌍</strong>을 생성합니다.<ul>
<li>원래의 비디오-쿼리 쌍을 섞어서 <strong>무관한 쌍</strong>을 만듭니다. <ul>
<li>예를 들어, 비디오 A와 쿼리 B를 조합하여 부정적 쌍을 생성</li>
</ul>
</li>
<li>이러한 부정적 쌍에 대해 모델이 <strong>낮은 살리에인시 점수</strong>를 예측하도록 학습시킴<h4 id="특징-2">특징 2</h4>
</li>
</ul>
</li>
<li>학습 데이터셋은 (비디오-연관 query text)조합으로 되어 있습니다.<ul>
<li>이 데이터셋의 단점은, query가 전부 비디오와 연관된 Text라는 점입니다.</li>
<li>이게 왜 문제가 되나면, 학습된 모델을 사용자가 사용할 때, 사용자가 준 특정 query들은 해당 비디오에서 전혀 찾을 수 없는 경우들도 많을텐데<ul>
<li>이 과정이 학습된 적이 없기 때문입니다.</li>
</ul>
</li>
</ul>
</li>
<li>이를 극복하기 위해, 비디오-쿼리 쌍을 조작하여 <strong>무관한(부정적) 쌍</strong>을 만들어냅니다. <ul>
<li>이러한 부정적 쌍에 대해 낮은 점수를 예측하도록 모델을 학습시킴으로써, <code>쿼리-비디오 간의 정확한 일치도를 추정</code>하도록 합니다.</li>
</ul>
</li>
<li>이는, 부정적 쌍에 대해 낮은 살리에인시 점수를 예측하도록 모델을 학습시킴<ul>
<li>부정적 쌍 학습은, 쿼리를 고려하지 않고 문제를 해결하는 것을 방지<h4 id="특징-3-위-그림의-초록색-박스-부분">특징 3: (위 그림의 초록색 박스 부분)</h4>
</li>
</ul>
</li>
<li>마지막으로, 입력에 따라 적응적으로 동작하는 <strong>살리에인시(중요도) 예측기(Saliency Predictor)</strong>를 도입하여, <ul>
<li>각 비디오-쿼리 쌍에 대한 <code>살리에인시(중요도) 점수의 기준</code>을 유연하게 정의</li>
</ul>
</li>
<li><strong>살리에인시 토큰</strong>을 사용하여 전체 비디오를 대표하도록 함<ul>
<li>이 토큰은 비디오와 쿼리의 정보를 모두 반영하며, 각 인스턴스마다 살리에인시 점수의 기준을 유연하게 정의</li>
<li>이를 통해 다양한 비디오-쿼리 쌍에 대해 <strong>다양한 살리에인시 표현</strong>을 유지할 수 있음</li>
</ul>
</li>
</ul>
<h3 id="decoder-and-objectives">Decoder and Objectives</h3>
<ul>
<li><img src="https://velog.velcdn.com/images/hsbc/post/cb2ccda6-0e8d-4074-ac1c-846c82ff1302/image.png" alt=""><h4 id="transformer-decoder">Transformer Decoder</h4>
</li>
<li>디코더의 인풋으로 Moment queries를 주는데, 이 친구들은 (N_q, 2) shape 입니다.</li>
<li>N_q는 clip candidate의 개수입니다. (우리가 설정하는 Hyperparameter)</li>
<li>(2,) 차원 = (하이라이트 순간의 중심 시각, 지속 길이)</li>
<li>이전 이미지 도메인에서의 방식과 유사하게, <ul>
<li><code>하이라이트 순간의 중심 시각</code> 을 이용해서 중심 좌표 주변의 특징들을 풀링하고, </li>
<li>순간 지속시간(moment duration)을 이용해서 cross attention map 맵을 조정</li>
<li>그런 다음, (하이라이트 순간의 중심 시각, 지속 길이)은 계층적으로(layer-wise) 수정됩니다.</li>
</ul>
</li>
</ul>
<h4 id="objectives-function">Objectives Function</h4>
<ul>
<li><img src="https://velog.velcdn.com/images/hsbc/post/cb2ccda6-0e8d-4074-ac1c-846c82ff1302/image.png" alt=""></li>
<li>위 그림에 전부 Loss function이 소개되어 있다.</li>
<li>다만, <code>Rank Aware Contrastive Loss</code>에 대한 설명이 빠져 있어, 여기서 설명하고자 한다.<ul>
<li>Contrastive Learning? : <a href="https://velog.io/@hsbc/Contrastive-Learning">https://velog.io/@hsbc/Contrastive-Learning</a><h5 id="rank-aware-contrastive-loss">Rank Aware Contrastive Loss</h5>
</li>
</ul>
</li>
<li>학습시, mini-batch 단위로 학습을 할 것이다. 즉, B개의 비디오를 input으로 해서 (B,L) shape의 clip을 input으로 가져간다.</li>
<li>이 mini-batch에서, 가장 중요도 GT가 높은 값을 찾아서 R이라고 칭한다.</li>
<li>이제 r = 0 ... R-1 로 순회하면서</li>
<li><img src="https://velog.velcdn.com/images/hsbc/post/746e2135-e5ec-42c9-8b7d-17314111ff96/image.png" alt=""></li>
<li>일반 Contrastive Loss는 모든 데이터를 동일하게 처리하지만, Rank-Aware 방식은 데이터의 중요도를 단계적으로 반영합니다. </li>
<li>이로 인해 모델이 더 정밀한 중요도 예측을 학습할 수 있습니다.</li>
</ul>
<h2 id="4-실험">4. 실험</h2>
<h3 id="41-데이터셋-및-설정">4.1 데이터셋 및 설정</h3>
<ul>
<li>우리는 제안하는 QD-DETR의 성능을 검증하기 위해 다음과 같은 데이터셋을 사용</li>
<li><strong>QVHighlights</strong>: <ul>
<li>모먼트 검색과 하이라이트 검출을 모두 포함하는 데이터셋으로, 사람이 작성한 텍스트 쿼리와 그에 대응하는 순간 및 클립 수준의 살리에인시 레이블을 포함</li>
</ul>
</li>
<li><strong>TVSum</strong>: <ul>
<li>영상 요약을 위한 데이터셋으로, 각 클립의 중요도 점수가 제공</li>
</ul>
</li>
<li><strong>Charades-STA</strong>: <ul>
<li>행동 인식을 위한 데이터셋으로, 텍스트 쿼리와 그에 해당하는 순간이 주어짐</li>
</ul>
</li>
</ul>
<h2 id="5-한계점-및-결론">5. 한계점 및 결론</h2>
<h3 id="51-한계점">5.1 한계점</h3>
<ul>
<li>우리가 제안한 구성 요소들은 <strong>의미 있는 맥락을 가진 쿼리</strong>가 주어질 것을 기대</li>
<li>만약 그렇지 않고, <strong>노이즈가 섞인 텍스트 쿼리</strong>(예: 잘못 매칭되거나 무관한 텍스트)가 제공된다면, 학습이 효과적이지 않을 수 있습니다.</li>
</ul>
<hr>
<hr>
<h1 id="rank-aware-contrastive-loss-1">Rank Aware Contrastive Loss</h1>
<h3 id="rank-aware-contrastive-loss에-대한-상세-설명"><strong>Rank-Aware Contrastive Loss에 대한 상세 설명</strong></h3>
<ul>
<li>GPT에서 찾아보기</li>
</ul>
]]></description>
        </item>
    </channel>
</rss>