Danh sách các khách hàng cần xác định phương án áp dụng tối ưu:Bảng 3.3
b. Phân tích dữ liệu:
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 47 M , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Bảng 3.7: Ma trận phân biệt Các ô trống trong ma trận thể hiện giá trị∅.
Hàm phân biệt suy ra từ ma trận phân biệt Bảng 3.7 có dạng như sau:
= ( ∨ ∨ )∧( ∨ ∨ ∨ ∨ )∧( ∨ ∨ ∨ ∨ ∨ ∨ ) ∧( ∨ ∨ ∨ )∧( ∨ ∨ ∨ )∧( ∨ ∨ ∨ ) ∧( ∨ ∨ ∨ )∧( ∨ ∨ ∨ ∨ )∧ ∧( ∨ ∨ ∨ ) ∧( ∨ ∨ ∨ ∨ )∧( ∨ ∨ )∧( ∨ ∨ ∨ ∨ ) ∧( ∨ ∨ )∧( ∨ ∨ ∨ ∨ ∨ ) ⬄ = ∧( ∨ ∨ )∧( ∨ ∨ ∨ )∧( ∨ ∨ ∨ ∨ ) ∧( ∨ ∨ ∨ )∧( ∨ ∨ )∧( ∨ ∨ )
Rút gọn hàm f bằng giải thuật dựa trên ý tưởng của Johnson: - Khởi tạo tập = ∅.
- Đếm sự xuất hiện của các thuộc tính trong f: : 4 lần; : 1 lần; : 2 lần; : 2 lần; : 4 lần; : 4 lần; : 2 lần; : 4 lần.
- Chọn ra một thuộc tính xuất hiện nhiều nhất trong f (4 lần): - = { }
- Loại bỏ các biểu thức có chứa trong f
= ∧( ∨ ∨ ∨ ∨ )∧( ∨ ∨ )
- Tiếp tục đếm sự xuất hiện của các thuộc tính còn lại trong hàm f mới: : 1 lần; : 1 lần; : 1 lần; : 1 lần; : 2 lần; : 1 lần; : 2 lần.
- Chọn ra một thuộc tính xuất hiện nhiều nhất trong f (2 lần): - = { ; }
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 48 =
- Tiếp tục đếm sự xuất hiện của các thuộc tính còn lại trong hàm f mới: : 0 lần; : 1 lần; : 0 lần; : 0 lần; : 0 lần; : 0 lần.
- Chọn ra một thuộc tính xuất hiện nhiều nhất trong f (1 lần): - = { ; ; } - Loại bỏ các biểu thức có chứa trong f = ∅ - Giải thuật kết thúc. Tập R thu được chính là một rút gọn của hàm f = ∧ ∧
Vậy, loại bỏ 5 thuộc tính không quan trọng. 3 thuộc tính quan trọng của quá trình
phân tích đặc trưng khách hàng là { , , } Vector Thuộc tính 1 1 0 1 0 0 0 1 1 0 0 1 1 0 1 0 0 0
Bảng 3.8: Các vector khách hàng sau khi rút gọn thuộc tính
Xây dựng thuật toán quyết định:
1: ( = 1)&( = 1)&( = 0) ℎ = 0.49020 0.44118 0.06863 = 0.255 2: ( = 1)&( = 0)&( = 0) ℎ = 0 0.71429 0.28571 = 0.0875
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 49 3: ( = 0)&( = 1)&( = 1) ℎ = 0.64815 0.18519 0.16667 = 0.135 4: ( = 0)&( = 0)&( = 1) ℎ = 0.52727 0.47273 0 = 0.1375 5: ( = 1)&( = 0)&( = 1) ℎ = 0 0 1 = 0.1 6: ( = 0)&( = 0)&( = 0) ℎ = 0.39474 0.33333 0.27193 = 0.285
Phân loại các mẫu vector khách hàng cần xác định phương án áp dụng tối ưu:
= { , , , , , , } Vector Thuộc tính 1 0 1 0 1 0 1 0 1 1 1 0 0 0 1 1 1 1 1 1 0
Bảng 3.9: Các mẫu khách hàng mục tiêu sau khi rút gọn thuộc tính
Mẫu thường (Regular Patterns): = { (= ), (= )}
Mẫu ẩn (Hidden Patterns): = { ( 5), ( 5), ( 1)}
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 50
= ∪ ∪
Dựa vào thuật toán quyết định, có thể xác định xác suất hậu nghiệm và xác suất lề
cho các mẫu khách hàng thường và khách hàng ẩn
= ∪ = { , , , , }
Các vector được suy ra từ cùng một luật được xem như là cùng loại
RH Xác suất hậu nghiệm (certainty factors) Xác suất lề
( ) , 0 0 1 0.1 , 0.49020 0.44118 0.06863 0.255 0.52727 0.47273 0 0.1375 Bảng 3.10: Các xác suất của các mẫu khách hàng thường và ẩn c. Khuyến nghị
Đối với các mẫu khách hàng thuộc tập RH, tính giá trị Posterior Expected Opportunity Loss cho từng mẫu khách hàng:
( ) ( ) ( ) ( ) ( )
, 3 1 1 0 2
, 2.41179 2.81375 3.50003 3.67650 3.02944 2.36365 2.94546 3.69089 3.94546 3.10908
Bảng 3.11: Giá trị Posterior EOL của các mẫu khách hàng tập RH
Dựa vào Bảng 3.11, lựa chọn phương án tốt cho các khách hàng trong tập RH:
Phương án
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 51
d. Xử lý mẫu khách hàng không xác định:
Tính các giá trị Expected Opportunity Loss của từng phương án:
Phương án ( ) 2.52750 2.47750 3.02500 2.99250 2.83250
Bảng 3.13: Giá trị EOL của các phương án đề xuất
Đối với các mẫu khách hàng thuộc tập K (khách hàng không xác định), ta chọn
phương án theo phương pháp Minimize Expected Opportunity Loss.
Vậy, phương án áp dụng cho các mẫu khách hàng tập K là
Kết luận, ta có được kết quảcác phương án tốt áp dụng cho các mẫu khách hàng:
Phương án
Bảng 3.14: Kết quảphương án áp dụng cho các khách hàng
e. Kiểm chứng mô hình G(m,n)
Do các mẫu khách hàng không xác định (trong tập K) được chỉ định phương án dựa trên kỹ thuật Minimize Expected Opportunity Loss nên bỏ quả không xét tới hiệu quả của
các phương án áp dụng cho các khách hàng loại này
Cần thiết kiểm tra các vector khách hàng thường và ẩn (trong tập RH)
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 52 , 0 0.10000 0
, 2.41179 0.25500 0.61501 2.36365 0.13750 0.32501
p = 0.4925 EOL = 0.94002
Bảng 3.15: Giá trị Weighted Opportunity Loss của các khách hàng tập RH
Các xác suất ( ) cho thấy khảnăng xuất hiện của vector trong tập dữ liệu. p = 1 ( ) = 2.47750
p = 0.4925 ∗ ( ) = 0.4925∗2.47750 = 1.955
EOL = 0.94002 < 1.955 của phương pháp Minimize Expected Opportunity Loss. Vậy, có thể khẳng định mô hình G(m, n) cho kết quả tốt hơn Minimize Expected Opportunity
Loss.
3.4 THỰC NGHIỆM
3.4.1 Dữ liệu thực nghiệm
Dữ liệu thực nghiệm của chương trình do anh Nguyễn Thành Trung của công ty Trách nhiệm hữu hạn tin học KEY cung cấp.
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 53
Hình 3.2:Các đặc trưng của học viên
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 54
Hình 3.4:Các phương án tư vấn đề xuất
Công ty Trách nhiệm hữu hạn tin học KEY. Website: www.key.com.vn. Địa chỉđăng
ký kinh doanh: số 409 Nguyễn Sơn, phường Phú Thạnh, quận Tân Phú, thành phố Hồ Chí Minh. Công ty thành lập năm 2003, có 3 chi nhánh, mỗi chi nhánh khoảng 50 nhân viên, hoạt động trong các lĩnh vực đào tạo, phần mềm, phần cứng máy tính.
Dữ liệu lấy từ thực tếvà được tiền xửlý để giải quyết bài toán xác định đặc trưng của các học viên tới công ty đăng ký khóa học để đưa ra phương án tư vấn việc lựa chọn khóa học phù hợp với từng học viên.
Dữ liệu thử nghiệm được lưu trữ trên file Microsoft Access 2003 (*.mdb) với dung
lượng khoảng 1 MB. Dữ liệu gồm 5 bảng: Attributes, Customer_Data, Profits, Solutions, Types. Mỗi bảng có cấu trúc và nội dung như sau:
Bảng Attributes. Cấu trúc 4 cột: ID, Name, Value 0, Value 1. Nội dung: lưu trữ thông tin chi tiết về38 đặc trưng học viên.
Bảng Customer_Data. Cấu trúc 1 cột: Characteristics. Nội dung: chứa 12189 bảng tin
(records) đại diện cho 12189 học viên. Mỗi bảng tin lưu trữ một chuỗi nhị phân có chiều dài
là 38 đại diện cho 38 đặc trưng (thuộc tính) của học viên.
Bảng Types. Cấu trúc 3 cột: ID, Name, Description. Nội dung: mô tả các loại khách hàng (học viên). Có 4 loại khách hàng: Khách hàng có tiềm năng lớn; Khách hàng có tiềm
năng trung bình; Khách hàng bình thường; Khách hàng ít tiềm năng
Bảng Solutions. Cấu trúc 3 cột: ID, Name, Description. Nội dung: mô tảcác phương án tư vấn. Có 6 phương án tư vấn được đề xuất: Tư vấn cho nhóm khách hàng đặt vấn đề
học phí lên hàng đầu; Tư vấn cho nhóm khách hàng đặt vấn đề trình độ giảng viên lên hàng
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 55
khách hàng đặt vấn đề về các dịch vụ cộng thêm lên hàng đầu; Tư vấn cho nhóm khách hàng
đặt vấn đề phương pháp giảng dạy và thời gian biểu lên hàng đầu; Tư vấn cho nhóm khách
hàng đặt vấn đềcơ hội việc làm sau khi hoàn tất khoá học lên hàng đầu.
Bảng Profits. Cấu trúc 3 cột: Solution, Type, Profit. Nội dung: mô tả ước lượng lợi nhuận của từng phương án khi áp dụng trên một loại khách hàng cụ thể. Đơn vị tính: trăm
nghìn đồng.
Do đặc điểm của nguồn dữ liệu cung cấp không phù hợp hoàn toàn với mục đích
nghiên cứu nên cần sử dụng một bộ công cụ sinh dữ liệu ngẫu nhiên. Để phù hợp với dữ liệu thực tế, dữ liệu ngẫu nhiên sẽđược phát sinh theo phân bố chuẩn (Normal Distribution).
3.4.2 Chương trình mô phỏng
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 56
Chương trình mô phỏng quá trình hoạt động của mô hình G(m, n) được cài đặt thử
nghiệm trên máy tính cá nhân có cấu hình:
- Hệđiều hành Windows XP Professional, Service Pack 3. - Bộ nhớ RAM 1GB.
- Bộ vi xử lý Intel(R) Core(TM) Duo CPU, T2450 @2.00GHz (2 CPUs) - Dung lượng đĩa cứng HDD 140GB.
Ngôn ngữ lập trình C#.NET trên Visual Studio 2008.
Chương trình sử dụng bộ thư viện Troschuetz.Random để phát sinh những dữ liệu còn thiếu theo các dạng phân phối phù hợp. Troschuetz.Random hoàn toàn miễn phí, được
đăng ký bản quyền GNU Lesser General Public License. Có thể tải toàn bộ mã nguồn và
chương trình mô phỏng quá trình phát sinh các dạng phân phối tại địa chỉ
http://www.codeproject.com/KB/recipes/Random.aspx hoặc
http://152.66.235.202/~tes/elte/!sav/terinformatika/taverzekelt_felvetelek_elemzese/ MathNet.Iridium-2007.3.8/Source/Library/Distributions/
Có 2 hình thức nạp dữ liệu cho chương trình: a. Nạp dữ liệu ngẫu nhiên:
Tất cảcác thông tin đều được phát sinh ngẫu nhiên theo yêu cầu người dùng.
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 57
Các thông số cho quá trình nạp dữ liệu ngẫu nhiên được đưa vào chương trình thông qua một file văn bản Text Document (*.txt). Cấu trúc file văn bản này như sau:
CUSTOMER TYPES
<số lượng loại khách hàng>
SOLUTIONS
<số lượng phương án đề xuất>
ATTRIBUTES
<số lượng đặc trưng (thuộc tính) khách hàng>
RECORDS
<số lượng bảng tin trong tập dữ liệu>
PROFITS Min
<ước lượng lợi nhuận nhỏ nhất>
Max
<ước lượng lợi nhuận lớn nhất>
b. Nạp dữ liệu từ dữ liệu thực nghiệm:
Dữ liệu thực nghiệm trên file MS Access (*.mdb) được đưa vào chương trình. Một số
phần thông tin thiếu sót trong bộ dữ liệu thực nghiệm sẽ được bổ sung đầy đủ bằng cách phát sinh dữ liệu ngẫu nhiên.
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 58
Hình 3.7: Dữ liệu thực nghiệm được nạp vào chương trình
Các mẫu khách hàng cần xác định mục tiêu thì được nạp thủ công trên giao diện
chương trình hoặc từ file văn bản Text Document (*.txt). Các mẫu khách hàng này cần có vector thuộc tính dài đúng bằng với vector thuộc tính của các khách hàng trong tập dữ liệu
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 59
Hình 3.8: Cách nạp các vector khách hàng mục tiêu vào chương trình mô phỏng.
Hình 3.9:File lưu trữ một số mẫu khách hàng mục tiêu
Đưa một vector trong Bảng Support vào Bảng Mục tiêu Đưa tất cả vector trong Bảng Support vào Bảng Mục tiêu Bảng Mục tiêu có thể
thêm, xóa, chỉnh sửa theo ý muốn của người dùng
Xóa một vector trong Bảng Mục tiêu
Nạp vector mục tiêu từ file
Khóa luận tốt nghiệp Cửnhân tài năng 02 – Khoa học máy tính Trang 60
3.5 KẾT QUẢ
Mô hình phân tích đặc trưng G(m,n) kế thừa kỹ thuật tính toán của Paul E. Green nên cũng cải thiện được chỉ số EOL so với phương pháp tính Minimize Expected Opportunity
Loss.
G(m,n) phát triển trên cơ sở mở rộng mô hình phân tích đặc trưng G(2,2) của Paul E. Green. Giờ đây, mô hình có thể áp dụng cho các bài toán có nhiều hơn 2 phương án và nhiều loại khách hàng khác nhau.
Bên cạnh đó, việc áp dụng kỹ thuật tập thô kết hợp với công thức Bayes đã khắc phục
được tình trạng khó khăn khi chương trình gặp một khách hàng hoàn toàn mới, góp phần vào việc tối ưu hóa bài toán lựa chọn phương án thích hợp cho từng loại khách hàng.
Đồng thời, việc tìm ra được các thuộc tính tối ưu, quan trọng với quá trình phân tích, giúp giảm thiểu chi phí thu thập thông tin không cần thiết nâng cao hiệu suất xử lý cho mô hình.
Khóa luận tốt nghiệp Cử nhân tài năng 02 – Khoa học máy tính Trang 61
CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
4.1 KẾT LUẬN
Mô hình G(m,n) kế thừa ý tưởng của Paul E. Green kết hợp với việc sử dụng những
phương pháp hiên đại của Khai thác dữ liệu đã giải quyết một cách tương đối tốt bài toán
phân tích đặc trưng khách hàng. Kết quả của các chứng minh lý thuyết và thực nghiệm đã chỉ ra nhiều điểm tích cực của mô hình phân tích đặc trưng G(m,n):
- Xây dựng trên cơ sở mô hình của Green, nên mô hình G(m,n) cũng cải thiện được
đáng kể giá trị Expected Opportunity Loss. Các thông tin bổ sung về các thuộc
tính khách hàng được đưa vào trong quá trình phân tích, tuy phức tạp nhưng chúng đã làm giảm thiểu thiệt hại trong những quyết định mang tính rủi ro cao. - Việc áp dụng kỹ thuật phân lớp Bayes đã giải quyết được vấn đề khó khăn trong
phân loại khách hàng. Đó là áp dụng mô hình hiện tại trên nhiều đặc trưng khách hàng và nhiều phương án áp dụng.
- Lý thuyết tập thô cho thấy đây thực sự là một công cụ tốt trong việc dự đoán phương án áp dụng cho các vector khách hàng mới không có trong tập dữ liệu. - Lý thuyết tập thô cũng giúp xác định các thuộc tính quan trọng góp phần giảm
thiểu chi phí thu thập một sốthông tin khách hàng dư thừa, không cần thiết và xác
định quy luật cho tập dữ liệu.
Tuy nhiên, bên cạnh những nét tích cực, mô hình G(m,n) vẫn còn tồn đọng một số
vấn đề cần được khắc phục:
- Tập giá trị của các thuộc tính khách trong mô hình hiện tại chỉ là {0,1} không liên tục nên không thể phản ánh một cách đúng đắn nhất thực tế. Những thuộc tính khách hàng nhiều khi rất mơ hồ và không thể xác định một cách chính xác là
khách hàng đó có hay không có một thuộc tính.
- Áp dụng kỹ thuật Minimize Expected Opportunity Loss cho các mẫu khách hàng
không xác định (Unknown Patterns) thực sự chỉ là giải pháp tạm thời, không hiệu quả và mang tính rủi ro khá cao.
- Dữ liệu thực nghiệm chủ yếu là do sinh ngẫu nhiên, chưa bám sát đặc điểm, nhu cầu thực tế.
Khóa luận tốt nghiệp Cử nhân tài năng 02 – Khoa học máy tính Trang 62
4.2 HƯỚNG PHÁT TRIỂN
Đề tài đã giới thiệu một cách tiếp cận mới là áp dụng lý thuyết Tập thô và kỹ thuật Bayes của lĩnh vực Khoa học máy tính vào giải quyết vấn đề điển hình trong marketing là
phân tích đặc trưng khách hàng. Tuy còn gặp nhiều khó khăn, nhưng mô hình phân tích đặc
trưng khách hàng G(m,n) đã chứng minh được tính hiệu quả của mình, làm nền tảng bước
đầu cho việc phát triển mô hình:
- Trong tương lai, việc áp dụng lý thuyết tập mờ (fuzzy set) vào trong biểu diễn giá trị các thuộc tính sẽ có thể ít nhiều gia tăng tính chính xác của mô hình về sau. - Bài toán rút gọn thuộc tính luôn là bài toán nan giải trong lý thuyết tập thô. Tìm ra
phương pháp rút gọn thuộc tính hữu hiệu sẽ góp phần không nhỏ vào việc hoàn thiện mô hình G(m,n).
- Hiện tại, vẫn chưa có cách nào để tìm kiếm phương án tối ưu cho các mẫu khách
hàng không xác định (Unknown Patterns). Phát hiện ra phương án tốt cho các khách hàng loại này sẽ là một bước tiến lớn của mô hình phân tích đặc trưng.
- Mô hình G(m,n) gồm nhiều bộ phận cấu thành. Trong đó, có một số bộ phận và tác vụ có thểđược xửlý đồng thời mà không cần quan tâm đến kết quả của các bộ
phận khác. Do vậy, hoàn toàn có thể phát triển mô hình G(m,n) trên các hệ thống