ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN THỊ HOÀN
MỘT MÔ HÌNH KẾT HỢP HỌC GIÁM SÁT VÀ BÁN GIÁM SÁT CHO BÀI TOÁN DỰ BÁO KHÁCH HÀNG CÓ NGUY CƠ RỜI MẠNG VINAPHONE
LUẬN VĂN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN
HÀ NỘI - 2015
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN THỊ HOÀN
MỘT MÔ HÌNH KẾT HỢP HỌC GIÁM SÁT VÀ BÁN GIÁM SÁT CHO BÀI TOÁN DỰ BÁO KHÁCH HÀNG CÓ NGUY CƠ RỜI MẠNG VINAPHONE
Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số:60.48.01.04
LUẬN VĂN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN
Ngƣời hƣớng dẫn khoa học: PGS.TS. HÀ QUANG THỤY
HÀ NỘI - 2015
iii
Lời cảm ơn
Lời đầu tiên tôi xin gửi lời cảm ơn chân thành và biết ơn sâu sắc tới PGS.TS Hà Quang Thụy, người Thầy đã chỉ bảo và hướng dẫn tận tình cho tôi trong suốt quá trình từ khi là sinh viên, tới khi học thạc sĩ và trong suốt quá trình nghiên cứu và thực hiện luận văn này.
Tôi xin chân thành cảm ơn sự dậy bảo, giúp đỡ, tạo điều kiện của các Thầy, Cô trong trường Đại học Công Nghệ, Đại học Quốc Gia Hà Nội trong suốt quá trình tôi học tập tại Trường.
Tôi xin chân thành cảm ơn sự giúp đỡ, tạo điều kiện và khuyến khích tôi trong quá trình nghiên cứu của các Thầy, Cô, anh chị tại phòng thí nghiệm Khoa học dữ liệu và Công nghệ tri thức (DS&KTLAB) và Đề tài ĐHQGHN QG.14.13.
Tác giả
Cuối cùng, tôi xin gửi lời cảm ơn tới gia đình, người thân và bạn bè – những người luôn ở bên tôi trong lúc khó khăn, động viên, khuyến khích tôi trong cuộc sống và công việc. Tôi xin chân thành cảm ơn!
Nguyễn Thị Hoàn
i
Lời cam đoan
Tôi xin cam đoan luận văn được hoàn thành trên cơ sở nghiên cứu, tổng hợp và phát triển các nghiên cứu về bài toán dự báo khách hàng rời mạng trong nước và trên thế giới do tôi thực hiện.
Luận văn này là mới, các đề xuất trong luận văn do chính tôi thực hiện, qua quá trình nghiên cứu đưa ra và không sao chép nguyên bản từ bất kỳ một nguồn tài liệu nào khác.
ii
Mục lục
Lời cảm ơn ....................................................................................................................... i
Danh mục các hình vẽ và bảng biểu ................................................................................ v
Danh mục từ viết tắt ....................................................................................................... vi
Mở đầu ............................................................................................................................ 1
Chƣơng 1: Khái quát bài toán dự đoán khách hàng rời mạng ................................. 2
1.1.Bài toán dự đoán khách hàng rời mạng ..................................................................... 2
1.2.Vai trò của khai phá dữ liệu trong quản lý khách hàng rời mạng ............................. 3
1.3. Một số nghiên cứu cho bài toán dự đoán khách hàng rời mạng ............................... 4
1.3.1. Đánh giá hiệu quả của mô hình ............................................................................. 4
1.3.2. Một số mô hình nghiên cứu về dự đoán khách hàng rời mạng ............................. 5
1.4.Tóm tắt chương 1 ....................................................................................................... 8
Chƣơng 2: Một số mô hình điển hình cho bài toán dự đoán khách hàng rời mạng9
2.1. Mô hình dựa trên luật cho bài toán dự đoán khách hàng rời mạng dịch vụ viễn
thông ............................................................................................................................ 9
2.1.1. Giới thiệu mô hình phân lớp dựa trên luật ............................................................ 9
2.1.2. Mô hình sinh các luật ............................................................................................ 9
2.1.3. Phân lớp ............................................................................................................... 12
2.1.4. Kết quả và đánh giá mô hình ............................................................................... 13
2.2. Mô hình học lai cho bài toán dự đoán khách hàng rời mạng ................................. 15
2.3. Tóm tắt chương 2 .................................................................................................... 21
Chƣơng 3: Mô hình kết hợp giám sát và bán giám sát cho bài toán dự đoán khách
hàng rời mạng .............................................................................................................. 22
3.1. Tiếp cận mô hình bài toán ...................................................................................... 22
3.2. Tiền xử lý dữ liệu ................................................................................................... 24
3.3. Mô hình học giám sát dựa trên thuật toán K-NN ................................................... 24
3.4. Mô hình học bán giám sát dựa trên thuật toán self-training ................................... 25
3.5. Mô hình học giám sát dựa trên hệ thống luật: ........................................................ 27
3.6. Phân lớp .................................................................................................................. 28
Tổng kết chương 3 ......................................................................................................... 29
iii
Chƣơng 4: Thực nghiệm và đánh giá kết quả .......................................................... 30
4.1. Môi trường thực nghiệm: ........................................................................................ 30
4.2. Quá trình thực nghiệm ............................................................................................ 30
4.3. Kết quả thực nghiệm ............................................................................................... 32
4.4. Đánh giá kết quả và hướng nghiên cứu tiếp theo ................................................... 34
4.5.Tóm tắt chương 4.................................................................................................... 34
Tài liệu tham khảo ....................................................................................................... 35
iv
Danh mục các hình vẽ và bảng biểu
Hình 1: So sánh độ AUC giữa các mô hình .................................................................. 14
Hình 2: So sánh AUC mô hình CRL và DMEL cho tỉ lệ churn rate khác nhau ........... 15 Hình 3: So sánh AUC cho mô hình CRL và DMEL với tập dữ liệu UCI ..................... 15
Hình 4: Giải thuật sinh luật FOIL ................................................................................. 17
Hình 5: Giải thuật sinh 1 luật FOIL............................................................................... 18
Hình 6: Mô hình dự đoán lai cua Ying Hwuang và cộng sự ......................................... 18
Hình 7: So sánh đường cong ROC, AUC với kỹ thuật phân lớp khác nhau ................ 21 Hình 8: So sánh hiệu quả của mô hình lai đề xuất và các mô hình lai khác dựa trên
ROC ............................................................................................................................... 21
Hình 9: Mô hình kết hợp học giám sát và bán giám sát ................................................ 23 Hình 10: Một ví dụ về phân lớp KNN ........................................................................... 25
Hình 11: Mô hình học bán giám sát Self-training ......................................................... 26
Hình 12: Sơ đồ thuật toán Self-training......................................................................... 27
Hình 13: Giả mã học luật FOIL ..................................................................................... 28
Hình 14: Giả mã học 1 luật FOIL .................................................................................. 28
Bảng 1: Tỉ lệ rời mạng của các mạng tại Hàn Quốc năm 2007-2008 ............................. 9
Bảng 2: Chức năng, kỹ thuật khai phá dữ liệu và ứng dụng ........................................... 3
Bảng 3: Ma trận Confusion ............................................................................................. 4
Bảng 4: Tập dữ liệu cho mô hình dự đoán dựa trên luật ............................................... 13
Bảng 5: Tập dữ liệu mô hình Ying Hwuang và cộng sự ............................................... 20
Bảng 6: Kết quả mô hình Ying Hwuang và cộng sự sử dụng độ đo AUC .................... 20 Bảng 7: So sánh mô hình Ying Hwuang và cộng sự với một số mô hình khác ............ 20
Bảng 8: Phần mềm sử dụng trong luận văn ................................................................... 30 Bảng 9: Bảng mô tả dữ liệu mẫu .................................................................................. 31 Bảng 10: Trọng số một số thuộc tính dữ liệu ................................................................ 31 Bảng 11: Ma trận Confusion ......................................................................................... 33 Bảng 12: Kết quả thực nghiệm với trọng số weight2 .................................................... 33
Bảng 13: Kết quả thực nghiệm với trọng số weight1 .................................................... 34
v
Danh mục từ viết tắt
STT Từ/cụm từ Tên viết tắt
1 K Nearest Neigbours KNN
2 Area Under ROC AUC
3 Support Vector Machines SVM
4 Classification by Rules Learning CRL
5 Data Mining by Evolutionary Learning DMEL
6 True Prediction/False Prediction TP/FP
7 First Order Inductive Learning FOIL
vi
Mở đầu Sự phát triển mạnh mẽ của công nghệ viễn thông trong những năm gần đây đã
mở ra nhiều cơ hội cho các nhà cung cấp dịch vụ mạng di động. Song song với việc mở rộng và phát triển các khách hàng mới, việc quản lý khách hàng cũ cũng là một
nhiệm vụ quan trọng. Dự báo khách hàng có nguy cơ rời mạng chính là phần trọng yếu
trong quản lý khách hàng rời mạng. Xác định được khách hàng có nguy cơ rời mạng
giúp nhà cung cấp dịch vụ kịp thời đưa ra các biện pháp, phương thức để quản lý, chăm sóc khách hàng, tránh để khách hàng rời bỏ dịch vụ của mình.
Nhiều mô hình cho bài toán dự báo khách hàng rời mạng đã được nghiên cứu
và phát triển. Các công trình nghiên cứu về dự báo khách hàng rời mạng được công bố trong các hội nghị nổi tiếng như Elsevier1 và được áp dụng thực tế tại các nhà mạng lớn như Taiwan Mobile của Đài Loan, China Mobile, của Trung Quốc, T&T của Mỹ.
Nội dung luận văn thạc sĩ “Một mô hình kết hợp học giám sát và bán giám sát
cho bài toán dự báo khách hàng có nguy cơ rời mạng Vinaphone” tập trung vào nghiên
cứu, khảo sát, đánh giá và đề xuất một mô hình dự đoán khách hàng rời mạng, bên
cạnh đó, áp dụng mô hình này cho dự đoán khách hàng có nguy cơ rời bỏ mạng viễn
thông VinaPhone.
Ngoài phần mở đầu và kết luận, luận văn đƣợc tổ chức thành 4 chƣơng
nhƣ sau: Chƣơng 1: Khái quát bài toán dự đoán khách hàng rời mạng giới thiệu khái
quát dự đoán khách hàng rời mạng trong viễn thông, các khái niệm liên quan. Trình
bày vai trò của khai phá dữ liệu trong dự đoán khách hàng rời mạng. Một số nghiên cứu về bài toán dự đoán khách hàng rời mạng.
Chƣơng 2: Một số mô hình điển hình cho bài toán dự báo khách hàng rời
mạng giới thiệu một số mô hình điển hình cho bài toán dự bao khách hàng rời mạng.
Chƣơng 3: Kết hợp học giám sát và bán giám sát cho bài toán dự đoán khách hàng rời mạng phân tích, đề xuất, trình bày mô hình kết hợp giữa học bán giám sát self-training và học giám sát dựa trên luật cho bài toán dự đoán các khách hàng có nguy cơ rời mạng.
Chƣơng 4: Thực nghiệm và đánh giá kết quả trình bày quá trình thực nghiệm
của luận văn, đưa ra một số đánh giá về hiệu quả của mô hình, nhận xét các kết quả đạt
được.
1
Chƣơng 1: Khái quát bài toán dự đoán khách hàng rời mạng
1.1. Bài toán dự đoán khách hàng rời mạng
Trong những năm gần đây, có nhiều sự thay đổi lớn trong công nghiệp viễn
thông như sự mở rộng của thị trường, các dịch vụ và công nghệ mới dẫn đến cạnh
tranh khốc liệt trong thị trường viễn thông. Việc rời bỏ mạng của khách hàng làm sụt giảm một lượng lớn dịch vụ viễn thông và khiến nó trở thành vấn đề nghiêm trọng của
các nhà cung cấp dịch vụ.
Khách hàng rời mạng (customer churn) được xem là những khách hàng có giá
“churn management” là dự đoán các “churner”. Bài toán dự đoán khách hàng rời mạng (churn prediction) chính là đi tìm các “churner” dựa trên các thuộc tính của khách hàng như: dữ liệu
hợp đồng, thông tin khách hàng, log sử dụng dịch vụ, chi tiết cuộc gọi, dữ liệu khiếu nại, thông tin hóa đơn và thanh toán.
Theo các nghiên cứu thị trường của Berson, Smitch và cộng sự năm 2000 [C1_06], tỉ lệ khách hàng ngưng sử dụng dịch vụ của các nhà mạng di động lên tới 2% trên tháng. Điều
đó có nghĩa mỗi nhà mạng mất gần ¼ lượng khách hàng mỗi năm, hơn nữa, các nhà mạng Châu Á phải đối mặt với nhiều thách thức rời mạng hơn là các nhà mạng khác trên thế giới.
trị rời bỏ sử dụng dịch của một nhà mạng sang sử dụng dịch vụ của một nhà mạng khác. Quản lý khách hàng rời mạng (churn management) là các chính sách xử lý của nhà mạng nhằm giữ chân các khách hàng có nguy cơ rời mạng. Một trong những thách thức của
Hình 1: Tỉ lệ rời mạng của một số mạng Châu Âu năm 2010-2011(1)
Trên thực tế, một nhà mạng có thể phân đoạn các khách hàng của họ dựa trên
các lợi ích mà khách hàng mang lại và quản lý khách hàng chỉ dựa trên phân đoạn khách hàng có lợi ích. Tuy nhiên, công nghiệp dịch vụ viễn thông không thể tiêu
2
chuẩn hóa tập độ đo lợi ích. Vì vậy, kỹ thuật khai phá dữ liệu được áp dụng để
giải quyết vấn đề thách thức của khách hàng rời mạng trong lĩnh vực dịch vụ viễn
thông.
1.2. Vai trò của khai phá dữ liệu trong quản lý khách hàng rời mạng
Áp dụng công cụ hỗ trợ của khai phá dữ liệu trong quản lý khách hàng là một xu hướng trong kinh tế toàn cầu. Phân tích và hiểu các hành vi, đặc tính của khách
hàng để giữ lại các khách hàng tiềm năng, tối ưu hóa giá trị khách hàng. Công cụ khai phá dữ liệu tỏ ra hữu dụng trong việc trích xuất và xác định các thông tin hữu dụng,
các kiến thức từ cơ sở dữ liệu khách hàng.
Khai phá dữ liệu là trích xuất các thông tin ẩn từ một tập dữ liệu lớn với khả
năng cao để giúp các công ty tìm ra các xu hướng quan trọng nhất trong dữ liệu lớn
của họ. Các hỗ trợ từ công cụ khai phá dữ liệu có thể trả lời các câu hỏi mà kinh doanh truyền thống cần nhiều thời gian để giải quyết. Leijeune [Lei-01] cho rằng kỹ thuật
khai phá dữ liệu là kỹ thuật cho phép biến đổi dữ liệu gốc thành tri thức kinh doanh.
Viện SAS [SAS] định nghĩa khai phá dữ liệu như là “xử lý lựa chọn, biểu diễn và mô
hình lượng lớn dữ liệu để khám phá ra các mẫu có lợi cho kinh doanh chưa được biết
đến trước đó”. Tóm lại, chúng ta có thể nói rằng, khai phá dữ liệu là áp dụng các thuật
toán phân tích và khám phá dữ liệu để phát hiện ra các mẫu cho dự đoán và mô tả.
Trong quản lý quan hệ khách hàng, kỹ thuật khai phá dữ liệu hay được sử dụng
nhất gồm: phân cụm, luật quy nạp, thuật toán di truyền, cây quyết định và mạng
neuron. Bảng dưới chỉ ra các kỹ thuật, hàm khai phá dữ liệu và ứng dụng trong miền
khai phá dữ liệu.
Chức năng
Kỹ thuật
Ứng dụng
Mạng Neuron
Đánh gia tỉ lệ thay đổi
Thống kê
Phân lớp
Cây quyết định Làm mờ Mạng Neuron
Đánh giá giá cổ phiếu Biển thủ hóa đơn Phân đoạn thị trường
Dự đoán
Phân đoạn
Thuật toán di truyền Mạng Neuron Hồi quy Cây quyết định Mạng Neuron Thuật toán di truyền Cây quyết định
Dự đoán khách hàng rời mạng Dự đoán gian lân Phân đoạn thị trường
Thống kê
Bảng 1: Chức năng, kỹ thuật khai phá dữ liệu và ứng dụng 3
1.3. Một số nghiên cứu cho bài toán dự đoán khách hàng rời mạng
1.3.1. Đánh giá hiệu quả của mô hình
Sau khi bộ phân lớp/dự đoán được xây dựng, nó được sử dụng để dự đoán các
hành vi tương lai của khách hàng. Một trong những bước quan trọng để chắc chắn mô hình hoạt động tốt là đánh giá mô hình dự đoán, có nghĩa là xem xét tỉ lệ khách hàng
-
rời mạng. Tỉ lệ dự đoán được đánh giá bằng tỉ lệ rời mạng đúng (True churn rate - TP)
và tỉ lệ rời mạng sai (false churn rate– FP). Mục tiêu của phương pháp là đạt tỉ lệ TP cao và tỉ lệ FP thấp. Bảng 3 định nghĩa ma trận về tỉ lệ TP và FP, trong đó, a11 là số churner được dự đoán đúng, a12 là số churner được dự đoán sai, a21 là số non-churn được dự đoán đúng và a22 là số non-churn dự đoán sai. Theo ma trận, tỉ lệ TP được định nghĩa là tỉ lệ các churner được phân lớp đúng, tính theo công thức:
Confusion matrix
Predicted
Actual
Churn Non-churn
Churn a11 a22
Non-churn a12 a21
Và FP được định nghĩa là tỉ lệ các churner được phân lớp sai, tính theo công thức:
Bảng 2: Ma trận Confusion
Từ cặp TP và FE, kỹ thuật đường cong hoạt động nhận được (Receive
Operationg Curves (ROC) ) [Bradley-97] được sử dụng để tìm cặp tỉ lệ dự đoán mong
đợi (TP và FP).
Tuy nhiên, kỹ thuật ROC thường khó sử dụng để đánh giá từ các kỹ thuật mô hình dự đoán khác nhau hoặc tập thuộc tính dữ liệu khác nhau. Để giải quyết khó khăn, kỹ thuật tính miền dưới đường cong ROC (Area under ROC AUC) được sử
dụng để đánh giá mô hình và tập thuộc tính trong dự đoán khách hàng rời mạng. Miền dưới đường cong ROC được tính theo công thức:
4
Với S0 là tổng xếp hạng của lớp 0 (churn) mẫu test, n0 là số mẫu trong tập test thuộc lớp 0(churn) và n1 là số mẫu thuộc tập lớp 1(nonchurn).
1.3.2. Một số mô hình nghiên cứu về dự đoán khách hàng rời mạng
a. Trích chọn đặc trƣng
Trích chọn đặc trưng là một bước quan trọng, có thể ảnh hưởng tới hiệu quả của
mô hình dự đoán. Tập thuộc tính cho dự đoán khách hàng rời mạng trong lĩnh vực dịch
vụ viễn thông chia thành các mục con sau:
Thông tin tiểu sử khách hàng: Các nhóm thông tin về giới tính, tuổi, loại
khách hàng.
Thông tin về tài khoản: loại dịch vụ sử dụng (trả trước/trả sau), chu kỳ cước, tài khoản, loại thiết bị, phương thức thanh toán, tổng hợp các thuộc
tính về thời lượng cuộc gọi, số cuộc gọi. Dịch vụ sử dụng: Các gói cước đăng ký Thông tin khiếu nại Thông tin thanh toán và hóa đơn Cuộc gọi chi tiết: Thời lượng cuộc gọi, giá cả, loại cuộc gọi cho mọi cuộc
gọi.
Chi tiết cuộc gọi đến:
b. Chuẩn hóa dữ liệu
Một số mô hình dự đoán, phân lớp gặp khó khăn trong xử lý dữ liệu liên tục
tính hoặc học quy nạp. Mô tả dữ liệu thành dạng mà bộ phân lớp, dự đoán có thể hiểu được.
(dạng chuỗi,..). Quá trình chuẩn hóa dữ liệu chia các các thuộc tính liên tục thành các thuộc tính rời rạc. Quá trình này thường được sử dụng như bước đầu tiên trong các hàm tuyến
c. Dự đoán/Phân lớp Rất nhiều kỹ thuật được đề xuất cho mô hình dự đoán trong viễn thông, dưới đây
là bẩy mô hình phổ biến:
Mô hình hồi quy logic (Logistic Regressions): [Hosmer-89]: Được áp dụng rộng rãi cho phân lớp xác xuất rõ ràng. Hồi quy xác suất đánh giá xác suất để xảy ra sự kiện như sau:
Trong đó y là biến thập phân biểu diễn xuất hiện sự kiện (ví dụ y = 1 nếu sự
kiện xảy ra, y =0 nếu ngược lại). là các tham số đầu vào độc lập.
là các hệ số hồi quy được đánh giá bởi phương thức thống kê cực đại, dựa trên các các
5
dữ liệu đào tạo được cung cấp. Chi tiết về phương pháp hồi quy logic được mô tả bởi
Homsmer và Lemeseshow [Homs-89] .
Mô hình cây quyết định
Phương pháp “chia để trị” được áp dụng để xây dựng một cây nhị phân. Ban
đầu, phương pháp tìm kiếm các thuộc tính với thông tin tốt nhất để làm node gốc và
chia cây nhị phân thành các cây con. Tương tự, đối với các cây con cũng được mở
rộng với luật giống như cây cha.Việc phân chia dừng lại nếu đến node hoặc khi hết thông tin. Khi cây được tạo, các luật thu được bằng cách thăm mỗi nhánh của cây. Chi
tiết về cây quyết định được Quinlan mô tả kỹ trong [Quinlan-96] .
Thuật toán Naïve Bayes dựa trên định lý Bayes được phát biểu như sau:
( | )
( ) ( )
( | ) ( ) ( )
Áp dụng trong bài toán phân loại, các dữ kiện gồm có:
D: tập dữ liệu huấn luyện đã được vector hóa dưới dạng ⃗ ( ) Ci: phân lớp i, với i = {1,2,…,m}. Các thuộc tính độc lập điều kiện đôi một với nhau.
Theo định lý Bayes:
( | )
( | ) ( ) ( )
Theo tính chất độc lập điều kiện:
( | ) ∏ ( | )
Trong đó:
( | ) là xác suất thuộc phân lớp i khi biết trước mẫu X. ( ) xác suất là phân lớp i. ( | ) xác suất thuộc tính thứ k mang giá trị xk khi đã biết X thuộc phân lớp i.
Các bước thực hiện thuật toán Naïve Bayes:
Bước 1: Huấn luyện Naïve Bayes (dựa vào tập dữ liệu), tính ( ) và ( | )
Bước 2: Phân lớp ( ), ta cần tính xác suất thuộc từng phân lớp khi đã biết trước Xnew. Xnew được gán vào lớp có xác suất lớn nhất theo công thức
)
( ( ) ∏ ( | )
Mô hình Naïve Bayes
6
Chi tiết phân lớp Naïve Bayes chi tiết trong mô tả của [Langley-92]
Phân lớp tuyến tính (Linear Classifiers)
Bộ phân lớp tuyến tính map một không gian thuộc tính X vào một tập nhãn lớp
Y bằng một hàm tuyến tính. Hàm phân lớp tuyến tính f(x) có thể được viết như sau:
Với là trọng số của các lớp và là hằng số. giá trị của với
biến đầu vào quyết định lớp gán nhãn. Ví dụ, trong phân lớp nhị phân, nhãn của lớp
là +1 nếu 0, ngược lại, gán nhãn là -1. Trong số wi và hằng số b được xác định
từ tập ví dụ học đã gán nhãn. Chi tiết được mô tả trong [Vapnik-98]. Mạng Neuron nhân tạo (Artificial neural networks)
Một một neuron đa lớp (Multilayer Perceptron Neural Networks (MLP)) là một
mạng neuron giám sát, thường bao gồm lớp đầu và lớp ẩn và lớp đầu ra. Thông
thường, hàm khởi động của MLP là hàm sigmoid. Ví dụ MLP với một lớp ẩn, đầu ra
mạng có thể đạt được bằng cách biến đổi hàm khởi động của đơn vị ẩn sử dụng hai
tầng xử lý.
Với D, L và J là tổng số đơn vị lớp đầu vào, ẩn, và lớp ra, f là hàm khởi tạo.
Chi tiết về mạng Neuron nhân tạo được Rumelhart, Hiton và Williams mô tả chi
tiết trong [Rumelhart-86]
Máy Vector hỗ trợ (Support Vector Machines - SVM)
Một bộ phân lớp SVM sử dụng thuật toán học nhằm xây dựng một siêu mặt
phẳng làm cực tiểu hóa độ phân lớp sai của một đối tượng dữ liệu mới. Độ phân lớp sai của một siêu phẳng được đặc trưng bởi khoảng cách bé nhất tới siêu phẳng đấy.
Xét bài toán phân lớp đơn giản nhất – phân lớp hai lớp với tập mẫu dữ liệu:
Trong đó mẫu là các vector đối tượng được phân lớp thành các mẫu dương và
mẫu âm.
Các mẫu dương là các mẫu xi thuộc lĩnh vực quan tâm và được gãn nhãn yi=1.
Các mẫu âm là các mẫu xi không thuộc lĩnh vực quan tâm và được gán nhãn yi=-1.
Thực chất phương pháp này là một bài toán tối ưu, mục tiêu là tìm ra một không gian H và siêu mặt phẳng quyết định h trên H sao cho sai số phân lớp là thấp nhất.
Trong trường hợp này, tập phân lớp SVM là mặt phẳng phân tách các mẫu dương khỏi các mẫu âm với độ chênh lệch cực đại, trong đó độ chênh lệch-còn gọi là
7
Lề (margin) xác định bằng khoảng cách giữa các mẫu dương và các mẫu âm gần mặt
siêu phẳng nhất. Mặt siêu phẳng này được gọi là mặt siêu phẳng lề tối ưu.
Tập phân lớp SVM được định nghĩa như sau:
Với w = w1+w2+…+wn là bộ hệ số siêu phẳng hay là các vector trọng số. C là
độ dịch.
Trong đó:
sign(z) = +1 nếu và sign(z) =-1 nếu z<0.
Nếu f(x) = +1 thì x thuộc về lớp dương (lĩnh vực được quan tâm), và ngược lại,
nếu f(x) =-1 thì x thuộc về lớp âm (các lĩnh vực khác).
Chi tiết về thuật toán SVM được Burges mô tả chi tiết trong [Burges-98].
Khai phá dư liệu bằng học tiến hóa (Data Mining by Evolutionary
Learning)
DMEL là một kỹ thuật phân lớp di truyền. Một bộ phân lớp DMEL gồm một
tập các luật đã được gán nhãn được sinh ra bởi thuật toán di truyền. Ví dụ, bộ phân lớp
DMEL áp dụng luật để gán mẫu và lớp quy định. Chi tiết bộ phân lớp DMEL được
mô tả chi tiết bởi Auu [Auu-03].
1.4.Tóm tắt chƣơng 1
Trong chương này, luận văn giới thiệu khái quát về bài toán dự đoán khách
hàng rời mạng, các khái niệm liên quan. Chương 1 cũng đề cập đến vai trò của khai
phá dữ liệu và một số kỹ thuật khai phá dữ liệu dùng trong bài toán dự đoán khách
hàng có nguy cơ rời mạng. Trong chương tiếp theo, luận văn sẽ giới thiệu chi tiết hai
mô hình dự đoán khách hàng rời mạng: Mô hình dự đoán dựa trên học luật và mô hình
dựa trên học giám sát và không giám sát của Ying Huwang và cộng sự.
8
Chƣơng 2: Một số mô hình điển hình cho bài toán dự đoán khách
hàng rời mạng
2.1. Mô hình dựa trên luật cho bài toán dự đoán khách hàng rời mạng dịch vụ viễn thông
2.1.1. Giới thiệu mô hình phân lớp dựa trên luật
Phương pháp phân lớp dựa trên học luật (classification by rule learning (CRL))
là một phương pháp nổi tiếng. Một trong những đặc trưng của quy nạp luật là chúng rõ ràng và dễ hiểu hơn những mô hình khác. Đã có nhiều nghiên cứu về lĩnh vực này.
Trong xử lý luật quy nạp, hai phương pháp thường được sử dụng là: general-to-
specific(top-down) tức là xử lý từ luật chung đến các luật riêng và phương pháp
specific-to-general (bottom-up) tức là đi từ các luật riêng tới các luật chung. Trong đó,
phương pháp top-down thường được áp dụng rộng rãi hơn.
“Luật” được định nghĩa là một mệnh đề dạng: {NẾU Tiền đề THEN kết quả},
với tiền đề được định nghĩa là một sự kết hợp của một số cặp cách> và kết quả là nhãn của lớp. “Luật chung” và “luật riêng” là hai khái niệm quan trọng. Thông thường, một luật với cặp quả thì “chung” hơn. Phân lớp dựa trên học luật (CRL) là một chiến lược từ chung-đến-riêng, vì vậy,
nó bắt đầu bằng việc sinh các luật chung, first-order luật, sau đó sinh các luật lớp cao hơn dựa vào các luật bậc thập hơn (lower-order). Thuật toán [Giải thuật1] bên dưới
minh họa việc xử lý sinh tập luật. Với SETrules là tập luật được sinh ra, k là số bậc. và
threshold là số bậc tối đa. Giải thuật 1: CRL Algorithm (training data) ; 1: SETrules ← 2: k ← 1; 3: SETrules ← First_order_rules(training data) 4: While k ≤ threshold do 5: high_order ← Higher_order_rules(lower_order_rules); 6: SETrules ← SETrules high_order; 8: end while 9: return SETrules 9 First-order Rules (Giải thuật 2): Thuật toán sinh ra luật bậc đầu tiên first-order rules. Để tránh mất thông tin, tất cả các cặp khoản. Trong thuật toán 2, num_attribute, num_interval và num_class định nghĩa số thuộc tính, số khoảng cách của thuộc tính hiện tại và số phân lớp khác nhau. Đầu tiên,
set first_order_rule là rỗng, ruleijk là luật có dạng “IF fi=Intervalj THEN Classk”, Nếu
Prunning(ruleijk) trả lại false, thì ruleijk được xem là một luật hữu ích. Giải thuật 2: First_order_rules(training data) 1. First_order_rules ← ; 2. For i=1; i ≤ num_attribute; i++ do 3. For j=1; j≤ num_interval; j++ do 4. For k=1; k≤ num_class; k++ do 5. If Pruning (ruleijk) returns fales then 6. First_order_rules ← First_order_rule ruleijk 7. End if 8. End for 9. End for 10. End for 11. Return First_order_rules High-order Rules (Giải thuật 3): Highter-order rules được xây dựng lặp lại từ các luật cấp thấp hơn. Luật bậc 2 (second_order) được xây dựng từ luật bậc 1 (first_order), luật bậc 3 (third_order) được xây dựng từ luật bậc 2 (second_order). Luật (n-1)_order
là cơ sơ để xây dựng luật n_order. Trong thuật toán 3, item được dùng để định nghĩa
một cặp Mỗi luật riêng được đặc tả bởi thuật toán hill_climbing để thêm một phần tử vào phần
tiền đề của luật hiện tại. Để đánh giá chất lượng của luật được sinh ra, chúng ta có thể sử dụng độ đo Weighted Relative Accuracy (WRA), được tính như sau: 10 Trong đó Num_(a) và Num_(c) là số trường hợp dữ liệu được trích xuất từ tiền đề và kết quả của luật, và num_total được định nghĩa là số trường hợp trong tập dữ liệu học. Giải thuật 3: Higher_order_rules (a set of lower_order_rules) ; 1. all_rules ←
2. positive_items ← get all exclusive items from positive_lower_order_rules;
3. negative_items ← get all exclusive items from negative_lower_order_rules;
4. accuracy_list ←
;
5. For i=1; i ≤ num_positive_rules; i++ do
6. High_rule ← hill_climbing (positivei , positive_item);
7. If Pruning (high_rule) returns false then
8. WRAi ← calculate the Weighted_Relative_Accuracy for high_rule;
9. If WRAi is not in the list of accuracy_list then
10. all_rules ← all_rules high_rule;
11. accuracy_list ← accuracy_list WRAi ;
12. end if
13. end if
14. end for
15. do same work to generate negative_rules;
16. all_rules ← all_rules negative_rule;
17. return all_rules Thuật toán hill_climbing Giải thuật 4: hill_climbing (one_lower_rule, all_low_items) ; 1. accuracy_list ←
2. for i=1; i ≤ num_low_items; i++ do
3. If one_lower_rule does not include itemi then
4. one_high_rule ← combination of one_lower_rule and itemi;
5. WRAi ← calculate the Weighted_Relative_Accuracy for one_high_rule;
6. accuracy_list ← accuracy_list WRAi ;
7. end if
8. end for
9. BEST ← one of high order rules having the highest WRA;
10. return BEST Số lương luật sinh ra có thể rất lớn, để việc phân lớp được hiệu quả, Ying Hwuang và cộng sự đã loại bỏ bớt những luật xấu với các thông tin nhiễu hoặc không quan trọng. 11 Thông thường, một thống kê mẫu được xử dụng để kiểm tra nếu tồn tại một quan hệ tuyến tính mạnh giữa hai thuộc tính. được tính như sau: Với O và E là tần số mong đợi và quan sát, được tính bằng công thức: Ngoài ra, còn có độ đánh giá Support và Confidence được sử dụng để đánh giá luật có bị loại bỏ (pruned) hay không? Giải thuật (5) là một giải thuật tìm ra một luật có bị loại bỏ hay không? Với là ngưỡng giá trị đánh giá , minS và minC là hai giá trị ngưỡng, được định nghĩa là giá trị nhỏ nhất của support và confidence. Giải thuật 5: pruning (rule) 1. flag ← true;
2. If chi-square statistics > α AND support_rule > minS AND Confidence_rule > minC then
3. flag ← false;
4. End if
5. return flag; Để phân lớp cho tập dữ liệu, Ying Hwuang và cộng sự coi Rules bao gồm hai
lớp: churn và non-churn. Hai mô hình dự đoán được xây dựng dựa trên tất cả các luật
churn và tất cả các luật non-churn. Để đánh giá độ quan trọng của các luật, Ying
Hwuang và cộng sử xếp hạng các luật trong mỗi mô hình dựa trên một số nguyên lý sau: Nếu confidence_1 > confidence_2 thì luật rule_1 có độ ưu tiên cao hơn rule_2. Nếu confidence_1= confedence_2 và support_1 > support_2 thì luật rule_1 có độ ưu tiên cao hơn rule_2. 12 Nếu confidence_1 = confedence_2 và support_1 = support_2 vàn
rule_2 là “chung” hơn luật rule_2 thì rule_1 có độ ưu tiên cao hơn rule_2. Sau khi xếp hạng, mỗi luật có một vị trí trong mỗi mô hình dự đoán, nếu một
luật có độ quan trọng hơn các luật khác thì nó có vị trí tốt hơn. Ying Hwuang và cộng sự định nghĩa mực độ quan trọng của mỗi luật như sau: Với Num_rules là số luật, position được định nghĩa là vị trí của luật trong tập luật được xếp hạng. Vì vậy, luật quan trọng nhất thì significance_level có giá trị 1, ngược lại, luật ít quan trọng nhất thì độ quan trọng là . Để phân lớp một đối tượng, tìm tất cả các luật trong mô hình churn và non-churn, nếu tổng Significance_level của tất các luật được trích xuất trong mô hình churn mà lớn hơn mô hình non-churn , thì gán nhãn churn đối tượng, ngược lại, đối tượng sẽ gán nhãn non- churn. Trong phần thực nghiệm, Ying Hwuang và cộng sự sử dụng 4 tập dữ liệu UCI và 6 tập dữ liệu viễn thông của mạng viễn thông Ireland. Tập dữ liệu của Ying Hwuang và cộng sự. [Ying-11] Để đánh giá hiệu quả của mô hình, tác giả sử dụng đường cong AUC ( Area under lift
Curve) để đánh giá. Giá trị AUC được tính theo công thức sau: Với S0 là tổng xếp hạng của lớp 0 (churn) tập mẫu, n0 là số tập mẫu thuộc về lớp 0
(churn) và n1 là số tập mẫu thuộc lớp 1 (nonchurn). 13 Hình trên mô tả kết quả so sánh AUC khi áp dụng CRL và DMEL với các tỉ lệ churn-rate khác nhau: (a):1%, (b) :2%, (c): 4%, (d): 6%, (e): 8%, (f):10%. [Huang-11] 14 Bên trên là kết quả của tác giả Ying Hwuang và cộng sự khi so sánh độ AUC cho mô hình CRL và DMEL với dữ liệu viễn thông có tỉ lệ churn-rate khác nhau, và
hình 4 là kết quả với dữ liệu UCI [Ying-11]. 2.2. Mô hình học lai cho bài toán dự đoán khách hàng rời mạng Ngoài mô hình phân lớp dựa trên luật, Ying Hwuang và công sự M.Tahar còn
xây dựng mô hình lai để dự đoán các hành vi tương lai của khách hàng. Ý tưởng chính
cho mô hình học lai là dự đoán khách hàng theo dữ liệu học tương tự với nó. Giả thiết
rằng, khách hàng có thuộc tính giống nhau thì hành vi sẽ giống nhau. Vì vậy, sẽ chính xác hơn nếu một đối tượng chưa gán nhãn được dự đoán sử dụng đối tượng học hơn là
toàn bộ dữ liệu bằng cách chia dữ liệu học thành các cụm và đối tượng test được gán
nhãn theo cụm gần nó nhất. 15 Mô hình lai của Ying Hwuang và cộng sự gồm 3 phần chính: Chuẩn hóa dữ liệu, đào tạo mô hình học lai và phân lớp. 2.2.1. Chuẩn hóa dữ liệu: Dữ liệu gồm các thông tin biểu diễn dưới các dạng khác nhau. Rời rạc hóa dữ
liệu là quá trình biểu diễn dữ liệu dưới dạng vector, trong đó các trường dữ liệu liên tục được biểu diễn thành các dạng rời rạc ví dụ dữ liệu dạng số. Trong mô hình của Ying Hwuang và cộng sự, tác giả sử dụng kỹ thuật rời rạc hóa dữ liệu lớp phụ thuộc (Class -Dependent) để chuẩn hóa dữ liệu chứa ký tự và thuộc tính liên tục thành các dữ
liệu dạng số. 2.2.2. Đào tạo mô hình lai Trong mô hình lai của Ying Hwuang và cộng sự gồm hai phần: Phân cụm và sinh các luật a. Phân cụm k-mean và phân cụm k-mean có đánh trọng số Phân cụm k-mean Kỹ thuật phân cụm được sử dụng rộng rãi trong rất nhiệu ứng dụng khai phá dữ liệu. Có nhiều thuật toán phân cụm như: phân cụm có thứ bậc, phân cụm mờ, phân cụm cứng, trong đó phân cụm k-mean là kỹ thuật đơn giản, tương tự với phân cụm cứng. Xét tập dữ liệu cần phân cụm D, với K là só cụm và o là một đối tượng thuộc
D. Ci và ci là cụm và trung tâm cụm thứ i. Thuật toán K-Mean khởi tạo K trung tâm
cụm ban đầu. Tại mỗi bước lặp, mỗi đối tượng trong D sẽ được tính khoảng các tới các trung tâm cụm, và gán vào cụm gần nó nhất. Tiếp theo, sẽ tính toán lại trung tâm các cụm. Quá trình này lặp đi lặp lại cho tới khi trung tâm các cụm không thay đổi. Giải thuật K-means
1. Chọn K đối tượng như là các trung tâm cụm khởi tạo
2. Repeat
3. Gán mỗi đối tượng (o) tới các cụm mà khoảng cách tới trung tâm cụm là gần nhất 4. Tính toán lại trung tâm cụm của tất cả các cụm
5. Until trung tâm cụm không thay đổi Trung tâm các cụm không thay đổi là việc khó đạt được, vì vậy, để kết thúc
vòng lặp, người ta tính toán độ SSE (Sum of the Squared Error), tức là tổng khoảng cách từ các đối tượng tới các trung tâm cụm đạt được một ngưỡng nào đó. 16 Giá trị của SSE càng nhỏ, thì độ chính xác càng cao. Phân cụm K-means có trọng số Ying Hwuang và cộng sự sử dụng tập dữ liệu được cung cấp bởi nhà mạng viễn thông cho mô hình. Tập dữ liệu có một lượng lớn các thuộc tính mà mỗi thuộc tính có độ ảnh hưởng khác nhau đến kết quả. Vì vậy, để hiệu quả hơn, tác giả đánh trọng số
cho mỗi thuộc tính, nhằm mục đích giảm độ ảnh hưởng của một thuộc tính đối với kết quả. b. Học luật quy nạp Học luật quy nạp là một phần quan trọng trong mô hình dự đoán lai. Một tập
các luật được sinh ra từ các cụm, các luật này biểu diễn đặc trưng của các cụm. Ưu điểm chính của phương pháp học dựa trên luật là kết quả dễ hiểu và rõ ràng. Trong nghiên cứu của mình, tác giả sử dụng thuật toán FOIL (First Order Inductive Learning) để trích xuất các luật. Thuật toán FOIL được mô tả như sau [Ying-13]: ; Giải thuật FOIL: FOIL (Example)
1. Pos ← Positive Examples;
2. Neg ← Negative Examples;
3. Learned_rules ←
4. While Pos is not empty then
5. Rule ← Learn-A-Rule (Examples, Neg);
6. learned_rules ← learned_rules Rule; 7. Pos ← Pos – {Positive examples covered by Rule};
8. Example ← Example – {any examples covered by Rule}; 9. End while
10. return learned_rules; 17 Giải thuật học 1 luật: Learn-A-Rule (Examples, Neg) 1. Rule ← the most general positive rule;
2. repeat
3. Candidate_cond ← generate candidate conditions for Rule;
4. Best_cond ← max(Foil_Gain);
5. Add Best_cond to the antecedent of Rule;
6. Covered_Neg ← negative examples that are covered by Rule; 7. Until there is no negative examples can be covered;. 8. Return Rule; Mô hình lai để dự đoán khách hàng rời mạng [Huang -13]: 18 2.2.3. Phân lớp
Để dự đoán khách hàng có rời mạng hay không, Ying Hwuang và cộng sự sử dụng thuật toán phân cụm kết hợp với học luật tuyến tính. Giả thiết rằng khách hàng có đặc trưng giống nhau sẽ có hành vi giống nhau. Đối với vấn đề rời mạng, khách
hàng có đặc trưng giống nhau, ví dụ như đặc trưng cuộc gọi, hóa đơn,… thì sẽ thuộc
cùng lớp giống nhau. Vì vậy, để dự đoán lớp cho mỗi khách hàng (tci), tác giả sử dụng
nhãn lớp của các khách hàng có hành vi giống họ (gọi là close Instances). Mục đích sẽ đưa các close Instances thành các cụm giống nhau (close cluster). Closest được đánh
giá bằng độ đô tối thiểu giữa đối tượng và cụm. Tác giả sử dụng độ đo khoảng cách Minkowski. Nhãn lớp cuối cùng (close sub-classifier) được dự đoán bằng các áp dụng phương pháp học luật đối với close cluster. Nguyễn tắc phân lớp của tác giả như sau: Nếu Close Clusster là “thuần” và tất cả các đối tượng trong close cluster là churn thì tci được dự đoán là churn Nếu Close Clusster là “thuần” và tất cả các đối tượng trong close non- cluster là churn thì tci được dự đoán là non-churn Nếu Close Clusster không “thuần” và tất cả các đối tượng trong close
cluster có cả churn và non-churn thì tci được gán nhãn dựa theo close sub-
classifier bao gồm các luật dương. Tci được gán nhãn churn nếu thỏa mãn
tất cả các luật của close sub-classifier, ngược lại, sẽ được gán nhãn non-
churn. 2.2.4. Kết quả và đánh giá
Trong thử nghiệm mô hình của mình, Ying Hwuang và cộng sự sử dụng tập dữ liệu gồm 104199 bản ghi khách hàng, trong đó 6056 khách hàng được gán nhãn churn và 98143 khách hàng được gán nhãn non-churn. Mỗi bản ghi khách hàng có 121 thuộc tính, bao gồm 11 thuộc tính tượng trưng và 110 thuộc tính liên tục. Thuộc tính bao gồm các thông tin Thông tin khác hàng: Thông tin về khách hàng như tuôi, giới tính, tầng lớp xã hội, mã nước,… Thông tin tài khoản: Thông tin ngày bắt đầu, loại tài khoản, hóa đơn, hình thức thanh toán, tài khoản, thông tin cuộc gọi. Chi tiết cuộc gọi: Nhóm thông tin mô tả các thông tin liên quan đến loại cuộc gọi như: số cuộc gọi, thời lượng gọi, giá tiền,.. Cũng giống mô hình học dựa trên luật, Ying Hwuang và cộng sự sử dụng độ đo AUC để đánh giá độ chính xác của mô hình. Tập dữ liệu: Ying Hwuang và cộng sự chia tập dữ liệu thành 9 mẫu, trong đó
Train-churn là tập dữ liệu mẫu được gán nhãn churn, Train-nonchurn là tập dữ liệu 19 mẫu được gán nhãn non-churn, Test là tập dữ liệu test, Churn-rate là tỉ lệ dữ liệu gán nhãn churn trong tập mẫu. Kết quả của mô hình sử dụng độ đo AUC với số cụm khác nhau. Độ chính xác cao nhất tới 89.61% Ngoài ra, Ying Hwuang và cộng sự còn so sánh độ chính xác của mô hình với
một số mô hình dự đoán khác như mô hình cây quyết định, mô hình mạng Neuron nhân tạo, mô hình KNN, SVM, logicstic… [Huang-13] 20 2.3. Tóm tắt chƣơng 2 Trong chương 2, luận văn đã giới thiệu hai mô hình dự đoán khách hàng điển
hình của Ying Hwuang và cộng sự: Mô hình dự đoán dựa trên luật và mô hình dự đoán lai. Có thể thấy rằng, mô hình dự đoán lai của Ying Hwuang và cộng sự có độ chính
xác khá cao, cao nhất tới 90% (sử dụng độ đo AUC) và 97% (sử dụng độ đo OA). Như
vậy, mô hình lai bộc lộ được ưu điểm của mình. Trong chương 3, luận văn sẽ đề xuất mô hình lai khác kết hợp giữa học giám sát và bán giám sát cho bài toán dự đoán khách hàng rời mạng. 21 3.1. Tiếp cận mô hình bài toán Trong chương hai, luận văn đã trình bày mô hình dự đoán dựa trên học luật và mô hình dự đoán lai của Ying Hwuang và cộng sự, so sánh kết quả thử nghiệm của mô
hình so với một số mô hình đơn khác. Nhận thấy rằng, mô hình lai đem lại kết quả khả quan hơn các mô hình khác với cùng một tập dữ liệu, một độ đo đánh giá kết quả.
Khác với mô hình lai, mô hình học dựa trên luật lại hay được xử dụng do tính đơn giản và rõ ràng. Tuy nhiên, tập dữ liệu mẫu cũng là một vấn đề cần xem xét. Dữ liệu đã được gán nhãn thường ít, trong khi dữ liệu chưa được gán nhãn lại rất nhiều. Vì vậy, mô hình kết hợp đề xuất sử dụng học bán giám sát để giải quyết vấn đề tập dữ liệu mẫu. Bên cạnh đó, trong lĩnh vực dự đoán khách hàng rời mạng viễn thông, dữ liệu chứa rất trường thông tin: bao gồm cả thông tin dạng chữ và thông tin dạng số. Vì vậy, mô hình cũng đề xuất một bước tiền xử lý dữ liệu trước khi đưa vào mô hình học. Mô hình kết hợp giữa học giám sát và bán giám luận văn đề xuất gồm 3 pha như sau: Pha 1: Tiền xử lý dữ liệu: Loại bỏ các trường dữ liệu gây nhiễu, biểu diễn dữ liệu thành dạng dữ liệu rời rạc, đánh trọng số cho các trường dữ liệu. Pha 2: Đào tạo mô hình học lai: Kết hợp mô hình học bán giám sát Self-training và học giám sát dựa trên luật. Pha 3: Phân lớp (gán nhãn) dữ liệu: Phân lớp cho tập dữ liệu test dựa trên mô hình học lai Trong phần tiếp theo, luận văn sẽ làm rõ các pha của mô hình. 22 Mô hình bài toán: 23 Quá trình tiền xử lý dữ liệu đã được áp dụng rộng rãi trong khai phái dữ liệu và các vấn đề phân tích thông kê. Dữ liệu nghiên cứu thường chứa tập các ký tự và thuộc tính liên
tục, các dữ liệu này không phù hợp với phương pháp học quy nạp. Mục đích của quá trình chuẩn hóa dữ liệu là chia các các thuộc tính liên tục thành các thuộc tính không liên tục (rời
rạc) và quá trình này thường được sử dụng như bước đầu tiên trong các hàm tuyến tính hoặc học quy nạp. Kết quả của quá trình rời rạc hóa dữ liệu sẽ biểu diễn các dữ liệu thành các dữ
liệu mà thuật toán có thể hiểu được. Ví dụ: Khách hàng có thuộc tính loại khách hàng bao gồm: Khách hàng cá nhân và
khách hàng doanh nghiệp. Với dữ liệu này, khi đưa vào hệ thống sẽ không hiểu được, phải biểu diễn lại dưới dạng số với các giá trị là number.
Trong mô hình bài toán, quá trình rời rạc hóa dữ liệu gồm 3 bước: Làm sạch dữ liệu: Lựa chọn các thuộc tính có ảnh hưởng tới hành vi của khách
hàng, loại bỏ đi các thuộc tính không cần thiết, gây nhiễu tới kết quả. Dữ liệu hữu Dữ liệu loại khách hàng: Khách hàng cá nhân, khách hàng doanh nghiệp ích bao gồm:
o
o
o Dữ liệu cước phát sinh: Cước phát sinh trong 3 tháng gần nhất
Dữ liệu thuộc tính cuộc gọi: Số cuộc gọi đi, số cuộc gọi đến, số cuộc nhắn tin, số lưu lượng data sử dụng, lượng cuộc gọi đi, thời lượng cuộc gọi đến.
Dữ liệu thanh toán: loại hình thanh toán, tiền nợ. o
o Dữ liệu sử dụng dịch vụ: số ngày hoạt động trong tháng, tình trạng thuê bao
(khóa 1 chiều, khóa 2 chiều, mở 2 chiều). o Dữ liệu gói cước, khuyến mại: Số gói cước đang sử dụng, số tiền khuyến
mại. Biểu diễn các thuộc tính liên tục thành các thuộc tính rời rạc, phù hợp với quá
trình học. Cụ thể là các thuộc tính không phải là số sẽ biểu diễn dưới dạng số.
Đánh trọng số cho các thuộc tính của khách hàng: Thuộc tính quan trọng đánh
trọng số cao hơn so với thuộc tính không quan trọng. Trong mô hình bài toán, dựa vào quá trình phân tích bài toán, miền ứng dụng mà đánh giá thuộc tính nào quan
trọng hơn. Cụ thể, trong miền dữ liệu viễn thông, thuộc tính cuộc gọi và dữ liệu
cước phát sinh là quan trọng nhất, tiếp đó là thuộc tính nợ, dữ liệu sử dụng dịch
vụ, dữ liệu thanh toán, dữ liệu gói cước, khuyến mại, dữ liệu khách hàng. 3.2. Tiền xử lý dữ liệu K-Nearest Neighbors algorithm (KNN) được sử dụng rất phổ biến trong lĩnh vực Data Mining. KNN là phương pháp để phân lớp các đối tượng dựa vào khoảng cách gần nhất giữa
đối tượng cần xếp lớp với tất cả các đối tượng trong Training Data. Một đối tượng được phân lớp dựa vào k láng giềng của nó. K là số nguyên dương
được xác định trước khi thực hiện thuật toán. Người ta thường dùng khoảng cách Euclidean, Cosine để tính khoảng cách giữa các đối tượng. 24 Thuật toán KNN dùng trong phân lớp được mô tả như sau: Xác định giá trị tham số K (số láng giềng gần nhất) Tính khoảng cách giữa đối tượng cần phân lớp với tất cả các đối tượng trong training data (thường sử dụng khoảng cách Euclidean, Cosine…) Sắp xếp khoảng cách theo thứ tự tăng dần và xác định k láng giềng gần nhất với đối tượng cần phần lớp Lấy tất cả các lớp của k láng giềng gần nhất đã xác định Dựa vào phần lớn lớp của láng giềng gần nhất để xác định lớp cho đối tượng.
Trong khuông khổ luận văn này, tác giả lấy k = 1/3 số mẫu có độ đo tương đồng lớn nhất với dữ liệu test làm dữ liệu so sánh và gán nhãn cho dữ liệu test. Một ví dụ đơn giản về phân lớp K-NN được minh họa trong hình 6. Trong đó, các nút tròn màu đỏ thể hiện lớp A, nút tròn màu xanh thể hiện lớp B, nút tròn màu trắng có dấu hỏi là dữ liệu chưa được gán nhãn. Với tham số k=9, thuật toán KNN sẽ tìm 9 nút có khoảng cách gần nút màu trắng nhất. Nút màu trắng có khoảng cách gần nhất tới 7 nút màu đỏ và 2 nút màu xanh, dễ dàng nhận thấy trong hình, nút màu trắng
sẽ có thuộc lớp A (lớp chứa nút màu đỏ). Để chọn được tham số k tốt nhất cho mô hình phân lớp, thuật toán cần được
thực nghiệm trên nhiều giá trị k khác nhau, nhưng với k càng lớn thì độ chính xác càng
cao. với mô hình học không giám sát, các dữ liệu mẫu chưa được gán nhãn. Trong mô hình học có giám sát thì các dữ liệu mẫu đã được gán nhãn. Trong khi Học bán giám sát là kết hợp giữa mô hình học giám sát và mô hình học không + Học giám sát cộng thêm dữ liệu chưa gán nhãn giám sát. Như vậy học bán giám sát được xem là: 25 + Học không giám sát cộng thêm dữ liệu gán nhãn. Học bán giám sát chính là cách học sử dụng thông tin chứa trong cả dữ liệu chưa gán nhãn
và tập dữ liệu huấn luyện.Các thuật toán học bán giám sát có nhiệm vụ chính là mở rộng tập các dữ liệu gán nhãn ban đầu. Hiệu quả của thuật toán phụ thuộc vào chất lượng của các mẫu
gán nhãn được thêm vào ở mỗi vòng lặp và được đánh giá dựa trên hai tiêu chí: Các mẫu thêm vào phải được gán nhãn một cách chính xác.
Các mẫu được thêm vào phải mang lại thông tin hữu ích cho bộ phân lớp (hoặc dữ liệu huấn luyện). Có thể nói rằng, ý tưởng đầu tiên về sử dụng dữ liệu chưa gán nhãn trong phân lớp là
thiết lập self-training. Ý tưởng về self-training xuất hiện từ những năm 1960. Đó là thuật toán bọc (wrapper-algorithm) sử dụng lặp nhiều lần một phương pháp học giám sát. Hình vẽ 7 biểu
diễn một cái nhìn trực quan của thiết lập self-training. Self-training là kỹ thuật học bán giám sát được sử dụng rất phổ biến, với một bộ
phân lớp (classifier) ban đầu được huấn luyện bằng một số lượng nhỏ các dữ liệu gán nhãn. Sau đó, sử dụng bộ phân lớp này để gán nhãn các dữ liệu chưa gán nhãn. Các dữ
liệu được gán nhãn có độ tin cậy cao (vượt trên một ngưỡng nào đó) và nhãn tương ứng của chúng được đưa vào tập huấn luyện (train set). Tiếp đó, bộ phân lớp được học lại trên
tập huấn luyện mới ấy và thủ tục lặp tiếp tục. Ở mỗi vòng lặp, bộ học sẽ chuyển một vài các mẫu có độ tin cậy cao nhất sang tập dữ liệu huấn luyện cùng với các dự đoán phân lớp
của chúng. Tên gọi self-training xuất phát từ việc nó sử dụng dự đoán của chính nó để dạy
chính nó. Sơ đồ thuật toán self-training được mô tả như hình 4: 26 L : Tập các dữ liệu gán nhãn
U : Tập các dữ liệu chưa gán nhãn. - Huấn luyện bộ phân lớp h trên tập dữ liệu huấn luyện L - Sử dụng h để phân lớp dữ liệu trong tập U.
- Tìm tập con U’ của U có độ tin cậy cao nhất
- L ← L + U’
- U ← U – U’ Trong mô hình bài toán, luận văn sử dụng mô hình phân lớp KNN làm bộ gán nhãn nhân. Tại mỗi vòng lặp của Self-training, sẽ lấy 5% dữ liệu có độ chính xác cao nhất để bổ sung vào tập mẫu. Những hệ thống phân lớp đầu tiên là những hệ sử dụng luật phân lớp bằng cách sử dụng người dùng định nghĩa các luật này. Một trong những hệ nổi tiếng nhất là CONSTRUE được
P.J.Hayes và cộng sự (một nhóm nghiên cứu tại đại học Carnegie Mallon University) phát triển vào những năm 1980 để phân lớp các bản tin cho hãng tin Reauter. Hệ thống này sử
dụng luật dưới dạng chuẩn rời nhau. Hệ thống phân lớp dựa trên luật thường cho kết quả tương đối cao trong những trường
hợp người dùng có thể tạo đầy đủ các luật, bao gồm tất cả các trường hợp có thể xảy ra cho bộ
phân lớp. Tuy nhiên, phương pháp này có điểm hạn chế là có thể có những luật mâu thuẫn nhau, hoặc có những trường hợp mà luật bỏ sót. Ngoài ra, khi dữ liệu thay đổi thì có thể phải
cập nhật hoặc sửa đổi lại hệ thống luật phân lớp. Trong mô hình của luận văn, sử dụng thuật toán FOIL để sinh tập các luật. FOIL được đề
xuất và phát triển bởi Quinlan [Quinlan, 1990]. Giả mã của FOIL được giới thiệu trong hình 6 và 7. FOIL học các tập dữ liệu chỉ bao gồm hai lớp, trong đó một lớp được gọi là “tích cực”.
FOIL học mô tả lớp đối với lớp “tích cực” ; Giải thuật FOIL: FOIL (Examples)
11. Pos ← Positive Examples;
12. Neg ← Negative Examples;
13. Learned_rules ←
14. While Pos is not empty then
15. Rule ← Learn-A-Rule (Examples, Neg);
16. learned_rules ← learned_rules Rule; 17. Pos ← Pos – {Positive examples covered by Rule}; 27 18. Examples ← Examples – {any examples covered by Rule}; 19. End while
20. return learned_rules; Giải thuật học 1 luật: Learn-A-Rule (Examples, Neg) 9. Rule ← the most general positive rule;
10. repeat
11. Candidate_cond ← generate candidate conditions for Rule;
12. Best_cond ← max(Foil_Gain);
13. Add Best_cond to the antecedent of Rule;
14. Covered_Neg ← negative examples that are covered by Rule; 15. Until there is no negative examples can be covered;. 16. Return Rule; Trong mô hình lai này, mỗi lớp mẫu “tích cực” sinh ra một tập các luật tương ứng theo FOIL. Các luật này sẽ được sử dụng để phân lớp cho pha sau. Các dữ liệu test mà có độ chính xác cao nhất bổ sung vào tập dữ liệu mẫu trong pha phân lớp self-training sẽ được giữ nguyên nhãn. Tập dữ liệu mẫu được mang ra để sinh các luật trong pha 2. Các dữ liệu test gán nhãn “churn” còn lại trong pha 1 sẽ được phân lớp lại lần 2 theo luật sinh ra trong pha 2 theo các bước sau: o Nếu dữ liệu test mà thỏa mãn được hết các luật của lớp mẫu thì dữ liệu test được gán nhãn “churn” o Ngược lại, dữ liệu gán nhãn nonchurn. Để phân lớp cho các dữ liệu test, mô hình dựa trên nhãn của các lớp mẫu.
Dữ liệu test được phân lớp dựa trên nguyên tắc sau: 28 Tổng kết chƣơng 3 Trong chương 3, luận văn đã mô tả mô hình bài toán kết hợp giữa bán giám sát self-training và học giám sát dựa trên luật, cũng như quá trình thực hiện các pha của mô hình. Trong chương tiếp theo, luận văn trình bày chi tiết quá trình thực nghiệm của
mô hình bài toán. 29 Dựa vào cơ sở lý thuyết và mô hình đề xuất trong chương 3, luận văn tiến hành thực nghiệm việc phân lớp cho các dữ liệu test là các thuê bao trả sau Vinaphone để tìm ra các thuê bao có nguy cơ rời mạng. Đầu vào của hệ thống: o Tập dữ liệu mẫu: 1000 thuê bao trả sau Vinaphone mẫu được gán
nhãn nonchurn và 447 thuê bao trả sau được gán nhãn “churn”. o Tập dữ liệu test: 500 thuê bao trả sau Vinaphone
Đầu ra của hệ thống: Các thuê bao test được gán nhãn “churn”. Quá trình thực nghiệm của luận văn được thực hiện trên máy tính có cấu hình: Chip: Core-i5 , 2.27GHZ Ram: 4GB Hệ điều hành: Windows 7 - 32 bit Công cụ lập trình: Eclipse, java 7, Oracle 11g, Sql Navigator 7.0.
Các công cụ phần mềm và mã nguôn mở được liệt kê trong bảng dưới đây: 4.2.1. Mô tả dữ liệu 1000 thuê bao Vinaphone gán nhãn “nonchurn”, 447 thuê bao
Vinaphone gán nhãn “churn”. Các thuê bao mẫu được gán nhãn dựa theo
dữ liệu thực tế có rời mạng hay không trong tháng 09/2015. 500 thuê bao Vinaphone dùng để test. Dữ liệu của các thuê bao bao gồm: 20 trường thông tin
o Dữ liệu cước trong tháng 06, 07, 08/2015.
o Dữ liệu nợ trong tháng 06, 07, 08/2015 30 o Dữ liệu số cuộc gọi đi trong tháng 07, 08/2015
o Dữ liệu số phút cuộc gọi đi trong tháng 07, 08/2015
o Dữ liệu số lần thanh toán trong tháng 08/2015
o Dữ liệu số cuộc nhắn tin trong tháng 07, 08/2015
o Dữ liệu số cuộc sử dụng data trong tháng 08/2015
o Dữ liệu số dịch vụ giá trị gia tăng trong tháng 08/2015
o Dữ liệu lưu lượng data thực tế sử dụng trong tháng 08/2015
o Dữ liệu loại khách hàng: Khách hàng cá nhân, khách hàng doanh nghiệp o Dữ liệu khuyến mại, gói cước tháng 08/2015
o Dữ liệu số ngày thuê bao hoạt động trong tháng 08/2015
o Dữ liệu kiểu thanh toán của thuê bao: Ezpay, in hóa đơn Dữ liệu của thuê bao sẽ được dùng để dự đoán cho các thuê bao test có nguy cơ rời mạng trong tháng 09/2015. Ví dụ một số trường dữ liệu của thuê bao Trọng số các thuộc tính: 0.1
0.1
0.1
0.15
0.1
0.1
0.05
0.05
0.1
0.05
0.1 cuoc08
cuoc07
cuoc06
no
num_moc
num_sms
num_gtgt
dur_moc
num_acdate
loai_kh
promotion 0.05
0.1
0.1
0.05
0.05
0.1
0.15
0.05
0.15
0.15
0.05 31 4.2.2 . Quá trình thực nghiệm Chuẩn hóa dữ liệu: Các dữ liệu dạng chữ được biểu diễn thành dạng số, cụ thể:
o Khách hàng cá nhân: 1, khách hàng doanh nghiệp: 0
o Có gói cước khuyến mại: 1, không có gói cước khuyến mại: 0
o Kiểu thanh toán: Ezpay: 1, hóa đơn: 0
o Các dữ liệu về cước, nợ, khuyến mại chuẩn hóa chia cho 100000. (do khoảng cách với các dữ liệu còn lại quá lớn). Phân lớp bán giám sát. Lấy 1/3 thuê bao mẫu có độ tương đồng cao nhất với dữ liệu test để xem xét và gán nhãn cho thuê bao test khi phân lớp KNN Tại mỗi vòng lặp Self-training: lấy 5% dữ liệu test có độ chính xác cao nhất để bổ sung vào tập dữ liệu mẫu. Dữ liệu mẫu có độ chính xác cao nhất là dữ liệu có độ chênh lệch giữa thuê
bao gán nhãn mẫu cao nhất. Ví dụ, trong 500 thuê bao có độ tương đồng cao nhất với thuê bao test, có 100 thuê bao gán nhãn “churn” và 400 thuê bao gán nhãn “nonchurn”, thì thuê bao test được gán nhãn “nonchurn”, độ chênh lệch giữa thuê bao gán nhãn mẫu là |100 - 400| = 300. Sinh tập luật: Tập luật sinh ra có dạng:
“IF(điều_kiện) THEN” Ví dụ luật: IF(cuoc08<49000&&no<10000&&accDate < 25) THEN LABLE=’CHURN’ 4.3.1. Đánh giá kết quả thực nghiệm
Tỉ lệ dự đoán được đánh giá bằng tỉ lệ rời mạng đúng (True churn rate - TP) và tỉ lệ rời mạng sai (false churn – FP). Mục tiêu của phương pháp là đạt tỉ lệ TP cao và tỉ
lệ FP thấp. Bảng 3 định nghĩa ma trận về tỉ lệ TP và FP, trong đó, a11 là số churner
được dự đoán đúng, a12 là số churner được dự đoán sai, a21 là số non-churn được dự
đoán đúng và a22 là số non-churn dự đoán sai. Theo ma trận, tỉ lệ TP được định nghĩa
là tỉ lệ các churner được phân lớp đúng, tính theo công thức: Và FP được định nghĩa là tỉ lệ các churner được phân lớp sai, tính theo công thức: 32 Kết quả dự đoán Kết quả thực tế Churn
Non-churn Churn
a11
a22 Non-churn
a12
a21 Trong bài toán phân lớp nhị phân, độ chính xác được tính theo công thức: Ngoài ra, luận văn cũng sử dụng độ đo f1 để đánh tỉ lệ dự đoán đúng cho lớp gán nhãn
“churn” Độ hồi tưởng: Độ đo f1 được tính bằng công thức: Với trọng số Weight2, kết quả thực nghiệm như sau: Độ chính xác: Với trọng số Weight1, kết quả thực nghiệm: 33 Kết quả thực nghiệm cho thấy mô hình lai cho độ chính xác cao hơn so với mô
hình đơn (K-NN và Self-training). Kết quả cũng cho thấy, với trọng số weight2, độ
chính xác cũng cao hơn (trọng số weight2 đánh giá cao các thuộc tính về nợ, cước
của khách hàng hơn so với trọng số weight1). Trong thời gian tới, luận văn thử nghiệm thêm mô hình với các hệ số weight khác nhau, để tìm ra hệ số weight cho kết quả tối ưu hơn. Luận văn cũng nghiên cứu, thử thay đổi mô hình để áp dụng với hiện trạng thực tế của mạng Vinaphone. Trong chương 4, luận văn đã trình bày quá trình thực nghiệm mô hình, các bước thực hiện, kết quả khi áp dụng mô hình. Đồng thời, sử dụng các độ đo
chính xác, độ đo hồi tưởng, độ đo f1 để đánh giá hiệu quả của mô hình. 34 Mahdieh Mozaffari, and Uldoz Abbasi. Improved churn prediction in telecommunication
industry using data mining techniques. Applied Soft Computing Journal 24, no. 4 (2014). classifiers. In Proceedings of the 10th national conference on ARTI CIAL intelligence (pp.
223–228). MIT Press. 35 in Telecommunication Services. Springer-Verlag Berlin Customer Churn Prediction
Heidelberg 2011. confference on systems, man and cyberetics, (SMC), Montreal, Canada, 7-10 october. IEEE. Website tham khảo: https://cgi.csc.liv.ac.uk/~frans/KDD/Software/FOIL_PRM_CPAR/foilPrmCpar.html http://www.saedsayad.com/k_nearest_neighbors.htm http://www.analyticbridge.com/forum/topics/how-to-develop-churn-prediction-model-for-
telecom-company 362.1.2. Mô hình sinh các luật
2.1.3. Phân lớp
2.1.4. Kết quả và đánh giá mô hình
Bảng 3: Tập dữ liệu cho mô hình dự đoán dựa trên luật
Hình 2: So sánh độ AUC giữa các mô hình
Hình 3: So sánh AUC mô hình CRL và DMEL cho tỉ lệ churn rate khác nhau
Hình 4: So sánh AUC cho mô hình CRL và DMEL với tập dữ liệu UCI
Hình 5: Giải thuật sinh luật FOIL
Hình 6: Giải thuật sinh 1 luật FOIL
Hình 7: Mô hình dự đoán lai cua Ying Hwuang và cộng sự
Bảng 4: Tập dữ liệu mô hình Ying Hwuang và cộng sự
Bảng 5: Kết quả mô hình Ying Hwuang và cộng sự sử dụng độ đo AUC
Bảng 6: So sánh mô hình Ying Hwuang và cộng sự với một số mô hình khác
Hình 8: So sánh đƣờng cong ROC, AUC với kỹ thuật phân lớp khác nhau
Hình 9: So sánh hiệu quả của mô hình lai đề xuất và các mô hình lai khác dựa
trên ROC
Chƣơng 3: Mô hình kết hợp giám sát và bán giám sát cho bài toán dự
đoán khách hàng rời mạng
Hình 10: Mô hình kết hợp học giám sát và bán giám sát
3.3. Mô hình học giám sát dựa trên thuật toán K-NN
Hình 11: Một ví dụ về phân lớp KNN
3.4. Mô hình học bán giám sát dựa trên thuật toán self-training
Thuật toán Self-Training
Hình 12: Mô hình học bán giám sát Self-training
Đặt:
Lặp
Hình 13: Sơ đồ thuật toán Self-training
3.5. Mô hình học giám sát dựa trên hệ thống luật:
Hình 14: Giả mã học luật FOIL
Hình 15: Giả mã học 1 luật FOIL
3.6. Phân lớp
Chƣơng 4: Thực nghiệm và đánh giá kết quả
4.1. Môi trƣờng thực nghiệm:
Bảng 7: Phần mềm sử dụng trong luận văn
4.2. Quá trình thực nghiệm
Bảng 8: Bảng mô tả dữ liệu mẫu
WEIGHT1 WEIGHT2
WEIGHT3
DATA
Bảng 9: Trọng số một số thuộc tính dữ liệu
4.3. Kết quả thực nghiệm
Confusion matrix
Bảng 10: Ma trận Confusion
Bảng 11: Kết quả thực nghiệm với trọng số weight2
Bảng 12: Kết quả thực nghiệm với trọng số weight1
4.4. Đánh giá kết quả và hƣớng nghiên cứu tiếp theo
4.5. Tóm tắt chƣơng 4
Tài liệu tham khảo
[Abbas-14] Keramat, Abbas, Rouhollah Jafari-Marandi, M.. Aliannejadi, Iman Ahmadian,
[Au-03] Au, W., Chan, C., & Yao, X. (2003). A novel evolutionary data mining algorithm
with applications to churn prediction. IEEE Transactions on Evolutionary Computation, 7,
532–545.
[Bing-12] Bing Quan Huang, Mohand Tahar Kechadi, Brian Buckley. Customer churn
prediction in telecommunications. Expert Systems with Applications 39 (2012) 1414–1425.
[Bradley-97] Bradley, A. P. (1997). The use of the area under the roc curve in the evaluation
of machine learning algorithms. Pattern Recognition, 30, 1145–1159.
[Burges-98] Burges, C. J. C. (1998). A tutorial on support vector machines for pattern
recognition. Data Mining and Knowledge Discovery, 2(2), 121–167.
[Langley-92] Langley, P., Iba, W., & Thompson, K. (1992). An analysis of Bayesian
[Lee-06] Lee, J.S., & Lee.J.C – 2006 Customer churn prediction by hybrid model.
Proceedings of the second international conference on advanced data mining and applications,
Xi’an, China, August 14-16. Berlin, heidelgerg: Springer-verlag.
[Lejeune-01] Lejeune, M. (2001). Measuring the impact of data mining on churn
management. Internet Research: Electronic Network Applications and Policy, 11(5), 375–387.
[Ngai-08] Eric W. T. Ngai, Li Xiu, Dorothy C. K. Chau. Application of data mining
techniques in customer relationship management A literature review and classification.
[Ngai-09] Ngai, E.W.T, Xiu, L,&Chau.(2009). Application of dataa mining techniques in
customer relatonship management: A literature review and classification Journal of expert
System with Applications, 36, 2592-2602.
[Rumelhart-86] Rumelhart, D., Hinton, G., & Williams, R. (1986). Learning internal
representations by error propagation (Vol. 1). MA: MIT Press.
[SAS-2000] SAS Institute, (2000). Best Price in Churn Prediction, SAS Institute White Paper.
[Shin-06] Shin-Yuan Hung, David C. Yen, Hsiu-Yu Wang. Applying data mining to telecom
churn management. Expert Syst. Appl. 31(3).
[Xia-08] Xia, G, E &dong Jin, W.D (2008). Model of customer churn prediction on support
vector maching. Journal of Systems Enginerring – Theory and Practice.
[Yeshwanth-11] Yeshwanth, V., Raj, V.V. & Saravana, M. (2011). Evolutionary churn
prediction in mobile networks using hybrid learning in Precddding of the twenty-fourth
internatinoal Floriad artificial intelligence research society conference. Palm Beach, Florida,
USA, May 18-20. AAAI Press.
[Ying-13] Ying Huang, M. Tahar Kechadi, An effective hybrid learning system for
telecommunication churn prediction. Expert Systems with Applications 40 (2013) 5635–5647.
[Ying-11] Ying Huang, Bing Quan Huang, M. Tahar Kechadi. A Rule-Based Method for
[Vapnik-98] Vapnik, V.N. (1998). The nature of statistical learning theory (2nd ed., pp. 23–
57)
[Zhang-07] Zhang, Y.M.Qi, J.Y.Shu, H.Y & Cao.J.T(2007): A hybrid KNN-LR classifier
and its application in customer churn prediction. In proceeding of the IEEE international