TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN TOÁN ỨNG DỤNG VÀ TIN HỌC PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG Dự đoán mức độ nghiêm trọng của sự gián đoạn dịch vụ mạng Giảng viên hướng dẫn: LÊ CHÍ NGỌC Sinh viên thực hiện: Vũ Mạnh Quang MSSV: 20163332 Lớp: Tốn – Tin K61 Hà Nợi-2020 Nợi dung Lời nói đầu Chương 1: Điều tra, khảo sát 1.1 Khảo sát hiện trạng 1.2 Mô hình nghiệp vụ 1.3 Đặc tả yêu cầu phần mềm 1.4 Dữ liệu thực nghiệm 1.5 Mô hình áp dụng Chương 2: Phân tích hệ thống 2.1 Biểu đồ phân cấp chức 2.2 Biều đồ luồng dữ liệu 2.2.1 Biều luồng dữ liệu mức ngữ cảnh 2.2.2 Biều đồ luồng dữ liệu mức đỉnh 10 2.2.3 Biểu đồ luồng dữ liệu mức dưới đỉnh chức xử lý dữ liệu 10 2.2.4 Biểu đồ luồng dữ liệu mức dưới đỉnh chức dự đoán 11 Chương 3: Thiết kế chương trình 12 3.1 Về mặt dữ liệu 12 3.2 Mô hình hệ thống 12 3.3 Về mặt giao diện 13 3.3.1 Công nghệ sử dụng 13 3.3.2 Giao diện sản phẩm 14 Kết luận 18 Tài liệu tham khảo 19 Lời nói đầu Trong trình hình thành phát triển, công ty viễn thông xảy tình trạng gián đoạn dịch vụ mạng Hệ lụy các sự cố gián đoạn này ảnh hưởng đến công ty không tránh khỏi Hiểu biết và dự đoán tại mức độ nghiêm trọng sự cớ gián đoạn dịch vụ giúp nhà quản lý có thể đưa các chiến lược khắc phục sự cố, trấn an khách hàng Trong báo cáo em xây dựng một hệ thống hỗ trợ định dự đoán mức độ nghiêm trọng sự gián đoạn dịch vụ Báo cáo gờm chương chính: • Chương 1: Điều tra, khảo sát • Chương : Phân tích hệ thớng • Chương 3: Thiết kế chương trình Em xin chân thành cảm ơn Thầy Lê Chí Ngọc tận tình giúp đỡ để em có thể hồn thành báo cáo Do có nhiều hạn chế về mặt kiến thức nên báo cáo có thể khơng tránh khỏi mợt sớ sai sót về mặt chủ quan khách quan Vì em rất mong nhận sự góp ý, đánh giá Thầy bạn để báo cáo hệ thớng hồn thiện Em xin chân thành cảm ơn! Hà Nội, ngày 15 tháng 06 năm 2020 Sinh Viên thực hiện Vũ Mạnh Quang Chương 1: Điều tra, khảo sát 1.1 Khảo sát hiện trạng Trong q trình hoạt đợng, nhà mạng viễn thông thường xảy các sự cố gián đoạn dịch vụ mạng là điều không thể tránh khỏi Sự gián đoạn hoạt động mạng xảy khá thường xuyên và gia tăng đột biến thời gian vừa qua Việc xảy sự cố mạng là một vấn đề khá đau đầu đối với các nhà quản lý nhà mạng viễn thơng, dẫn tới nhiều thiệt hại nghiêm trọng cho khác hàng, làm giảm trải nghiệm người dùng và chất lượng dịch vụ chăm sóc khách hàng Khách hàng dễ thay đởi nhà mạng gặp nhiều sự cố gián đoạn dịch vụ Ngoài ảnh hưởng đến hoạt động kinh tế nhiều doanh nghiệp sử dụng dịch vụ, vấn đề này khá nghiêm trọng có sự cớ xảy Chính vì vậy, việc dự đoán có sự gián đoạn mạng xảy và sự cớ có là mợt sự cớ nghiêm trọng có thể dẫn đến sự mất hẳn dịch vụ hay khơng giúp ích cho nhà quản lý Nhà quản lý có thể dựa vào kết quả dự đoán để đưa kế hoạch sửa chữa phù hợp, hoặc đưa là các chiến lược khắc phục sau sự mất hẳn dịch vụ diễn trấn an khách hàng, thêm sách ưu đãi sau sự cố xảy (nhà mạng Telstra từng có sách miễn phí dữ liệu mợt ngày sau sự cố mất dịch vụ hàng triệu người dùng) Nhà quản lý có thể đưa định nâng cấp sở hạ tầng mạng tại những vị trị thường xuyên xảy sự cố 1.2 Mơ hình nghiệp vụ Dữ liệu có thơng qua các bảo cáo gửi về từ các nút mạng trung gian tại các vị trí khác sau mợt khoảng thời gian nhất định Các báo cáo gửi về tập trung và lưu trữ sở dữ liệu hệ thống Thông qua dữ liệu này hệ thớng phân tích các hoạt đợng các nút mạng, từ đưa các dự đoán liệu có sự gián đoạn xảy hay khơng, và có thì sự gián đoạn xảy có nghiêm trọng hay khơng Nhà quản lý quan tâm đến các vị trí có sự gián đoạn xảy ra, nhất là các vị trí xảy sự gián đoạn nghiêm trọng, từ đưa các định cụ thể Người Chương dùng trình Yêu cầu hỗ trợ Xử lý Kết quả Mơ hình hóa nghiệp vụ 1.3 Đặc tả yêu cầu phần mềm Ứng dụng xây dựng với mục đích hỗ trợ nhà quản lý đưa định nên cần phải trình bày kết quả dự đoán một cách trực quan, sinh động để nhà quản lý có nhìn tởng quan về tình hình xảy sự gián đoạn dịch vụ Khi xây dựng hệ thớng cần thực hiện được: • Người quản lý toàn quyền quản lý dữ liệu bên trong, nhìn thấy tất cả sớ liệu sở dữ liệu • Tởng sớ dữ liệu hiện tại, tổng quan một số đặc trưng bộ dữ liệu, biểu đờ phân bớ các trường tḥc tính • Thông tin chi tiết về dự đoán sự gián đoạn dịch mạng, biểu đồ về các mức độ gián đoạn dịch vụ 1.4 Dữ liệu thực nghiệm Dữ liệu sử dụng đề tài là bộ dữ liệu về mức độ nghiêm trọng sự gián đoạn dịch vụ mạnh Telstra cuộc thi họ Kaggle (https://www.kaggle.com/c/telstra-recruiting-network) Bợ dữ liệu có 7381 bản ghi với file dữ liệu gờm trường tḥc tính Mơ hình xây dựng đề tài dự đoán mức độ nghiêm trọng sự gián đoạn dịch vụ mạng Một vài ý về bợ dữ liệu: • Bợ dữ liệu cung cấp khơng có giá trị nào bị thiếu, bị sai • Dữ liệu cần tiền xử lý áp dụng các mô hình dữ liệu có các trường tḥc tính hầu là tḥc tính phân loại • Bợ dữ liệu khá mất cân bằng, có 65% là nhãn 0, 25% là nhãn 1, 10% là nhãn 1.5 Mô hình áp dụng Mô hình sử dụng đề tài là định Cây định là một những phương pháp học tập biết đến nhiều nhất và sử dụng rộng rãi nhất các ứng dụng khai thác dữ liệu Cây định có khái niệm đơn giản, dễ sử dụng, tớc đợ tính toán khá cao và mạnh mẽ với các quy tắc dễ hiểu tạo Cây định xây dựng theo nguyên lý đệ quy, chia để trị từ xuống, dựa việc chia tách tập dữ liệu thành các tập nhỏ tại nút các nút chứa dữ liệu một lớp nhất Việc phân chia dữ liệu tại nút dựa một hàm đánh giá cụ thể, hầu hết các tiêu chí đánh giá đề x́t đều có chung mục tiêu là tới hóa tính đờng nhất lớp mục tiêu cho các dữ liệu đặt nút, các tiêu chí sử dụng phở biến nhất là chỉ sớ entropy, chỉ sớ gini • Chỉ sớ entropy: 𝑝𝑖 là xác suất một dữ liệu tùy ý nút D thuộc lớp đối tượng I, chỉ số entropy tại một nút đại diện cho độ hỗn loạn thông tin tại nút đó: 𝐸(𝐷) = − ∑𝑚 𝑖=1 𝑝𝑖 log 𝑝𝑖 , tiêu chí lựa chọn tḥc tính chia tách tính theo mức giảm entropy hay còn gọi là mức tăng thông tin thu được: 𝐺𝑎𝑖𝑛(𝐴) = 𝐸(𝐷) − 𝐸𝐴 (𝐷) = 𝐸(𝐷) − ∑𝑣𝑗=1 |𝐷𝑗 | |𝐷| × 𝐸(𝐷𝑗 ) (A là tḥc tính chia tách, v là số phân vùng sau chia tách) Mức giảm entropy càng lớn càng tớt • Chỉ số gini: entropy, chỉ số gini đại diện cho mức độ pha tạp thông tin dữ liệu: 𝑔𝑖𝑛𝑖(𝐷) = − ∑𝑛𝑖=1 𝑝𝑖2 với 𝑝𝑖 là tần số tương đối lớp i D Nếu tập dữ liệu D chia tách thành hai tập 𝐷𝑖 𝑣𝑎̀ 𝐷2 , 𝑔𝑖𝑛𝑖𝐴 (𝐷) = |𝐷1 | |𝐷| 𝑔𝑖𝑛𝑖(𝐷1 ) + |𝐷2 | |𝐷| 𝑔𝑖𝑛𝑖(𝐷2 ) là chỉ sớ gini chia tách D dựa tḥc tính A Độ giảm sự pha tạp thông tin theo thuộc tính A: ∆𝑔𝑖𝑛𝑖(𝐴) = 𝑔𝑖𝑛𝑖(𝐷) − 𝑔𝑖𝑛𝑖𝐴 (𝐷) Tḥc tính cung cấp 𝑔𝑖𝑛𝑖𝑠𝑝𝑙𝑖𝑡 (𝐴) nhỏ nhất (hoặc mức giảm sự pha tạp thông tin lớn nhất) chọn để phân chia nút Tập hợp các quy tắc phân tách có thể tìm thấy dọc theo đường dẫn kết nối gốc với một nút lá tạo thành quy tắc phân loại Trong giai đoạn dự đoán, để gán lớp mục tiêu cho một dữ liệu mới, một đường dẫn theo dõi từ nút gốc đến nút lá bằng cách tuân theo chuỗi quy tắc áp dụng cho các giá trị các tḥc tính dữ liệu mới Lớp mục tiêu dự đoán sau trùng khớp với lớp mà nút lá đạt được dán nhãn giai đoạn phát triển Cây định là một mô hình phân lớp tốt, nhiên chúng dễ xảy hiện tượng quá mức (overfitting) có thể có quá nhiều nhánh và nhạy cảm với dữ liệu huấn luyện dẫn đến không tổng quát để dự đoán Để khắc phục, một số quy tắc cắt tỉa đưa • Quy tắc cắt tỉa trước: sử dụng mợt sớ tiêu chí hạn chế sự phát triển xây dựng kích thước nút (nút chứa số lượng dữ liệu đặt một ngưỡng nào đó), đợ tinh khiết (tỷ lệ dữ liệu thuộc cùng một lớp), cải thiện (mức độ giảm sự hỗn loạn hay phá tạp dữ liệu), độ sâu tối đa cây,… Tuy nhiên việc chọn ngưỡng phù hợp cho các quy tắc là khó khăn và đòi hỏi nhiều thử nghiệm • Quy tắc cắt tỉa sau: có những kỹ thuật cắt tỉa sau, áp dụng sau xây dựng hoàn chỉnh một để giảm số lượng phân nhánh và hy vọng cải thiện kết quả mô hình, phương pháp này sử dụng bộ dữ liệu độc lập với tập huấn luyện để xác định cắt tỉa tốt nhất Ưu điểm định: • Làm việc tớt với bợ dữ liệu lớn • Ứng dụng nhiều lĩnh vực khác • Sinh quy tắc dễ hiểu, các bộ luật ứng với nút lá Nhược điểm định: • Khó giải các đề có biến mục tiêu liên tục • Dễ thiên vị với bợ dữ liệu khơng cân bằng • Dễ xảy quá mức (overfitting) Chương 2: Phân tích hệ thống 2.1 Biểu đồ phân cấp chức Biểu đồ phân cấp chức 2.2 Biều đồ luồng dữ liệu 2.2.1 Biều luồng dữ liệu mức ngữ cảnh Biểu đồ luồng dữ liệu mức ngữ cảnh 2.2.2 Biều đồ luồng dữ liệu mức đỉnh Biều đồ luồng dữ liệu mức đỉnh 2.2.3 Biểu đồ luồng dữ liệu mức dưới đỉnh chức xử lý dữ liệu 10 2.2.4 Biểu đồ luồng dữ liệu mức dưới đỉnh chức dự đoán 11 Chương 3: Thiết kế chương trình 3.1 Về mặt dữ liệu Tên trường Diễn giải Type id id một dữ liệu, chỉ thời gian varchar location Vị trí mợt nút mạng varchar event_type Sự kiện xảy tại địa điểm varchar thời gian nào resource_type Tài nguyên phần cứng, sở hạ varchar tầng nút mạng tại vị trí log_feature Tính nhật ký, ghi lại nhật ký varchar hoạt độn nút mạng volume Khối lượng nhật ký int severity_type Cảnh báo gửi về từ nút mạng varchar fault_severity Mức độ nghiêm trọng sự cố int 3.2 Mô hình hệ thống Mô hình hệ thống 12 3.3 Về mặt giao diện 3.3.1 Công nghệ sử dụng Chương trình sử dụng các công nghệ, thư viện Machine Learning để lập trình mơ hình máy học sử dụng ngơn ngữ HTML, CSS, Javascript, Python để lập trình giao diện website • HTML từ viết tắt HyperText Markup Language (ngôn ngữ đánh dấu siêu văn bản) dùng mô tả cấu trúc trang Web tạo loại tài liệu có thể xem trình dụt • CSS (viết tắt Cascading Style Sheets) một ngôn ngữ định dạng sử dụng để mơ tả trình bày trang Web, bao gờm màu sắc, cách bớ trí phơng chữ CSS cho phép chúng hiển thị nợi dung tương thích loại thiết bị có kích thước hình khác nhau, chẳng hạn màn hình lớn, hình nhỏ điện thoại hay máy tính bản • JavaScript mợt ngơn ngữ nhanh nhẹ chạy môi trường máy chủ lưu trữ (ví dụ: trình dụt web), JavaScript có thể kết nối với các đối tượng môi trường để cung cấp kiểm soát chương trình đối với chúng JavaScript cho phép bạn thực hiện những điều phức tạp trang web bản đồ tương tác Javascript hỗ trợ hầu tất cả trình duyệt Firefox, Chrome, chí trình dụt thiết bị di đợng có hỗ trợ • Python mợt ngơn ngữ lập trình thơng dịch (interpreted), hướng đới tượng (object-oriented), một ngôn ngữ bậc cao (high-level) ngữ nghĩa động (dynamic semantics) Python hỗ trợ module gói (packages), khuyến khích chương trình module hóa và tái sử dụng mã Trình thơng dịch Python và thư viện ch̉n mở rợng có sẵn dưới dạng mã ng̀n hoặc dạng nhị phân miễn phí cho tất cả nền tảng 13 có thể phân phới tự Được sử dụng để chạy model tốn • Framework Flask Flask mợt web frameworks, tḥc loại microframework xây dựng bằng ngơn ngữ lập trình Python Flask cho phép bạn xây dựng ứng dụng web từ đơn giản tới phức tạp Nó có thể xây dựng api nhỏ, ứng dụng web chẳng hạn các trang web, blog, trang wiki hoặc một website dựa theo thời gian hay chí mợt trang web thương mại Flask cung cấp cho bạn công cụ, các thư viện công nghệ hỗ trợ bạn làm những công việc 3.3.2 Giao diện sản phẩm Trang DATA: Màn hình quản lý dữ liệu, hiển thị tởng sớ dữ liệu có hệ thớng cần dự đoán, giúp nhà quản lý có nhìn tởng quan về hệ thớng, nhà quản lý có thể xem danh sách dữ liệu với thơng tin id, vị trí, các sự kiện liên quan, tài nguyên sở hạ tầng nút mạng, nhật ký hoạt động nút mạng và loại cảnh báo, ngoài còn có biểu đờ phân bớ từng thơng tin tḥc tính dữ liệu, giúp nhà quản lý có cái nhìn trực quan sinh động s 14 Trang PREDICT: Trang dự đoán: đưa kết quả dự đoán rõ ràng cho từng dữ liệu đầu vào, đưa một số biểu đồ thống kê về mức độ nghiêm trọng và sự gián đoạn nghiêm trọng một số trường thuộc tính 15 16 17 Kết luận Trong bài báo cáo này em trình bày về quy trình phân tích thiết kế hệ thống hỗ trợ dự đoán mức độ nghiệm trọng sự gián đoạn dịch vụ mạng, bao gồm quy trình điều tra khảo sát, mô hình áp dụng, phân tích hệ thớng và thiết kế giao diện Đưa các dự đoán dưới dạng báo cáo trực quan, dễ sử dụng Do những hạn chế nhất định về thời gian, kinh nghiệm nên báo cáo khơng tránh khỏi những sai sót, em rất mong nhận những ý kiến đóng góp chỉnh sửa từ Thầy để báo cáo em hoàn thiện 18 Tài liệu tham khảo [1] Carlo Vercellis, Business Intelligence: Data Mining and Optimization for Decision Making, John Wiley & Sons, 2009 [2] Ramesh Sharda • Dursun Delen • Efraim Turban, Business Intelligence and Analytics: Systems for Decision Support, Laura Dent, 2014 [3] Slide Datamining: Classification [4] Vũ Hữu Tiệp, Machine Learning bản, Diễn đàn machinelearningcoban.com, 2018 19 ... dụng dịch vụ, vấn đề này khá nghiêm trọng có sự cớ xảy Chính vì vậy, việc dự đoán có sự gián đoạn mạng xảy và sự cớ có là mợt sự cớ nghiêm trọng có thể dẫn đến sự... thì sự gián đoạn xảy có nghiêm trọng hay khơng Nhà quản lý quan tâm đến các vị trí có sự gián đoạn xảy ra, nhất là các vị trí xảy sự gián đoạn nghiêm trọng, từ đưa các... ràng cho từng dữ liệu đầu vào, đưa một số biểu đồ thống kê về mức độ nghiêm trọng và sự gián đoạn nghiêm trọng một sớ trường tḥc tính 15 16 17 Kết ḷn Trong bài báo cáo