Chương 1: Giới thiệu tổng quan. Chương này giới thiệu tổng quan về đề tài, mục tiêu nghiên cứu, phương pháp nghiên cứu của đề tài, nội dung nghiêng cứu, kết quả của đề tài và bố cục tổng thể của luận văn. Chương 2: Cơ sở lý thuyết. Chương này trình bày các nội dung lý thuyết liên quan đến đề tài như: khai phá dữ liệu, học máy, các kỹ thuật phân tích dự báo và khung thức dự báo thuê bao rời bỏ nhà mạng.
Chương 3: Phương pháp tiếp cận. Chương này giới thiệu hướng tiếp cận của luận văn. Chương 4: Thực nghiệm. Chương này sẽ trình bày phương pháp hiện thực bài toán dự báo thuê bao rời mạng bằng mô hình cây quyết định tăng cường hai lớp (Two-Class Boosted Decision Tree) bằng hai phương pháp: Phương pháp 1: trên tập dữ liệu thô chưa qua tiền xử lý và trích lọc thuộc tính.
Phương pháp 2: trên tập dữ liệu đã qua tiền xử lý và trích lọc thuộc tính. Đồng thời, đánh giá hiệu suất sau khi áp dụng hai phương pháp. Chương 5: Kết luận và Hướng phát triển. Chương này trình bày các kết luận quan trọng, các công việc đã làm được và hướng phát triển của luận văn.
8 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Để giải quyết bài toán xây dựng mô hình dự đoán thuê bao rời mạng thì chúng tôi cần các kiến thức tổng quan và chuyên sâu về khai phá dữ liệu (Data mining) và học máy (Machine learning), các kỹ thuật khai phá dữ liệu, các mô hình máy học mà trong luận văn hướng đến kỹ thuật mô hình cây quyết định để dự báo, các kỹ thuật lựa chọn thuộc tính và trích lọc thuộc tính. Chương này khảo sát các kiến thức liên quan đến cách thức giải bài toán dự báo thuê bao rời mạng dựa vào máy học và đánh giá các ưu, khuyết điểm của các phương pháp đó. Các khái niệm cơ bản về khai phá dữ liệu, học máy, các kỹ thuật xử lý dữ liệu lớn và phân tích dự báo 2. Khái niệm khai phá dữ liệu và học máy Khai phá dữ liệu là quá trình khảo sát và phân tích khối lượng lớn các dữ liệu được lưu trữ trong các cơ sở dữ liệu, kho dữ liệu… để từ đó trích xuất ra các thông tin quan trọng, có giá trị tiềm ẩn bên trong.
Do nhu cầu nghiệp vụ cần có cách nhìn thông tin trên quy mô toàn hệ thống và phải ứng dụng được để tạo tiền đề cho việc khai phá dữ liệu áp dụng vào doanh nghiệp. Các dữ liệu này được thu từ nhiều nguồn, đa số là từ các phần mềm nghiệp vụ như: phần mềm tài chính kế toán, các hệ thống điều hành sản xuất kinh doanh của doanh nghiệp, các hệ thống quản lý khách hàng… Đây là khối dữ liệu khổng lồ nhưng những thông tin mà nó thể hiện ra thì chưa được tinh chỉnh, rất phức tạp, chưa có cấu trúc ổn định và ít thông tin được hiển thị rõ rệt đối với người dùng. Kích thước của khối dữ liệu khổng lồ đó cũng tăng rất nhanh, chiếm nhiều dung lượng và tài nguyên lưu trữ. Khai phá dữ liệu sẽ giúp trích xuất ra các mẫu điển hình có giá trị và biến chúng thành những tri thức hữu ích.
Quá trình này gồm một số bước được thể hiện trong Hình 2. Các bước xây dựng một hệ thống KPDL Ý nghĩa cụ thể của các bước như sau: - Lựa chọn dữ liệu liên quan đến bài toán quan tâm. - Tiền xử lý dữ liệu, làm sạch dữ liệu - Chuyển đổi dữ liệu về dạng phù hợp thuận lợi cho việc khai phá. - KPDL, trích xuất ra các mẫu dữ liệu (mô hình).
- Đánh giá mẫu. - Sử dụng tri thức khai phá được. Các khai niệm về xử lý dữ liệu lớn 2. Xử lý dữ liệu phân tán Xử lý dữ liệu phân tán có liên quan chặt chẽ với xử lý dữ liệu song song trong đó áp dụng cùng một nguyên tắc "chia để trị".
Tuy nhiên, xử lý dữ liệu phân tán luôn đạt được thông qua các máy riêng biệt được nối mạng với nhau thành một cụm.2, một tác vụ được chia thành ba nhiệm vụ sau đó được thực hiện trên ba máy khác nhau chia sẻ một công tắc vật lý [10]. Xử lý dữ liệu Hadoop Hadoop là nền tảng mã nguồn mở để lưu trữ dữ liệu quy mô lớn và xử lý dữ liệu tương thích với phần cứng. Hadoop đã trở thành một nền tảng công nghiệp thực sự cho các giải pháp BigData. Nó có thể được sử dụng như một công cụ trích xuất, chuyển đổi và lưu trữ dữ liệu ETL (Extract, Tranformation, Loading).
Ngoài ra còn là một công cụ phân tích để xử lý một lượng lớn dữ liệu có cấu trúc, bán 10 cấu trúc và không cấu trúc. Hadoop thiết lập cơ chế MapReduce để xử lý dữ liệu [10]. Xử lý dữ liệu Workload Việc xử lý dữ liệu trong BigData được phân biệt theo khối lượng và tính chất của dữ liệu được xử lý trong một khoảng thời gian nhất định. Hiện có 02 hình thức xử lý dữ liệu trong BigData: - Xử lý dữ liệu theo lô (batch processing), còn được gọi là xử lý ngoại tuyến (offline), là việc xử lý dữ liệu với số lượng lớn, có độ trễ xử lý cao.
Hình thức xử lý này thường liên quan đến một lượng lớn dữ liệu với việc đọc/ghi tuần tự hoặc chỉ đọc/chỉ ghi. Các truy vấn có thể phức tạp và liên quan đến nhiều phép nối. Các hệ thống chạy cơ chế OLAP như BI hay các công cụ phân tích được định hướng theo lô vì chúng là các tác vụ đòi hỏi nhiều khả năng đọc với khối lượng dữ liệu lớn. - Xử lý giao dịch (transaction processing) còn được gọi là xử lý trực tuyến (online) là xử lý tương tác dữ liệu có độ trễ thấp.
Hình thức xử lý dữ liệu này liên quan đến một lượng nhỏ dữ liệu với việc đọc và ghi ngẫu nhiên. Khối lượng công việc giao dịch bao gồm đọc/ghi ngẫu nhiên có số phép nối (joins) ít hơn so với xử lý dữ liệu theo lô [5]. Xử lý dữ liệu theo cụm (cluster) Theo cùng cách mà các cụm cung cấp hỗ trợ cần thiết để tạo ra các giải pháp lưu trữ có thể mở rộng theo chiều ngang, các cụm cũng cung cấp cơ chế cho phép xử lý dữ liệu phân tán với khả năng mở rộng tuyến tính. Vì các cụm có khả năng mở rộng cao, chúng cung cấp một môi trường lý tưởng để xử lý Dữ liệu lớn vì các bộ dữ liệu lớn có thể được chia thành các bộ dữ liệu nhỏ hơn và sau đó được xử lý song song theo cách phân tán.
Khi tận dụng một cụm, bộ dữ liệu BigData có thể là chế độ hàng loạt (batch) hoặc chế độ thời gian thực (real time). Một lợi ích bổ sung của các cụm là chúng cung cấp dự phòng và khả năng chịu lỗi vốn có, vì chúng bao gồm các nút riêng biệt về mặt vật lý. Dự phòng và khả năng chịu lỗi cho phép xử lý và phân tích khả năng phục hồi xảy ra nếu xảy ra lỗi mạng hoặc 11 nút. Do sự biến động của nhu cầu xử lý được đặt trong môi trường Dữ liệu lớn, tận dụng các dịch vụ cơ sở hạ tầng máy chủ đám mây hoặc môi trường phân tích sẵn sàng làm xương sống của cụm, có thể cảm nhận được do tính linh hoạt và mô hình tính toán dựa trên tiện ích của nó [10].
Mô hình xử lý dữ liệu theo cụm 2.3 Các khái niệm phân tích dữ liệu và các loại hình phân tích dữ liệu Phân tích dữ liệu (Data Analysis) là quá trình xử lý dữ liệu để tìm ra các sự kiện, các mối quan hệ, mẫu (patterns) dữ liệu, hiểu biết dữ liệu và xu thế. Mục tiêu của phân tích dữ liệu là để hỗ trợ cho việc ra quyết định tốt hơn. Xử lý phân tích dữ liệu (Data Analytics) là một thuật ngữ rộng hơn khái niệm phân tích dữ liệu (Data Analysis). Quá trình này là việc quản lý vòng đời dữ liệu, bao gồm: Thu thập dữ liệu; Làm sạch dữ liệu; Tổ chức dữ liệu; Lưu trữ dữ liệu; Phân tích và quản lý dữ liệu.
Trong lĩnh vực BigData, phân tích dữ liệu còn cho phép phát triển các phương pháp dựa trên nền tảng và công nghệ phân tán có khả năng mở rộng cao. Nó có khả năng phân tích một khối lượng dữ liệu lớn từ các nguồn khác nhau. Giá trị và đô phức tạp tăng từ phân tích mô tả đến đề xuất Phân tích dữ liệu cho phép ra quyết định dựa trên dữ liệu thực tế có khoa học, nó không chỉ đơn thuần dựa vào kinh nghiệm và trực giác trong quá khứ. Có thể phân thành 04 loại phân tích dữ liệu: Phân tích mô tả (descriptive analytics); Phân tích chẩn đoán (diagnostic analytics); Phân tích dự báo (predictive analytics); Phân tích đề xuất (prescriptive analytics) [10].
Phân tích mô tả: Các thống kê cho thấy rằng có khoảng 80% kết quả phân tích được dưới dạng phân tích mô tả. Đây là dạng phân tích có giá trị thấp nhất, chỉ cần yêu cầu kỹ năng phân tích tương đối cơ bản. Phân tích mô tả được thực hiện để trả lời các sự kiện đã xảy ra, các câu hỏi mẫu để phân tích mô tả có dạng như sau: - Doanh số bán hàng trong 12 tháng đã qua là bao nhiêu? - Hoa hồng hàng tháng kiếm được từ mỗi đại lý bán hàng? Phân tích mô tả thường được thực hiện thông qua báo cáo hoặc dưới dạng bảng Dashboard (đồ thị hoặc biểu đồ). Các truy vấn được thực hiện từ kho dữ liệu của doanh nghiệp.
Ví dụ như hệ thống quản lý khách hàng CRM, hệ thống hoạch định nguồn lực ERP [10]. Phân tích chẩn đoán: Phân tích chẩn đoán nhằm xác định nguyên nhân của hiện tượng xảy ra trong quá khứ bằng cách sử dụng các câu hỏi tập trung vào lý do xảy ra sự kiện. Các dạng câu hỏi mẫu như: - Tại sao doanh thu Quý 2 thấp hơn doanh thu Quý 1. - Tại sao có tỷ lệ gia tăng sự cố mạng trong ba tháng qua.
13 Phân tích chẩn đoán cung cấp nhiều thông tin giá trị hơn phân tích mô tả, do vậy nó yêu cầu kỹ năng phân tích cao hơn. Kết quả phân tích chẩn đoán thông qua các công cụ trực quan giúp người dùng xác định được xu thế. Các truy vấn dữ liệu trong phân tích chẩn đoán cũng phức tạp hơn so với phân tích mô tả, nó được thực hiện trên dữ liệu đa chiều được lưu giữ trong các hệ thống phân tích [10]. Phân tích dự báo (dự đoán): Phân tích dự đoán dùng để xác định kết quả của một sự kiện nào đó sẽ xảy ra trong tương lai.