Nội dung text [2024-2025][Midterm] Đồ án chuyên ngành (DCT1212) (Content) (1)
BÀI TẬP Self-Attention và Masked Attention trong mô hình Encoder-Decoder Hướng dẫn chung: • Bài kiểm tra gồm 2 câu hỏi, tổng cộng 10 điểm. • Câu 1 và Câu 2 (tính toán): Trình bày rõ các bước tính, làm tròn kết quả trung gian đến 3 chữ số thập phân. Ma trận đầu ra nên ghi rõ nhãn cho hàng (ví dụ: "Hàng 1: anh, Hàng 2: ấy, Hàng 3: cười" cho Encoder; "Hàng 1: he, Hàng 2: smiles, Hàng 3: [EOS]" cho Decoder). Sai số nhỏ do làm tròn là chấp nhận được nếu các bước đúng. • Công thức softmax: softmax(xi ) = e xi ∑ e xj j . Khi điểm số là −∞ (do mask), giá trị softmax là 0. Ví dụ: Với scores [1, 0, −∞], softmax là [ e 1 e 1+e 0 , e 0 e 1+e 0 , 0] ≈ [0.731, 0.269, 0]. • Thời gian khuyến nghị: Câu 1 (~35 phút), Câu 2 (~35 phút), Câu 3 (~20 phút). • Sử dụng dữ liệu và tham số được cung cấp. Dữ liệu và Tham số Bài toán: Mô hình Encoder-Decoder được sử dụng cho dịch máy, dịch câu từ tiếng Việt sang tiếng Anh. • Câu nguồn (Source, Encoder input): "Anh ấy cười" → Chuỗi: anh ấy cười → Token IDs: [2001, 2002, 2003] • Câu đích (Target, Decoder input): "He smiles" → Chuỗi: he smiles [EOS] → Token IDs: [2004, 2005, 2006] o Lưu ý: Chuỗi Decoder là đầu vào trong pha huấn luyện (teacher forcing), đại diện cho câu đích, với [EOS] để báo hiệu kết thúc. • Từ điển: [PAD]=0, anh=2001, ấy=2002, cười=2003, he=2004, smiles=2005, [EOS]=2006 • Kích thước embedding: 2 (để đơn giản hóa)
• Embedding ban đầu: o 2001 (anh): [0.3, 0.4] o 2002 (ấy): [0.5, 0.6] o 2003 (cười): [0.7, 0.8] o 2004 (he): [0.2, 0.3] o 2005 (smiles): [0.4, 0.5] o 2006 ([EOS]): [0.1, 0.2] • Đầu Attention: 1 đầu (để giảm độ phức tạp) • Ma trận trọng số (cho Head 1): o Query: WQ = [ 0.1 0.2 0.3 0.4 ] o Key: WK = [ 0.1 0.2 0.3 0.4 ] o Value: WV = [ 0.1 0.2 0.3 0.4 ] • Hệ số chia: √dk = √2 ≈ 1.414 Câu 1: Self-Attention trong Encoder (5 điểm) Yêu cầu: Tính đầu ra của Self-Attention cho chuỗi đầu vào Encoder anh ấy cười (tương ứng với câu nguồn "Anh ấy cười"), sử dụng ma trận trọng số được cung cấp. Các bước: 1. Tính ma trận Query (Q), Key (K), và Value (V) bằng cách nhân ma trận embedding với WQ, WK, và WV . 2. Tính điểm attention: scores = QK T √dk . 3. Áp dụng hàm softmax để tính trọng số attention (α). 4. Tính đầu ra attention: Attention = αV. Lưu ý: Làm tròn kết quả trung gian đến 3 chữ số thập phân. Cung cấp ma trận đầu ra attention (3x2, với hàng theo thứ tự anh, ấy, cười). Kiểm tra kỹ phép nhân ma trận và chia cho √dk.