Luận văn Tổ chức và tích hợp hệ thống phân tích dữ liệu lớn phục vụ công tác dự báo trong viễn thông

LỜI CẢM ƠN.i

LỜI CAM ĐOAN.i

MỤC LỤC .i

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT .iv

DANH MỤC CÁC BẢNG.i

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ .iii

MỞ ĐẦU .1

CHƯƠNG 1. TỔNG QUAN .5

1.1. CÁC KHÁI NIỆM CƠ BẢN .5

1.1.1. Khái niệm chung về dữ liệu lớn.5

1.1.2. Các khái niệm lưu trữ dữ liệu lớn.6

1.1.3 Các khái niệm về xử lý dữ liệu lớn.10

1.1.4. Cái 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.13

1.2. Hệ thống phân tích dữ liệu lớn.17

1.2.1. Công nghệ lưu trữ dữ liệu trong BigData.17

1.2.1.1. Công nghệ lưu trữ trên đĩa cứng .17

1.2.1.2. Công nghệ lưu trữ trong bộ nhớ (In-Memory Databases).19

1.2.2. Xử lý dữ liệu trong BigData .22

1.2.2.1. Xử lý dữ liệu với mô hình Map-Reduce .22

1.2.2.2. Các tác vụ Map và Reduce.23

1.2.3. Kỹ thuật phân tích bigdata hiện nay. .25

1.3. Các BÀI TOÁN PHÂN TÍCH DỰ BÁO.28

1.3.1. Bài toán phân tích dự báo .28

1.3.2. Các mô hình dự báo cơ bản. .28

1.3.2.1. Mô hình dự báo dựa trên thuật toán cây quyết định: .28

1.3.2.2. Mô hình dự báo Gradient Boosting.30

1.3.3. Các kỹ thuật phân tích dự báo .31

1.3.3.1. Tạo biến đặc trưng.31

1.3.3.2. Kỹ thuật lựa chọn đặc trưng .32

1.3.3.3. Huấn luyện và xác thực trong các mô hình dự báo.34

1.3.3.4. Đánh giá mô hình dự báo .35

1.3.4. Giới thiệu công cụ phân tích Rapidminer.42

CHƯƠNG 2.44

pdf114 trang | Chia sẻ: honganh20 | Ngày: 21/02/2022 | Lượt xem: 333 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Luận văn Tổ chức và tích hợp hệ thống phân tích dữ liệu lớn phục vụ công tác dự báo trong viễn thông, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ợc đưa vào giai đoạn trích chọn thuộc tính (feature selection) - đây mới là giai đoạn nhằm mục đích giảm tính chiều của không gian thuộc tính. Mặc dù quá trình tạo biến không phải giảm kích thước, nhưng chắc chắn phải cẩn thận để không tạo ra một số lượng lớn các thuộc tính mới [13]. Để minh họa tầm quan trọng của việc tạo biến, hãy xem xét ví dụ sau trong Bảng 1.1. Ở đây chúng ta có thể thấy thuộc tính ban đầu Date và thuộc tính phụ thuộc Visitors. Đây là hai thuộc tính biểu diễn ngày và số lượng khách truy cập tương ứng. Nếu chỉ nhìn vào các thuộc tính này, dường như không có một quan hệ rõ ràng nào để dự đoán dựa vào các thuộc tính phụ thuộc. Với thuộc tính tạo mới, chúng tôi có thể trích xuất và phân loại ngày nào, được hiển thị trong cột IsWeekendDay. Điều này cho chúng ta biết ngày đó có phải là một ngày cuối tuần hay không. Bây giờ chúng ta có thể thấy rõ ràng rằng số lượng khách truy cập vào ngày cuối tuần cao hơn đáng kể so với các ngày trong tuần. Bảng 1.1. Các thuộc tính ví dụ Ngày và Khách truy cập và thuộc tính được trích xuất IsWeek-endDayfDayg 32 Một tình huống khác mà việc tạo biến có thể cải thiện hiệu suất là khi có sự tương tác thuộc tính. Trong đó, hai (hoặc nhiều) thuộc tính không liên quan hoặc tương quan với thuộc tính phụ thuộc của riêng chúng, nhưng nếu cùng nhau chúng có ảnh hưởng (cao) đến thuộc tính phụ thuộc. Ví dụ: lấy thuộc tính giá cả và chất lượng của sản phẩm. Nếu tách biệt, họ sẽ không đưa ra nhiều dấu hiệu cho thấy một sản phẩm được mua thường xuyên. Nhưng nếu kết hợp thi chúng có mối tương quan nhiều đến việc mua sản phẩm. Nếu giá thấp và chất lượng cao, thì sản phẩm sẽ được mua thường xuyên. Tuy nhiên, giá thấp hoặc chất lượng cao mà không biết giá trị khác không thể đảm bảo rằng sản phẩm sẽ được mua thường xuyên. Nếu cả giá cả và chất lượng đều thấp thì sản phẩm sẽ không được nhiều khách hàng mua. Điều tương tự có thể được nói khi cả giá cả và chất lượng đều cao. 1.3.3.2. Kỹ thuật lựa chọn đặc trưng Lựa chọn đặc trưng (feature selection) hay còn gọi là trích chọn thuộc tính là nhiệm vụ rất quan trọng giai đoạn tiền xử lý dữ liệu khi triển khai các mô hình khai phá dữ liệu. Một vấn đề gặp phải là các dataset dùng để xây dựng các Data Mining Models thường chứa nhiều thông tin không cần thiết (thậm chí gây nhiễu) cho việc xây dựng mô hình. Chẳn hạn, một dataset gồm hàng trăm thuộc tính dùng để mô tả về khách hàng của một doanh nghiệp được thu thập, tuy nhiên khi xây dựng một Data mining model nào đó chỉ cần khoảng 50 thuộc tính từ hàng trăm thuộc tính đó. Nếu ta sử dụng tất cả các thuộc tính này của khách hàng để xây dựng mô hình thì ta cần nhiều CPU, nhiều bộ nhớ trong quá trình Training model, thậm chí các thuộc tính không cần thiết đó còn làm giảm độ chính xác của mô hình và gây khó khăn trong việc phát hiện tri thức [13]. Các phương pháp trích chọn thuộc tính thường tính trọng số (score) của các thuộc tính và sau đó chỉ chọn các thuộc tính có trọng số tốt nhất để sử dụng cho mô hình. Các phương pháp này cho phép bạn hiệu chỉnh ngưỡng (threshold) để lấy ra các thuộc tính có Score trên ngưỡng cho phép. Quá trình trích chọn thuộc tính luôn được thực hiện trước quá trình Training Model. 33 Có rất nhiều phương pháp để lựa chọn thuộc tính tùy thuộc vào cấu trúc của dữ liệu dùng cho mô hình và thuật toán được dùng để xây dựng mô hình. Sau đây là một số phương pháp phổ biến dùng trong trích chọn thuộc tính: - Interestingness score: Được sử dụng để xếp hạng (rank) các thuộc tính đối với các thuộc tính có kiểu dữ liệu liên tục (continuous). Một thuộc tính được xem là Interesting nếu nó mang một vài thông tin hữu ích. Để đo lường mức độ interestingness, người ta thường dựa vào entropy. Một thuộc tính với phân bố ngẫu nhiên có entropy cao hơn và có information gain (độ lợi thông tin) thấp hơn vì vậy các thuộc tính đó gọi là less interesting. Entropy của một thuộc tính nào đó sẽ được so sánh với entropy của tất cả các thuộc tính còn lại theo công thức sau: Interestingness(Attr) = - (m - Entropy(Attr))*(m - Entropy(Attr)) Trong đó: Attr = Attribute là thuộc tính, m được gọi là entropy trung tâm (Central entropy- entropy của toàn bộ tập thuộc tính) - Shannon's Entropy: Được sử dụng đối với các dữ liệu kiểu rời rạc (discretized data). Shannon's entropy đo lường độ bất định (uncertainty) của biến ngẫu nhiên đối với một kết quả cụ thể (particular outcome). Ví dụ, entropy của việc tung một đồng xu có thể biểu diễn bằng một hàm của xác suất của khả năng xuất hiện mặt sấp hay ngửa. Shannon's entropy được tính theo công thức sau: H(X) = -∑ P(xi) log(P(xi)) Ngoài interestingness score và Shannon's entropy, một số phương pháp khác cũng thường được sử dụng trong lựa chọn thuộc tính như Bayesian with K2 Prior, Bayesian Dirichlet Equivalent with Uniform Prior. Bảng 1.2 dưới đây là các phương pháp trích chọn thuộc tính được triển khai. Bảng 1.2. Các phương pháp trích chọn thuộc tính 34 1.3.3.3. Huấn luyện và xác thực trong các mô hình dự báo Phân chia training set/validation set là một trong những bước quan trọng nhất của một mô hình dự báo. Để làm điều này chúng ta thường sử dụng các thư việc có sẵn để phân chia ngẫu nhiên 2 tập dữ liệu này dựa trên một tỉ lệ nào đó. * Vai trò của mô hình và từng tập dữ liệu: Hình 1.26. Vai trò của mô hình và từng tập dữ liệu - Training set Training set bao gồm dữ liệu đầu vào và nhãn. Với training set, mô hình có thể nhìn thấy cả dữ liệu và nhãn. Nó sử dụng dữ liệu này để tối ưu loss function thông qua việc điều chỉnh parameter. - Validation set Validation set cũng có dữ liệu giống như traning set. Nhưng mô hình không hề nhìn thấy nhãn. Mô hình đơn thuần dùng dữ liệu đầu vào của validation set để tính toán ra output. Sau đó nó so sánh với nhãn để tính loss function. Parameter hoàn toàn không được điều chỉnh ở bước này. Validation set là bộ dữ liệu để chúng ta giám sát mô hình. Chúng ta sử dụng kết quả của mô hình ở training set và validation set để đưa ra các quyết định như điều chỉnh hyperparameter, bổ sung thêm dữ liệu... Mô hình cần phải dự đoán tốt ở validation set. Tức là nó phải làm tốt với những dữ liệu mà nó chưa từng nhìn thấy. - Test set Test set chỉ có dữ liệu đầu vào mà không có nhãn. Nó giống như những dữ liệu đến từ tương lai mà cả mô hình và chúng ta đều không biết được kết quả. Hiệu quả của mô hình khi dự đoán test set là thước đo xem mô hình có thực sự tốt trong thực tế hay không. Nếu mô hình chỉ làm tốt ở training set và validaiton set mà không tốt ở test set thì việc sử dụng mô hình trong thực tế không có nhiều ý nghĩa. 35 1.3.3.4. Đánh giá mô hình dự báo Làm gì cũng vậy, đều có công đoạn mang tên là đánh giá. Dự báo cũng không có ngoại lệ, khi xây dựng mô hình(model) có rất nhiều mô hình ta có thể sử dụng. Câu hỏi đặt ra là model này có tốt không. Một model tốt sẽ cho kết quả chính xác khi dự đoán kết quả với dữ liệu mới. Nên việc đánh giá model là một bước rất quan trọng để có thể xác định model có thể sử dụng được không. Từ đó có thể tiếp tục tiến hành điều chỉnh tham số (tuning parameter), chọn lựa lại thuộc tính (feature selection) hay sử dụng mô hình khác Không có model nào là tốt nhất với tất cả các hoàn cảnh, nó phụ thuộc vào đặc trưng của model, đặc trưng của dữ liệu, nên việc thử data của mình trên nhiều loại model là cần thiết. Để đánh giá mô hình, có 2 khái niệm rất quan trọng chính là Overfitting và Underfit. * Khái niệm Overfitting, Underfitting: Hình 1.27. Overfitting, Underfitting Như trên hình 1.27 (bài toán đang phân loại O và X), bạn có thể dùng mô hình Logistic Regression để giải quyết. Theo thứ tự từ trái sang phải lần lượt là ví dụ về Underfitting, bình thường và Overfitting. - Trong trường hợp Underfitting, model quá đơn giản nên rất nhiều X không được phân loại nên độ chính xác ngay cả trên tập Training Data rất tệ. - Ngược lại với trường hợp Overfitting thì khi nhìn vào hình, bạn có thể thấy model lại quá phức tạp, mô tả cả noise data (2 dấu X nằm trong phần O) nên độ chính xác trên tập Training là 100% nhưng thực tế với data mới (không có trong tập Training Data) thì độ chính xác rất tồi tệ. Do vậy 1 model lý tưởng là model không quá đơn giản, không quá phức tạp và không dễ bị ảnh hưởng do nhiễu. 36 * Phương pháp đánh giá Cross Validation: Đầu tiên phải kể đến phương pháp cross validation, được đánh giá là phương pháp nổi tiếng nhất. Thông thường chúng ta chia data thành 2 phần, Training Data và Test Data. Tiến hành dùng Training Data để tạo model, dùng Test Data để dự đoán rồi xác định tỷ lệ đoán thành công. Thông thường tỷ lệ khi chia data Training: Test = 70:30 Tuy nhiên, có trường hợp một model cho cross validation tốt nhưng áp dụng với data mới thì kết quả lại không được như ý muốn. Giả dụ trường hợp Overfitting, là hiện tượng mô hình tìm được quá khớp với dữ liệu training. Khớp quá nên mô hình có xu hướng mô tả cả nhiễu, thành ra khi cho test data vào toạch vô số kể. Thường xảy ra khi lượng data quá nhỏ so với độ phức tạp của model. Độ phức tạp của mô hình có thể được coi là bậc của đa thức cần tìm. Tóm lại, việc chia data làm 2 phần Training Data và Test Data thì vẫn chưa thể đưa ra kết luận chính xác cho model được. Vậy nên chúng ta khắc phục bằng cách sau:  Ở bước chia dữ liệu, không chỉ chia làm 2 phần Training, Test mà chia thêm 1 phần là cross validation. Tỷ lệ thông thường: 60:20:20.  Sử dụng Training Data để tìm tham số và tạo mô hình.  Sử dụng Cross validation để đánh giá độ chính xác của mô hình. Nếu độ chính xác thấp, điều chỉnh tham số để nâng cao độ chính xác của mô hình.  Sau khi thu được mô hình cuối cùng thì tiến hành đánh giá độ chính xác với Test data. * Phương pháp sử dụng Precision & Recall (Confusion Matrix): Cách đánh giá này thường được áp dụng cho các bài toán phân lớp có hai lớp dữ liệu. Cụ thể hơn, trong hai lớp dữ liệu này có một lớp nghiêm trọng hơn lớp kia và cần được dự đoán chính xác. Hình 1.28. Confusion Matrix 37 Một ví dụ như việc xác định mail spam, việc nhầm mail quan trọng thành mail spam nguy hiểm hơn là bỏ sót mail spam. Trong những bài toán này, người ta thường định nghĩa lớp dữ liệu quan trọng cần được xác định đúng là lớp Positive (P-dương tính), lớp còn lại được gọi là Negative (N-âm tính). Ta định nghĩa True Positive (TP), False Positive (FP), True Negative (TN), False Negative (FN) dựa trên confusion matrix như trên. Tỷ lệ chính xác (Precision) và tỷ lệ tái hiện (Recall) được tính theo công thức: Trong đó, tỷ lệ chính xác (Precision) và tỷ lệ tái hiện (Recall) có giá trị càng cao, các tốt [17]. * Phương pháp đánh giá Bias & Variance: Như đã đề cập, một mô hình lý tưởng là mô hình có cả Training Set, Cross Validation Set, Test Set có độ lỗi thấp. Lúc này mô hình được xem là Underfit hay còn gọi là High Bias. Trường hợp mô hình có Training Set lỗi thấp nhưng trên Cross Validation, Test Set lỗi lớn thì được gọi là Overfit hoặc High variance. Lỗi của một mô hình được tính theo công thức sau: Trong đó, hθ(x) là giá trị dự báo, m là số data samples, θ là tham số (parameter) để training, y là giá trị thực tế tại các data point. Bài toán đặt ra ở đây là tìm kiếm giá trị tham số θ sao cho J(θ) nhỏ nhất nhưng để không xảy ra tình trạng Overfitting. Để thực hiện chúng ta sẽ sử dụng thêm tham số chuẩn hóa λ (regularization parameter) đưa vào công thức sau: Bằng cách này sẽ tránh được trường hợp giá trị θ lớn sẽ khó tìm được J(θ) nhỏ nhất, sẽ tránh được overfitting (high variance). Câu hỏi đặt ra là lựa chọn λ như thế nào là hợp lý? Với câu hỏi trên, giả sử trục tung là độ lỗi, trục hoành là λ, biểu diễn trên đồ thị ta sẽ được câu trả lời. 38 Hình 1.29. Phương pháp Bias & Variance Do λ nhỏ quá thì sẽ bị overfitting (high variance), Jtrain(θ) của Training Data sẽ nhỏ, độ lỗi Jcv của Cross Validation Set trở nên lớn. Ngược lại λ lớn quá model sẽ bị Underfit hoặc high bias. Cả 2 độ lỗi của Training Data, Cross Validation Set sẽ cùng trở nên lớn. Do vậy chọn λ tại điểm khoanh đỏ sẽ cho JCV(θ) nhỏ nhất. Tóm lại, qua các phân tích nói trên để tránh được các hiện tượng Underfitting và Overfitting, chúng ta có những phương pháp sau: Phương pháp khắc phục Underfitting (High bias):  Tìm kiếm biến đặc trưng (feature) khác.  Thêm vào các đặc trưng dạng (x21, x22, x1x2)  Giảm tham số chuẩn hóa λ. Phương pháp khắc phục Overfitting (High variance)  Tăng số lượng dữ liệu Training Data  Giảm số lượng biến đặc trưng (feature)  Tăng độ lớn của tham số chuẩn hóa λ Như biểu đồ trên, khi High Variance thì độ lỗi trên tập train sẽ thấp nhưng khi đó trên Test Data độ lỗi lớn chính là hiện tượng Overfitting. Ngược lại khi High Bias thì độ lỗi trên Training Data lớn và đương nhiên độ lỗi trên Test Data cũng sẽ lớn. Cũng chính là hiện tượng Underfitting [17]. * Phương pháp đường cong AUC-ROC: Trong lĩnh vực Machine Learning, việc tính toán hiệu suất của mô hình là một điều rất quan trọng. Trong các bài toán phân loại, ngoài phương pháp phổ biến là sử dụng Confusion Matrix thì còn phải nhắc đến một phương pháp rất quan trọng khác, đó là đường cong AUC – ROC [17] AUC - ROC là một phương pháp tính toán hiệu suất của một mô hình phân loại theo các ngưỡng phân loại khác nhau. Giả sử với bài toán phân loại nhị phân (2 lớp) sử dụng hồi quy logistic (logistic regression), việc chọn các ngưỡng phân loại [0...1] khác nhau sẽ ảnh hưởng đến khả năng phân loại của mô hình và ta cần 39 tính toán được mức độ ảnh hưởng của các ngưỡng. AUC là từ viết tắt của Area Under the Curve còn ROC viết tắt của Receiver Operating Characteristics. ROC là một đường cong biểu diễn xác suất và AUC biểu diễn mức độ phân loại của mô hình. AUC-ROC còn được biết đến dưới cái tên AUROC (Area Under the Receiver Operating Characteristics) [19]. Ý nghĩa của AUROC có thể diễn giải như sau: Là xác suất rằng một mẫu dương tính được lấy ngẫu nhiên sẽ được xếp hạng cao hơn một mẫu âm tính được lấy ngẫu nhiên. Biểu diễn theo công thức, ta có AUC = P(score(x+) > score(x-)). Chỉ số AUC càng cao thì mô hình càng chính xác trong việc phân loại các lớp. Hình 1.30. Phương pháp đường cong AUC-ROC Đường cong ROC biểu diễn các cặp chỉ số (TPR, FPR) tại mỗi ngưỡng với TPR là trục tục và FPR là trục hoành. Các chỉ số sử dụng trong AUC – ROC bao gồm:  TPR (True Positive Rate/Sentivity/Recall): Biểu diễn tỷ lệ phân loại chính xác các mẫu dương tính trên tất cả các mẫu dương tính, được tính theo công thức: TPR càng cao thì các mẫu dương tính càng được phân loại chính xác.  Specificity: Biểu diễn tỷ lệ phân loại chính xác các mẫu âm tính trên tất cả các mâu âm tính, được tính theo công thức:  FPR (False Positive Rate/Fall-out): Biểu diễn tỷ lệ gắn nhãn sai các mẫu âm tính thành dương tính trên tất cả các mẫu âm tính, được tính theo công thức: 40 Có thể thấy Specificity tỷ lệ nghịch với FPR. FPR càng cao thì Specificity càng giảm và số lượng các mẫu âm tính bị gắn nhãn sai càng lớn. Đây chính là các chỉ số dùng để tính toán hiệu suất phân loại của mô hình. Để hợp chúng lại thành 1 chỉ số duy nhất, ta sử dụng đường cong ROC để hiển thị từng cặp (TPR, FPR) cho các ngưỡng khác nhau với mỗi điểm trên đường cong biểu diễn 1 cặp (TPR, FPR) cho 1 ngưỡng, sau đó tính chỉ số AUC cho đường cong này. Chỉ số AUC chính là con số thể hiện hiệu suất phân loại của mô hình. Sentivity và Specificity là 2 chỉ số tỷ lệ nghịch với nhau. Khi chỉ số Sentivity tăng thì chỉ số Specificity giảm và ngược lại. Khi ta tăng ngưỡng phân loại, số lượng mẫu được gắn nhãn âm tính sẽ tăng lên, từ đó chỉ số Specificity tăng và chỉ số Sentivity giảm. Điều ngược lại cũng đúng. Vì Sentivity/TFP và FPR đều tỉ lệ nghịch với Specificity nên TFP tỷ lệ thuận với FPR. - Đánh giá mô hình qua chỉ số AUC: Như đã nói ở trên, chỉ số AUC càng gần 1 thì mô hình càng phân loại chính xác. AUC càng gần 0.5 thì hiệu suất phân loại càng tệ còn nếu gần 0 thì mô hình sẽ phân loại ngược kết quả (phân loại dương tính thành âm tính và ngược lại). Giờ ta sẽ biểu diễn các trường hợp này qua các đồ thị trong hình 1.31 – 1.34. Đường cong màu đỏ biểu diễn phân phối của các mẫu dương tính, đường cong màu xanh lá biểu diễn phân phối của các mẫu âm tính.  Trường hợp 1 - Hình 1.31: Đây là trường hợp tốt nhất. Mô hình phân loại hoàn toàn chính xác khi 2 đường cong không chồng lên nhau. Tuy nhiên trường hợp này rất khó xảy ra và chỉ tồn tại trên lý thuyết. Hình 1.31. Trường hợp tốt nhất khi 2 đường cong không chồng lên nhau.  Trường hợp 2 – Hình 1.32: Khi 2 đường cong chồng lên nhau, việc phân loại sẽ xảy ra 2 dạng lỗi đó là FP (Type 1 Error) và FN (Type 2 Error). Ta có thể thay đổi giá trị của 2 chỉ số lỗi này bằng cách thay đổi ngưỡng. Có 41 thể thấy đường cong ROC đã hạ xuống một chút, tuy nhiên nó vẫn nằm ở góc trên bên trái của đồ thị, tức là hiệu suất phân loại vẫn ổn định. Hình 1.32. Trường hợp khi 2 đường cong có chồng lên nhau.  Trường hợp 3 – Hình 1.33: Đây là trường hợp tệ nhất. Mô hình hoàn toàn không có khả năng phân loại giữa 2 lớp. Đường cong ROC ở trường hợp này là một đường thẳng tạo với Ox một góc 45 độ, biểu diễn một mô hình phân loại một cách ngẫu nhiên. Mô hình phân loại ngẫu nhiên thường được sử dụng như một đường cơ sở để so sánh giữa các mô hình. Hình 1.33. Trường hợp tệ nhất khi 2 đường cong hoàn toàn chồng lên nhau.  Trường hợp 4 - Hình 1.34: Khi AUC xâp xỉ 0, mô hình phân loại ngược hoàn toàn 2 lớp với việc phân loại âm tính thành dương tính - dương tính thành âm tính. Để sửa điều này ta chỉ cần đảo ngược đầu ra của mô hình. Hình 1.34. Trường hợp AUC xấp xỉ 0. 42 1.3.4. Giới thiệu công cụ phân tích Rapidminer Rapid Miner là một nền tảng phần mềm khoa học dữ liệu cung cấp một môi trường tích hợp để chuẩn bị dữ liệu, học máy, học sâu, khai thác văn bản và phân tích dự đoán. Đây là một trong những hệ thống mã nguồn mở hàng đầu cho khai thác dữ liệu. Chương trình được viết hoàn toàn bằng ngôn ngữ lập trình Java. Chương trình cung cấp một tùy chọn để thử xung quanh với một số lượng lớn các toán tử tùy ý có thể lồng được chi tiết trong các tệp XML và được thực hiện với sự can thiệp của người dùng đồ họa của người khai thác nhanh. Rapidminer là một mã nguồn mở, là một môi trường cho Machine learning và Data mining và được viết bằng ngôn ngữ lập trình Java. Chúng sử dụng mô hình Client/Server với máy chủ là on-premise hoặc public cloud hoặc private cloud [6]. Rapidminer cung cấp các lược đồ Learning Schemas, các mô hình và các thuật toán, và có thể được mở rộng bằng ngôn ngữ R và Python. Các thuật toán trong Data mining được chia thành 2 loại: - Thuật toán Learning được giám sát: Là các thuật toán yêu cầu đã có đầu ra Output (hoặc gọi là Label hay Target). Một số mô hình thuộc thuật toán này có thể kể đến như: Naïve Bayes, cây quyết định (Decision Tree), mạng thần kinh (Neural Networks), SVM (Support Vector Machine), mô hình hồi quy (Logistic Regression), [19]... - Thuật toán Learning không được giám sát: Là các thuật toán không bắt buộc phải biết trước đầu ra Output nhưng có thể tìm kiếm các khuôn mẫu hoặc các xu hướng mà không có Label hoặc Target, như mô hình K-Mean Clustering, Anomaly Detection, Association Mining. Với Rapidminer, có thể giúp bạn: - Tải và chuyển đổi dữ liệu (Extract, Transform, Load (ETL)) - Xử lý dữ liệu và trực quan dữ liệu - Xây dựng các mô hình dự báo và phân tích thống kê - Đánh giá và triển khai dữ liệu * Một số thuật ngữ trong Rapidminer:  Thuộc tính (Attribute): mô tả thông tin của các yếu tố trong 1 kịch bản. Thuộc tính là các cột của bảng dữ liệu. Ví dụ: giới tính, độ tuổi, phương thức thanh toán, mức độ tương tác, churn (mất khách hàng)  Tập dữ liệu (Data set): Training set được sử dụng để khám phá ra mối quan hệ và các mô hình đào tạo. Test set là dữ liệu được sử dụng để kiểm tra độ 43 chính xác và ý nghĩa của mô hình dự báo (được phát hiện bằng cách sử dụng tập huấn luyện – training set)  Exmaple: đặc trưng bới các thuộc tính của nó, một example có thể được so sánh với các example khác. Example là các dòng của một bảng dữ liệu. Ví dụ 1 tập data về customer – churn bao gồm 993 example nói cách khác là 993 dòng. Chúng được xác định bởi số dòng mà Rapidminer prepend.  Example set: bảng được tạo ra từ các attribute (column) và các example (row). Còn được gọi là data hoặc data set. Ví dụ: example set được sử dụng ở đây là customer-churn, lấy từ file excel customer-churn.xlsx  Label: thuộc tính nhận diện liên quan đến câu hỏi hiện tại. Mục tiêu là để biết hoặc tìm giá trị của thuộc tính (label’s) hoặc tìm hiểu các nguyên tắc để Đôi khi được gọi là biến mục tiêu hoặc thuộc tính mực tiêu, đây là điều kiện để đưa ra dự đoán cho các example chư được mô tả. Mỗi data set chỉ có 1 label. Ví dụ ‘churn’ là label của data customer-churn  Model (mô hình): phương pháp khai thác dữ liệu hoặc hướng dẫn dự đoán. Một mô hình giải thích các quy luật được phát hiện và (hoặc) dự đoán các tình huống ở hiện tại hoặc tương lai. Ví dụ, ban tạo ra một mô hình dự báo một khách hàng đặt hàng có hủy bỏ hay không. Mô hình sẽ trả về kết quả cho bạn là tỷ lệ người đó đặt hàng hay không.  Operator: các khổi xây dựng được nhóm lại theo chức năng, được sử dụng để tạo ra các tiến trình của Rapidminer. Một operator có cổng input và cổng output. Hành động đầu vào sẽ dẫn đến kết quả của đầu ra. Các tham số (parameter) của operator sẽ kiểm soát những hành động đó. Hiện có hơn 1500 operator trong Rapidminer. Trong hướng dẫn này, bạn sử dụng Retrieve (lấy ra tập dữ liệu) cho toán tử ‘Filter Examples’. 44 CHƯƠNG 2. PHƯƠNG PHÁP TỔ CHỨC VÀ TÍCH HỢP DỮ LIỆU LỚN 2.1. CÁC HỆ THỐNG PHÂN TÍCH DỮ LIỆU LỚN TRONG VIỄN THÔNG 2.1.1. Một số ứng dụng hệ thống phân tích dữ liệu lớn phổ biến hiện nay Là một ngành công nghiệp với khối lượng dữ liệu cần xử lý rất lớn, ngành công nghiệp viễn thông đã nhanh chóng phát triển từ cung cấp dịch vụ điện thoại cố định để cung cấp nhiều dịch vụ thông tin liên lạc toàn diện khác. Chúng bao gồm di động, điện thoại thông minh, truy cập Internet, email, tin nhắn văn bản, hình ảnh, máy tính và truyền dữ liệu web và các dữ liệu giao thông. Sự hội nhập của viễn thông, mạng máy tính, Internet và nhiều phương tiện truyền thông khác đã được tiến hành, thay đổi bộ mặt của viễn thông và điện toán. Điều này đã tạo ra một nhu cầu lớn về khai thác dữ liệu để giúp hiểu số liệu kinh doanh, xác định mô hình viễn thông, xác định các hoạt động gian lận, sử dụng tốt hơn các nguồn lực và cải thiện chất lượng dịch vụ [7, 8]. Hình 2.1. Các lĩnh vực phân tích dữ liệu lớn trong viễn thông. Bài toán khai thác dữ liệu trong viễn thông có điểm tương đồng với những người trong ngành công nghiệp bán lẻ. Bài toán thường gặp bao gồm xây dựng kho dữ liệu quy mô lớn, thực hiện biểu diễn đa chiều trực quan, OLAP và phân tích chuyên sâu về các xu hướng, mẫu của khách hàng và các mẫu tuần tự. Các bài toán này góp phần cải thiện kinh doanh, giảm chi phí, duy trì khách hàng, phân tích gian lận và tìm hiểu về đối thủ cạnh tranh. Có rất nhiều bài toán phân tích dữ 45 liệu lớn cùng với các công cụ khai thác dữ liệu cho viễn thông đã được biết đến và sẽ đóng vai trò ngày càng quan trọng trong kinh doanh ngày nay. Một số bài toán cụ thể như sau [7, 12]: - Quản lý trải nghiệm khách hàng (Customer Experience Mgmt): - Giám sát, quản lý và tối ưu mạng lưới (Network OAM) - Phân tích hoạt động (Operation Analytics). - Kiếm tiền từ dữ liệu (Data Monetization) Hình 2.2. Mức độ ứng dụng phân tích dữ liệu lớn trong viễn thông. Source: Heavy Reading Survey - Thought Leadership Council (n=12), Nov.2017 2.1.1.1. Quản lý trải nghiệm khách hàng (Customer Experience Mgmt) Quản lý trải nghiệm khách hàng là quá trình quản lý tất cả các điểm tiếp xúc với khách hàng nhằm đảm bảo mối quan hệ tích cực giữa khách hàng với thương hiệu. CEM được hiểu là việc “chủ động thiết kế và quản trị tất cả các trải nghiệm khách hàng từ các trải nghiệm về thương hiệu, trải n

Các file đính kèm theo tài liệu này:

  • pdfluan_van_to_chuc_va_tich_hop_he_thong_phan_tich_du_lieu_lon.pdf
Tài liệu liên quan