[Paper Explain][End-to-End Dense Video Captioning with Parallel Decoding] PDVC - Hướng tiếp cận end-to-end với giải mã song song cho bài toán Dense Video Captioning

Xin chào các bạn. Chắc hẳn mọi người cũng đã từng nghe qua đến cái tên Video Understanding với rất nhiều các tác vụ con kèm theo đó là khá model nổi tiếng như:

Ngoài ra, vấn đề End-to-End cũng đang được quan tâm rất nhiều và đang trở thành một xu hướng trong việc áp dụng, thiết kế mô hình. Có thể kể đến, Deformable DETR được áp dụng trong Object Detection, …

Trong bài này chúng ta sẽ cùng nhau tìm hiểu sơ qua về Dense Video Captioning cùng với đó là ý tưởng, kiến trúc, kĩ thuật trong PDVC - một mô hình hiện đang Top 1 trên tập data YouCook2 và Top 4 trên tập ActivityNet Captions để xem chúng áp dụng gì mà có thể ngồi cao như vậy? OK chúng ta sẽ bắt đầu ngay thôi 😁😁😁

Thuật ngữ được sử dụng:

1. Video Captioning và các vấn đề gặp phải

Là một nhánh mới nổi của Video Understanding, Video Captioning ngày càng được chú ý trong thời gian gần đây. Bài toán này nhằm mục đích tạo ra một câu văn để mô tả một sự kiện chính (event) của một đoạn video ngắn. Tuy nhiên, vì video thực tế thường dài, không xác định thời lượng và bao gồm rất nhiều sự kiện (event) với nội dung cơ bản là không liên quan đến nhau, các phương pháp single-sentence captioning không thực sự tốt khi chỉ có ít thông tin.

Để giải quyết tình huống khó xử trên, Dense Video Captioning (DVC) được phát triển để tự động localizing và captioning cho nhiều event trong video, từ đó mô tả chi tiết nội dung hình ảnh và tạo mô tả mạch lạc và đầy đủ.

Hình 1: Two-stage pipeline và mô hình PDVC được đề xuất.

Dense Video Captioning có thể được chia thành hai nhiệm vụ phụ, gọi là event localizationevent captioning.

Như được thể hiện trong Hình 1, các phương pháp trước đây thường giải quyết vấn đề này bằng Two-stage pipeline: localize-then-describe . Nó hoạt động như sau:

Phương pháp trên là dễ tiếp cận, tuy nhiên nó gặp một số vấn đề sau:

Để giải quyết các vấn đề trên, tác giả đề xuất một mô hình end-to-end với Giải mã song song được gọi là PDVC.

2. PDVC

Hình 2: Tổng quan về phương pháp đề xuất - PDVC

2.1. Tổng quan mô hình

Từ hình số 2, ta có thể hình dung mô hình sẽ hoạt động như sau:

Những thứ bên lề khác:

2.2. Deformable Transformer

Deformable Transformer là một kiến trúc Encoder-Decoder dựa trên multi-scale deformable attention (MS-DAtt) .

Vì nói phần này sẽ rất dài, nên có lẽ mình sẽ dẫn link để mọi người tìm hiểu sâu hơn về nó:

2.3. Feature Encoding

Hình 3: Feature Encoding

Các điểm chính trong phần này như sau:

2.3. Parallel Decoding

Hình 4: Parallel Decoding

Các điểm chính trong phần này như sau:

2.3.1. Localization head

Localization head thực hiện dự đoán box và binary classification cho mỗi event query.

Cả dự đoán box và binary classificationn đều được thực hiện bởi multi-layer perceptron. Sau đó, chúng ta thu được một tập hợp các bộ giá trị {$t_j^s$, $t_j^e$, $c_j^{loc}$} (j->N) để đại diện cho các event được phát hiện, trong đó $c_j^{loc}$ là localization confidence của truy vấn sự kiện $q_j$.

2.3.2. Captioning head

Hình 5: Parallel Decoding với Captioning head

Tác giả cung cấp hai captioning heads: lightweight onestandard one (một đầu nhẹ và một đầu chuẩn).

Tuy nhiên, lightweight captioning head chỉ nhận được biểu diễn event-level $q_j$, thiếu sự tương tác giữa các tín hiệu ngôn ngữ và frame features. Để giảm bớt vấn đề này, tác giả đề xuất sử dụng deformable soft attention (DSA) để thực thi soft attention weights tập trung vào một khu vực nhỏ xung quanh các điểm tham chiếu - reference points.

Các bước thực hiện như sau:

2.3.3. Event Counter

Ta thấy rằng, Số event thích hợp là một chỉ số cần thiết cho bài toán Dense Video Captioning:

Event Counter nhằm mục đích phát hiện số sự kiện của một video. Nó chứa một max-pooling layer và một lớp FC với hàm kích hoạt softmax:

trong đó $c_{jt}^{cap}$ là xác suất của từ được tạo ra. Tác giả nhận thấy rằng confidence trung bình các từ không phải là một phép đo tốt ở cấp độ câu vì captioning head có xu hướng tạo ra confidence cao đối với các câu ngắn. Do đó, thêm hệ số điều chỉnh γ để điều chỉnh ảnh hưởng của độ dài câu. µ là hệ số cân bằng.

2.4. Loss Funtion

Trong quá trình training, PDVC tạo ra một tập hợp N event với các vị trí và chú thích của chúng. Chúng ta sẽ tìm cách so sánh từng event được dự đoán với từng ground truths.

Tổng loss ta cần tính, là tổng của từng thành phần: gIOU loss, classification loss, countering loss, and caption loss

trong đó:

2 loss đầu là của Localization head, tiếp theo là Captioning head và cuối cùng là Event Counter.

2.5. Kết quả

Hình 6: Kết quả thực nghiệm của tác giả khi thử nhiều phương pháp, và so sánh với các mô hình Video Captioning khác nhau.

3. Tổng kết

PDVC là một kiến trúc rất mới, đặc biệt nó thiết kế theo xu hướng end-to-end và vận dụng rất tốt việc predict song song 2 nhiệm vụ đó là: Localization và Captioning. Bằng việc áp dụng kiến trúc Deformable Transformer kèm thêm Event Counter, nó đã suất sắc nằm trong top các tác vụ về Dense Video Captioning hiện nay.

Bài viết chắc chắn sẽ còn nhiều thiếu sót, rất mong nhận được góp ý của mọi người để bài viết trở nên tốt hơn. Cảm ơn các bạn đã theo dõi và đọc bài của mình, nếu các bạn thấy bài viết hay thì có thể cho mình 1 upvote và 1 bookmark nha. See ya!