Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 89 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
89
Dung lượng
1,24 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN ĐỖ THỊ MINH HUYỀN TÌM HIỂU VỀ MẠNG BAY - ÉT VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ KHOA HỌC Hà Nội - Năm 2019 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN ĐỖ THỊ MINH HUYỀN TÌM HIỂU VỀ MẠNG BAY-ÉT VÀ ỨNG DỤNG Chuyên ngành: Lý thuyết Xác suất Thống kê Toán học Mã số: 8460112.02 LUẬN VĂN THẠC SĨ KHOA HỌC NGƯỜI HƯỚNG DẪN KHOA HỌC TS Trịnh Quốc Anh Hà Nội - Năm 2019 Mục lục Lời cảm ơn Lời nói đầu Chương Kiến thức chuẩn bị 1.1 1.2 Lý thuyết đồ thị 1.1.1 Định nghĩa đồ thị 1.1.2 Đường đi, Vết Chu trình Mạng nhân 1.2.1 Suy luận không chắn 1.2.2 Các loại liên kết mạng nhân 12 1.2.3 d-tách biệt 15 1.2.4 Lớp Markov (Markov blanket) 17 Chương Giới thiệu mạng Bay-ét 2.1 2.2 Mạng Bay-ét 19 19 2.1.1 Định nghĩa mạng Bay-ét 19 2.1.2 Quy tắc chuỗi mạng Bay-ét 21 2.1.3 Mối quan hệ d - tách biệt độc lập có điều kiện mạng Bay-ét 26 Cập nhật xác suất mạng Bay-ét 33 2.2.1 Phương pháp khử biến (Variable elimination) 33 2.2.2 Phương pháp dùng junction 39 Chương Thực chạy thuật toán junction R với số liệu thực tế 68 3.1 Mô tả liệu 68 3.2 Phương pháp dùng junction 70 Kết luận 85 Tài liệu tham khảo 86 Lời cảm ơn Lời đầu tiên, em xin gửi lời cảm ơn chân thành tới thầy hướng dẫn em, Tiến sĩ Trịnh Quốc Anh Trong suốt q trình làm luận văn, thầy ln quan tâm, giúp đỡ hỗ trợ em việc đọc tài liệu tham khảo, viết luận văn kiểm tra sai sót luận văn Em cảm ơn tận tình, thấu hiểu cổ vũ thầy giúp em hồn thành luận văn Tiếp theo, em muốn gửi lời cảm ơn tới thầy giáo khoa Tốn Cơ - Tin học trường Đại học Khoa học Tự nhiên - Đại học Quốc gia Hà Nội Các thầy cô giảng dạy truyền đạt kiến thức khoa học vơ q giá cho chúng em mà đưa cho chúng em lời khuyên, học hữu ích sống Em chân thành cảm ơn động viên, giúp đỡ bạn lớp suốt hai năm qua Cuối cùng, em xin cảm ơn gia đình thân thương quan tâm, tạo điều kiện cổ vũ, động viên em để em hoàn thành luận văn Hà Nội, ngày 26 tháng 02 năm 2019 Học viên Đỗ Thị Minh Huyền Lời nói đầu Từ năm đầu thập niên 80 kỉ XX, Judea Pearl sáng tạo mạng Bay-ét dựa quy tắc Bay-ét nhà toán học người Anh Thomas Bay-ét (1702 - 1761) Mạng Bay-ét mơ hình đồ thị xác suất (Probabilistic Graphical Model) dùng để biểu diễn mối quan hệ xác suất biến ngẫu nhiên độc lập có điều kiện thơng qua đồ thị có hướng khơng có chu trình (Directed Acyclic Graph) Ta nói mạng Bay-ét có tính xác suất mạng xây dựng từ phân bố xác suất quy tắc xác suất Bên cạnh đó, ta nói mạng Bay-ét có tính chất đồ thị gồm tập đỉnh biến ngẫu nhiên tập cạnh có hướng mối quan hệ phụ thuộc biến ngẫu nhiên dựa xác suất có điều kiện biến Phân bố xác suất đồng thời biến xác định cấu trúc đồ thị mạng Mạng Bay-ét ứng dụng rộng rãi nhiều lĩnh vực khác kinh tế, xã hội, y học, tin học, với mục đích dùng để dự đoán, chẩn đoán, lập luận, dự đoán chuỗi thời gian hay đưa định điều kiện không chắn Trong luận văn này, trình bày kiến thức mạng Bay-ét Luận văn chia làm ba chương: Chương Kiến thức chuẩn bị Chương trình bày khái niệm tính chất lý thuyết đồ thị, mạng nhân Phần kiến thức dựa vào tài liệu tham khảo [1], [2], [3], [4], [6] Chương Giới thiệu mạng Bay-ét Chương tập trung vào trình bày mạng Bay-ét hai phương pháp cập nhật lại xác suất biến ngẫu nhiên X phương pháp khử biến phương pháp dùng junction Trong đó, tơi làm rõ định nghĩa mạng Bay-ét, khái niệm d – tách biệt, mối quan hệ d – tách biệt độc lập có điều kiện mạng Bay-ét Phần kiến thức dựa vào tài liệu tham khảo [4], [5], [6], [9] Chương Áp dụng: Thực phương pháp junction cho liệu thực tế Mặc dù cố gắng chắn luận văn khơng tránh khỏi thiếu sót Tơi mong nhận nhận xét, góp ý quý thầy bạn để luận văn hồn thiện Tôi xin chân thành cảm ơn! Hà Nội, ngày 26 tháng 02 năm 2019 Học viên Đỗ Thị Minh Huyền Chương Kiến thức chuẩn bị Chương trình bày số khái niệm tính chất lý thuyết đồ thị sử dụng luận văn, mạng nhân mạng Bay-ét 1.1 Lý thuyết đồ thị 1.1.1 Định nghĩa đồ thị Đồ thị cấu trúc rời rạc bao gồm tập hợp đỉnh tập hợp cạnh nối đỉnh Trong luận văn này, ta giả sử tập đỉnh V = {A1 , , An } Mỗi cặp đỉnh Ai , Aj liên kết với cạnh có hướng Ai → Aj hay Aj → Ai cạnh vô hướng Ai − Aj với Ai , Aj ∈ V, i = j Ta giả sử với cặp đỉnh Ai , Aj , tồn tai loại liên kết ba loại Do đó, đồ thị khơng thể tồn đồng thời hai kiểu liên kết Ai → Aj Aj → Ai hay Ai → Aj Ai − Aj Kí hiệu Ai → Aj tương đương với Aj ← Ai kí hiệu Ai − Aj tương đương với Aj − Ai Ta kí hiệu Ai Aj ta không quan tâm đến chiều liên kết (vơ hướng hay có hướng) Ai Aj Trong trường hợp hai đỉnh Ai Aj liên kết với theo kiểu Ai → Aj , ta nói Ai cha Aj Aj Ai Khi hai đỉnh Ai Aj liên kết với theo kiểu Ai − Aj , ta nói Ai lân cận Aj ngược lại Kí hiệu pa(A) tập hợp cha đỉnh A Định nghĩa 1.1.1 (Đồ thị vô hướng) Một đồ thị G gọi vơ hướng bao gồm tập đỉnh V = {A1 , , An } tập cạnh E = {Ai − Aj ; i, j ∈ {1, , n}} Định nghĩa 1.1.2 (Đồ thị có hướng) Một đồ thị G gọi có hướng bao gồm tập đỉnh V = {A1 , , An } tập cạnh E = {Ai → Aj ; i, j ∈ {1, , n}} 1.1.2 Đường đi, Vết Chu trình Định nghĩa 1.1.3 (Đường đi) Ta nói dãy đỉnh A1 , , Ak lập thành đường đồ thị G với i = 1, k − 1, hai đỉnh Ai Ai+1 liên kết với theo kiểu Ai → Ai+1 Ai − Ai+1 Đỉnh A1 gọi đỉnh đầu, đỉnh Ak gọi đỉnh cuối đường Một đường gọi có hướng tồn cạnh Ai → Ai+1 Định nghĩa 1.1.4 (Vết) Ta nói dãy đỉnh A1 , , Ak lập thành vết (trail) đồ thị G với i = 1, k − 1, hai đỉnh Ai Ai+1 liên kết với theo kiểu Ai Aj Ví dụ 1.1.5 Cho đồ thị G gồm đỉnh A, B, C, D, E, F, G, H, I tập cạnh hình sau Trong đồ thị G, ta thấy dãy A, C, D, E, I đường dãy vết Trong đó, dãy A, C, F, G, D vết không đường khơng có liên kết từ đỉnh G đến đỉnh D Định nghĩa 1.1.6 (Tổ tiên Hậu duệ) Đỉnh A gọi tổ tiên (ancestor) đỉnh B đồ thị G đỉnh B gọi hậu duệ (descendant) đỉnh A tồn đường có hướng A1 , , Ak với A = A1 B = Ak Trong đồ thị G ví dụ 1.1.5, ta thấy F, G, I hậu duệ C Tổ tiên C A (thông qua đường A, C) B (thông qua đường B, E, D, C) Định nghĩa 1.1.7 (Thứ tự topo) Cho đồ thị có hướng G = (V, E) Một thứ tự đỉnh A1 , , An gọi thứ tự topo tương ứng với đồ thị G ta có Ai → Aj ∈ E i < j Ở ví dụ 1.1.5, ta thấy dãy A, B, H, C, D, E, F, G, I thứ tự topo tương ứng với đồ thị G Chú ý đồ thị, tồn nhiều thứ tự topo khác Ví dụ, ngồi thứ tự ta có thứ tự topo khác tương ứng với đồ thị G A, H, B, E, D, C, F, G, I Định nghĩa 1.1.8 (Chu trình) Một chu trình đường A1 , , Ak A1 = Ak Một đồ thị gọi khơng có chu trình khơng chứa chu trình Đồ thị G ví dụ 1.1.5 đồ thị khơng có chu trình Tuy nhiên, ta thêm cạnh vô hướng A - E vào đồ thị G ta có đường A, C, D, E, A từ A vào Khi đó, đồ thị G khơng đồ thị khơng có chu trình Tương tự, ta thêm cạnh có hướng E → A tạo ta chu trình Định nghĩa 1.1.9 (Tập đầy đủ) Một tập đỉnh gọi đầy đủ tất đỉnh có liên kết đơi với Định nghĩa 1.1.10 (Clique) Một tập đầy đủ clique khơng tập tập đầy đủ khác (tập đầy đủ cực đại) Định nghĩa 1.1.11 (Đỉnh đơn hình) Một đỉnh X gọi đỉnh đơn hình X thuộc vào tập lận cận đầy đủ Hình 3.3: Đồ thị tam giác phân nhận sau khử A4 - Khử đỉnh đơn hình A5 : fa(A5 ) = {A5 , A6 , F2 } Vì fa(A5 ) khơng chứa đỉnh lại nên fa(A5 ) clique Do fa(A5 ) ⊂ fa(A4 ) nên ta lược bỏ clique fa(A5 ) tiếp tục tìm đỉnh đơn hình khác để khử Hình 3.4: Đồ thị tam giác phân nhận sau khử A4 , A5 - Khử đỉnh đơn hình A6 : fa(A6 ) = {A5 , A6 , F2 } VÌ fa(A5 ) khơng chứa đỉnh lại nên fa(A6 ) clique Do fa(A6 ) ⊂ fa(A4 ) nên ta lược bỏ clique fa(A6 ) ta tiếp tục tìm đỉnh đơn hình khác để khử 73 Hình 3.5: Đồ thị tam giác phân nhận sau khử A4 , A5 , A6 - Khử đỉnh đơn hình A7 : fa(A7 ) = {A7 ; A8 ; F3 } Vì fa(A7 ) khơng chứa đỉnh lại nên fa(A7 ) clique ta tiếp tục tìm đỉnh đơn hình khác để khử Hình 3.6: Đồ thị tam giác phân nhận sau khử A4 , A5 , A6 , A7 - Khử đỉnh đơn hình A8 : fa(A8 ) = {A8 , F3 } VÌ fa(A8 ) khơng chứa đỉnh lại nên fa(A8 ) clique Do fa(A8 ) ⊂ fa(A7 ) nên ta lược bỏ clique fa(A8 ) ta tiếp tục tìm đỉnh đơn hình khác để khử 74 Hình 3.7: Đồ thị tam giác phân nhận sau khử A4 , A5 , A6 , A7 , A8 - Khử đỉnh đơn hình A9 : fa(A9 ) = {A9 ; A10 ; F4 } Vì fa(A9 ) khơng chứa đỉnh lại nên fa(A9 ) clique ta tiếp tục tìm đỉnh đơn hình khác để khử Hình 3.8: Đồ thị tam giác phân nhận sau khử A4 , A5 , A6 , A7 , A8 , A9 - Khử đỉnh đơn hình A10 : fa(A10 ) = {A10 , F4 } VÌ fa(A10 ) khơng chứa đỉnh lại nên fa(A10 ) clique Do fa(A10 ) ⊂ fa(A9 ) nên ta lược bỏ clique fa(A10 ) ta tiếp tục tìm đỉnh đơn hình khác để khử 75 Hình 3.9: Đồ thị tam giác phân nhận sau khử A4 , A5 , A6 , A7 , A8 , A9 , A10 - Khử đỉnh đơn hình F2 : fa(F2 ) = {F2 ; F1 ; F3 ; F4 } Vì fa(F2 ) khơng chứa đỉnh lại nên fa(F2 ) clique ta tiếp tục tìm đỉnh đơn hình khác để khử Hình 3.10: Đồ thị tam giác phân nhận sau khử A4 , A5 , A6 , A7 , A8 , A9 , A10 , F2 - Khử đỉnh đơn hình F3 : fa(F3 ) = {F3 ; F1 ; F4 } Vì fa(F3 ) khơng chứa đỉnh lại nên fa(F2 ) clique Do fa(F3 ) ⊂ fa(F2 ) nên ta lược bỏ clique fa(F3 ) ta tiếp tục tìm đỉnh đơn hình khác để khử 76 Hình 3.11: Đồ thị tam A4 , A5 , A6 , A7 , A8 , A9 , A10 , F2 , F3 giác phân nhận sau khử - Khử đỉnh đơn hình F4 : fa(F4 ) = {F4 ; F1 } Vì fa(F4 ) khơng chứa đỉnh lại nên fa(F4 ) clique Do fa(F4 ) ⊂ fa(F2 ) nên ta lược bỏ clique fa(F4 ) ta tiếp tục tìm đỉnh đơn hình khác để khử Hình 3.12: Đồ thị tam giác A4 , A5 , A6 , A7 , A8 , A9 , A10 , F2 , F3 , F4 phân nhận sau khử - Khử đỉnh đơn hình A1 : fa(A1 ) = {A1 , F1 } Vì fa(A1 ) khơng chứa đỉnh lại nên fa(A1 ) clique ta tiếp tục tìm đỉnh đơn hình khác để khử - Khử đỉnh đơn hình A2 : fa(A2 ) = {A2 , F1 } Vì fa(A2 ) khơng chứa đỉnh lại nên fa(A2 ) clique ta tiếp tục tìm đỉnh đơn hình khác để khử - Khử đỉnh đơn hình A3 : fa(A3 ) = {A3 , F1 } Vì fa(A3 ) khơng chứa đỉnh lại nên fa(A3 ) clique ta tiếp tục tìm đỉnh đơn hình khác để khử Cuối cùng, ta thu clique là: f a(A4 ) = {A4 ; A5 ; A6 ; F2 }; 77 f a(A7 ) = {A7 ; A8 ; F3 }; f a(A9 ) = {A9 ; A10 ; F4 }; f a(F2 ) = {F2 ; F1 ; F3 ; F4 }; f a(A1 ) = {F1 , A1 }; f a(A2 ) = {F1 , A2 }; f a(A3 ) = {F1 , A3 } Hình 3.13: Các cliques đồ thị TG(Φ) 78 Bước 4: Xây dựng join join đồ thị gồm tập đỉnh V cliques Ci TG(Φ) tập cạnh E xác định sau: - Nếu Ci ∩ Cj = ∅, ∀i = j Ci − Cj - Nếu Ci ∩Cj = ∅, để tồn đường Ci Cj tồn Ck , , Cm cho Ci − Ck , , Cm − Cj Cách làm: Để xây dựng join, ta thực sau: - Xây dựng dãy khử: + Bước 1: Chọn đỉnh đơn hình X Khi fa(X)là clique + Bước 2: Khử đỉnh khỏi fa(X) mà có lân cận thuộc fa(X) Gán fa(X) số i tương ứng với số đỉnh bị khử kí hiệu Si tập hợp đỉnh lại Si gọi separator (bộ tách) + Bước 3: Gọi G’ đồ thị nhận sau bỏ nút bị khử Chọn clique G’ lặp lại trình với số i Tiếp tục thực tất clique bị khử - Nối separator Si với clique Cj (i < j) cho Si ⊂ Cj Đồ thị nhận join Trong ví dụ này, ta chọn đỉnh đơn hình A1 ; f a(A1 ) = {F1 , A1 } Đỉnh có lân cận thuộc f a(A1 ) A1 nên ta khử A1 Gán i = 1và S1 = {F1 } - Chọn clique f a(A2 ) = {F1 , A2 } ĐỈnh có lân cận thuộc f a(A2 ) A2 nên ta khử A2 Gán i = + = S2 = {F1 } = S1 - Chọn clique f a(A3 ) = {F1 , A3 } ĐỈnh có lân cận thuộc f a(A3 ) A3 nên ta khử A3 Gán i = + = S3 = {F1 } = S1 - Chọn clique fa(A4 ) = {A4 ; A5 ; A6 ; F2 } = C1 Đỉnh có lân cận thuộc fa(A4 ) A4 , A5 , A6 nên ta khử A4 , A5 , A6 Gán i = + = S6 = {F2 } - Chọn clique fa(A7 ) = {A7 ; A8 ; F3 } Đỉnh có lân cận thuộc f a(A7 ) A7 , A8 nên ta khử A7 , A8 Gán i = + = S8 = {F3 } - Chọn clique fa(A9 ) = {A9 ; A10 ; F4 } Đỉnh có lân cận thuộc f a(A9 ) 79 A9 , A10 nên ta khử A9 , A10 Gán i = + = 10 S10 = {F4 } - Chọn clique f a(F2 ) = {F2 ; F1 ; F3 ; F4 } Đỉnh có lân cận thuộc f a(F2 ) F2 , F3 , F4 nên ta khử F2 , F3 , F4 Gán i = 10 + = 13 S13 = F1 Hình sau thể clique, separator số cho đồ thị TG(Φ) Dãy khử hoàn hảo tìm A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , F2 , F3 , F4 , F1 Hình 3.14: Các cliques separator đồ thị TG(Φ) 80 Vì S3 , S5 , S7 ⊂ C10 nên ta nối S3 − C10 , S5 − C10 S7 − C10 Hình 3.15: join cho đồ thị TG(Φ) 81 Bước 5: Xây dựng junction Một junction join thỏa mãn điều kiện sau: (a) Mỗi φ Φ gán cho clique chứa dom(φ) (b) Mỗi liên kết gán cho separator thích hợp (c) Mỗi separator chứa hai hộp chữ nhật, hộp thể chiều Hình 3.16: junction cho đồ thị TG(Φ) Bước 6: Cập nhật xác suất Tính xác suất P (F1 |e) với e = {A1 = I, A4 = II, A7 = IV } Ta có: P (F1 |e) = P (F1 , e) P (F1 , e) = P (e) P (F1 , e) F1 82 Nhiệm vụ ta tính P (F1 , e) Để tính P (F1 , e), ta chọn clique separator có chứa F1 ,ví dụ S1 Ta xác định thông tin từ clique lại vào S1 Thơng tin ψ1 = (φA1 )↓S1 = φA1 truyền từ clique C1 vào S1 F1 Thông tin ψ2 = (φA2 )↓S1 = φA2 truyền từ clique C2 vào S1 F1 Thông tin ψ3 = (φA3 )↓S1 = φA3 truyền từ clique C3 vào S1 F1 ↓F2 Thông tin ψ4 = (φA4 φA5 φA6 φF2 ) φF2 = φA4 φA5 φA6 × = φA4 φA5 φA6 F2 = φA4 φA5 φA6 truyền từ clique C6 vào C13 thông qua hộp separator S6 Thông tin ψ5 = (φA7 φA8 φF3 ) ↓F3 φF3 = φA7 φA8 × = φA7 φA8 = φA7 φA8 F3 truyền từ clique C8 vào C13 thông qua hộp separator S8 ↓F4 φF4 = φA9 φA10 × = = φA9 φA10 Thông tin ψ6 = (φA9 φA10 φF4 ) F4 φA9 φA10 truyền từ clique C10 vào C13 thơng qua hộp separator S10 Tiếp đó, thơng tin ψ7 = (φF1 ψ4 ψ5 ψ6 ) ↓F1 φF1 = ψ4 ψ5 ψ6 × = = ψ4 ψ5 ψ6 F1 10 ψ4 ψ5 ψ6 = φA4 φA5 φA6 φA7 φA8 φA9 φA10 = φAi truyền từ clique C13 i=4 vào S1 Theo ý định lý 2.2.26, ta có P (F1 , e) = ψ1 ψ2 ψ3 ψ7 10 = φA1 φA2 φA3 φAi i=4 F1 10 = φAi i=4 83 φA1 φA2 φA3 F1 Hình 3.17: Lan truyền thơng tin junction cho đồ thị TG(Φ) 84 Kết luận Luận văn làm nội dung sau: Trình bày kiến thức mạng Bay-ét bao gồm định nghĩa mạng Bay-ét, quy tắc chuỗi mạng Bay-ét tính chất sở mạng Bay-ét Trình bày hai phương pháp cập nhật lại xác suất biến ngẫu nhiên A cho trước tập e gồm biến biết trạng thái chúng P(A|e) mạng Bay-ét Ý tưởng hai phương pháp xuất phát từ công thức xác suất đầy đủ Phương pháp thứ phương pháp khử biến sử dụng dãy khử tập biến ngẫu nhiên ban đầu để khử biến phân bố xác suất đồng thời Phương pháp thứ hai sử dụng thuật toán junction để tìm dãy khử hồn hảo nhằm giúp việc tính tốn dễ dàng thuận tiện Thực chạy thuật toán junction với số liệu thực tế biến đổi khí hậu Yên Bái khảo sát vào tháng năm 2017 Trong tương lai, dự định nghiên cứu tiếp vấn đề ước lượng cấu trúc ước lượng tham số mạng Bay-ét 85 Tài liệu tham khảo Tiếng Việt [1] Nguyễn Đức Nghĩa Nguyễn Tơ Thành (2009), Tốn rời rạc, Nhà xuất Đại học Quốc gia Hà Nội [2] Đặng Hùng Thắng (2008), Thống kê Ứng dụng, Nhà xuất Giáo Dục Tiếng Anh [3] Peter D Hoff (2009), A first course in Bayesian statistical methods, Springer [4] Finn V Jensen and Thomas Graven-Nielsen (2007), Bayesian Networks and Decision Graphs, Springer [5] Daphne Koller and Nir Friedman (2009), Probabilistic Graphical Models: Principles and Techniques, The MIT Press [6] Timo Koski and John Noble (2009), Bayesian Networks: An Introduction, Wiley [7] Radhakrishnan Nagarajan, Marco Scutari and Sophie Lebre (2013), Bayesian Networks in R with Applicatios in Systems Biology, SpringerVerlag New York [8] Richard E Neapolitan (2004), Learning Bayesian Networks, Pearson Prentice Hall 86 [9] Marco Scutari and Jean-Baptiste Denis (2014), Bayesian Networks with Examples in R, CRC Press: Taylor and Francis Group 87 ... chất BN Chứng minh Ta cần chứng minh ba ý sau: (1) P(V) phân bố xác suất (2) P(V) phản ánh hai tính chất mạng Bay-ét (3) Tính P(V) (1) Để chứng minh P(V) phân bố xác suất, ta chứng minh ba điều... theo cấp số mũ số biến V không thi t phải lớn trước bảng xác suất trở nên lớn Do đó, ta cần tìm biểu diễn chặt cho P(V), cách lưu trữ thơng tin mà từ P(V) tính tốn cần thi t Mạng Bay-ét V cách biểu... văn khơng tránh khỏi thi u sót Tơi mong nhận nhận xét, góp ý quý thầy cô bạn để luận văn hồn thi n Tơi xin chân thành cảm ơn! Hà Nội, ngày 26 tháng 02 năm 2019 Học viên Đỗ Thị Minh Huyền Chương