Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 12 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
12
Dung lượng
259,93 KB
Nội dung
lOMoARcPSD|18034504 ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA BÁO CÁO BÀI TẬP LỚN MƠN: ĐẠI SỐ TUYẾN TÍNH ĐỀ TÀI 4: PHÉP PHÂN TÍCH A= QR BẰNG PHÉP BIẾN ĐỔI HOUSEHOLDER GIẢNG VIÊN HƯỚNG DẪN: ĐẶNG VĂN VINH LỚP:L06 NHÓM TPHCM, NGÀY THÁNG NĂM i lOMoARcPSD|18034504 ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA BÁO CÁO BÀI TẬP LỚN MƠN: ĐẠI SỐ TUYẾN TÍNH ĐỀ TÀI 4: PHÉP BIẾN ĐỔI A = QR BẰNG PHÉP BIẾN ĐỔI HOUSEHOLDER LỚP: L06 NHÓM: NĂM HỌC: 2021-2022 ii lOMoARcPSD|18034504 ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA • DANH SÁCH THÀNH VIÊN: STT HỌ VÀ TÊN Cao Vũ An Nguyễn Quốc Bảo Vương Khuyến Nguyễn Lê Thanh Minh Phan An Nam Ngô Nhật Thiên Nguyễn Hữu Đạt MSSV 2110688 2112873 2111571 2114059 2114123 2114860 2113139 LỚP: L06 NHÓM: NĂM HỌC 2021-2022 iii lOMoARcPSD|18034504 Mục lục LỜI MỞ ĐẦU v ĐỀ TÀI vi I Cơ sở lý thuyết phép phân tích A = QR I.1 Định nghĩa: .1 I.2 Phân tích: I.3 Ví dụ ứng dụng: I.3.1 Ví dụ 1: I.3.2 Ví dụ 2: II Xây dựng chương trình Matlab để biến đổi A=QR biến đổi Householder II.1 Tổng quan Matlab: II.2 Phần code: .5 III Ứng dụng phép phân tích A = QR TÀI LIỆU THAM KHẢO iv lOMoARcPSD|18034504 LỜI MỞ ĐẦU C uộc sống ngày phát triển, nhu cầu người ngày phong phú, dẫn đến thuật toán đặt ngày nhiều nghiên cứu để phục vụ cho khoa học kĩ thuật, ứng dụng vào đời sống người Có nhiều thuật tốn nghiên cứu thành cơng đưa vào ứng dụng cho đời sống người Trong số phân rã A = QR đem vào ứng dụng nhiều phục vụ cho việc nghiên cứu khoa học Phân tích A = QR thường ứng dụng máy học, chẳng hạn việc tự động xóa đối tượng khỏi hình ảnh Đồng thời sử dụng hệ thống xử lí tín hiệu hệ thống MIMO,… Phân rã QR có nhiều phép biến đổi khác nhau,như biến đổi trực giao hóa Gram Schmidt, phép biến đổi HouseHolder Và báo cáo này, nhóm xin phép giới thiệu “Phép phân tích A = QR phép biến đổi HOUSEHOLDER” v lOMoARcPSD|18034504 ĐỀ TÀI - Nêu sở lý thuyết phân tích A=QR - Viết chương trinh dùng để phân tích A = QR biến đổi Householder - Tìm ứng dụng phân tích A = QR vi Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 I Cơ sở lý thuyết phép phân tích A = QR I.1 Định nghĩa: Cho ma trận A ∈ Mmxn(ℝ) Phân tích QR ma trận A biểu diễn A = QR với Q ma trận trực giao (QT=Q-1) R ma trận tam giác (rij=0, ∀i > j) I.2 Phân tích: Ta dùng phép biến đổi Householder để tìm ma trận Q R cho Qn-1 Qn-2 …Q1 A = R Như vậy: A = (Qn-1 Qn-2 … Q1)-1 R = (Q1)-1…(Qn-2)-1.(Qn-1)-1.R = (Q1)T…(Qn-2)T.(Qn-1)T.R = QR Tích ma trận Householder Q = Q1.Q2…Qn-1 Không đối xứng mà trực giao ma trận Qk: QT.Q = (Q1.Q2…Qn-1)T.(Q1.Q2…Qn-1) = I Giả sử u ∈ Mnx1(ℝ) vector khác khơng tuỳ ý, hình chiếu vng góc vector v lên không gian F sinh vector u là: pru(v) = Phép biến đổi phép chiếu vng góc vector tuỳ ý lên không gian sinh vector u Vector v phân tích thành v=a+b, với a hình chiếu vng góc v lên F bù vng góc b hình chiếu vng góc v lên F Ta có: v = a + a = v - = Phép biến đổi: phép chiếu vng góc vector lên khơng gian F bù vng góc Ta có : = + Phép đối xứng qua F bù vng góc ( phép biến đổi gọi phép biến đổi Householder) Giả sử cột thứ ma trận A Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 Ta cần tìm ma trận trực giao P1 để P1A*1 = Ma trận P1 tương ứng với phép biến đổi trực giao nên bảo tồn độ dài vector Vậy độ dài P1A*1 độ dài A*1 Do ta chọn P1A*1 = Đặt vector = A*1, = Khi = + = - Đặt = = A*1 Dùng vector tạo phép biến đổi Householder P1 = phép biến đổi khử tất phần tử cột thứ ma trận A ngoại trừ phần tử I.3 Ví dụ ứng dụng: I.3.1 Ví dụ 1: Cho ma trận Dùng phép biến đổi Householder tìm phân tích Giải Tạo vector Tìm phép biến đổi Householder để khử cột A: Khi Xét ma trận Tương tự trên: Tạo vector Q ‘2 Khi Q’2 Đặt Q2 = Ta có Suy I.3.2 Ví dụ 2: Cho ma trận A = Dùng phép biến đổi Householder, tìm phân tích A=QR Giải Tạo vector u = A*1 - e1 = ( -1; 1; 1; )T Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 Tìm phép biến đổi Householder để khử cột A: Q1 = = Khi Q1 A = Xét ma trận A1 = Lặp lại bước cho ma trận A1 Tạo vector u = - e1 = ( -6; 0; )T Tìm phép biến đổi Householder để khử cột A1: Q’2 = = Khi Q’2 A1 = Đặt Q2 = Ta có Q2 Q1 A = = R Suy A = R = R = QR II Xây dựng chương trình Matlab để biến đổi A=QR biến đổi Householder II.1 Tổng quan Matlab: - Matlab (viết tắt Matrix Laborary) ngơn ngữ lập trình bậc cao bốn hệ, mơi trường để tính tốn số học, trực quan lập trình Được phát triển MathWorks - Là phần mềm cung cấp mơi trường tính tốn số lập trình, cơng ty MathWorks thiết kế MATLAB cho phép tính tốn số với ma trận, vẽ đồ thị hàm số hay biểu đồ thông tin, thực thuật toán, tạo giao diện người dùng liên kết với chương trình máy tính viết nhiều ngơn ngữ lập trình khác -Nó có nhiều lệnh hàm toán học nhằm hỗ trợ đắc lực cho bạn việc tính tốn, vẽ hình vẽ, biểu đồ thơng dụng thực thi phương pháp tính toán Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 II.2 Phần code: Phần code function [Q,R] = qrfactor(A) [m,n] = size(A); Q=eye(m); for k = 1:n z = A(k:m,k); v = [ -sign(z(1))*norm(z) - z(1); -z(2:end) ]; v = v / sqrt(v'*v); for j = 1:n A(k:m,j) = A(k:m,j) - v*( 2*(v'*A(k:m,j)) ); end for j = 1:m Q(k:m,j) = Q(k:m,j) - v*( 2*(v'*Q(k:m,j)) ); end end Q = Q'; R = triu(A); Phần kết Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 - - Giải thích code: [m,n] = size (A) : A ma trận có m hàng n cột ( ma trận cỡ m x n) Q = eye(m) : ma trận đơn vị cấp m For k = 1:n … end Vòng lặp lặp lại từ đến n lần z = A(k:m,k) : ma trận z = lấy phần tử cột k từ vị trí k đến m ma trận A sign: dấu ma trận norm(v): độ dài vecto v tính theo tích vơ hướng z(2:end): chọn phần tử cuối hàng ma trận z sqrt(v’*v): bậc ( ma trận v chuyển vị nhận ma trận v) triu A: ma trận A III Ứng dụng phép phân tích A = QR Phân rã QR hữu ích ứng dụng học máy Một ví dụ việc sử dụng phân rã QR học máy tự động xóa đối tượng khỏi hình ảnh Hãy tưởng tượng bạn muốn cắt hình ảnh tơ từ video clip Sử dụng gọi phân rã giá trị đơn lẻ, trở nên tương đối đơn giản Nói tóm lại, cách chia video thành khung hình riêng lẻ, chuyển khung hình thành vectơ 1D tạo ma trận vectơ tương ứng với hình ảnh, sau người ta chạy phân tách giá trị video Sự phân hủy cho phép tách đối tượng trước khỏi khơng gian hình ảnh từ video cách đơn giản Ví dụ minh họa: Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 Phân tách QR sử dụng hệ thống xử lý tín hiệu hệ thống MIMO Phân hủy QR đường chéo ứng dụng để thiết kế mã cho trước Phân tích phân biệt trọng số dựa hạt nhân với phân rã QR ứng dụng để nhận dạng khn mặt Một số lược đồ thủy dựa phân tích QR TÀI LIỆU THAM KHẢO [1] Giáo trình đại số tuyến tính thầy Đặng Văn Vinh, Trường Đại học Bách Khoa TP.HCM [2] Kernel-based weighted discriminant analysis with QR decomposition and its application to face recognition - Jianqiang Gao (https://dl.acm.org/doi/abs/10.5555/2064828.2064831) [3] Implementation comparisons of the QR decomposition for MIMO detection - Gabriel Luca Nazar, Christina Gimmler-Dumont, Norbert When (https://www.researchgate.net/publication/220850919_Implementation_compari sons_of_the_QR_decomposition_for_MIMO_detection) [4] QR Decomposition and Machine Learning (https://deepai.org/machine-learning-glossary-and-terms/qr-decomposition) [5] Giáo trình matlab – Trần Văn Chính Downloaded by vu ga (vuchinhhp2@gmail.com)