Với cơ sở dữ liệu càng ngày càng lớn thì việc sử dụng thì việc sử dụng luật kết hợp trong khai mỏ dữ liệu càng ngày được nhiều cơ quan như Ngân hàng, Siêu thị, Công ty viễn thông… sử dụn
Trang 1ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT
Trang 3CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT 1
MỤC LỤC 1
Lời nói đầu 1
Trong xã hội ngày nay có rất nhiều cơ quan chức năng thực hiện lưu trữ cơ sở dữ liệu trong quá trình làm việc của cơ quan, nhằm khai thác trên cơ sở dữ liệu đó để rút ra những kinh nghiệm quí để thực hiện công việc một cách có hiệu quả Với cơ sở dữ liệu càng ngày càng lớn thì việc sử dụng thì việc sử dụng luật kết hợp trong khai mỏ dữ liệu càng ngày được nhiều cơ quan như Ngân hàng, Siêu thị, Công ty viễn thông… sử dụng 1
Trong giới hạn thời gian cho phép bài thu hoạch này em tìm hiểu khái quát về khai mỏ dữ liệu, áp dụng khai mỏ dữ liệu trong thực tế dùng luật kết hợp, nêu ra một số ứng dụng thực tế sử dụng khai mỏ dữ liệu hiện nay và cách sử dụng công cụ mã nguồn mở WEKA tìm luật kết hợp 1
Em xin chân thành cảm ơn thầy GS.TSKH Hoàng Kiếm đã hướng dẫn cung cấp tài liệu trong suốt quá trình học tập môn học cũng như quá trình làm bài thu hoạch này 1
Phần I Tổng quan về dữ liệu 1
I Đặt vấn đề 1
II Khai phá tri thức và phát hiện tri thức 1
III Quá trình phát hiện tri thức từ cơ sở dữ liệu 2
1 Xác định bài toán 3
2 Thu thập và tiền xử lý 3
3 Khai mỏ dữ liệu 4
4 Phát biểu và đánh giá kết quả 4
5 Sử dụng tri thức đã phát hiện 4
Phần II Khai mỏ dữ liệu 5
I Khai mỏ dữ liệu là gì? 5
1 Khái niệm 5
II Khai mỏ dữ liệu có những lợi ích gì? 5
III Các bước của quá trình khai mỏ dữ liệu 5
IV Các kỹ thuật khai mỏ dữ liệu 7
1 Kỹ thuật khai mỏ dữ liệu mô tả 7
2 Kỹ thuật khai mỏ dữ liệu dự đoán 7
V Nhiệm vụ chính của khai mỏ dữ liệu 7
1 Phân lớp (Classification) 8
2 Hồi quy (Regression) 8
3 Gom nhóm (Clustering) 8
4 Tổng hợp (Summarization) 8
5 Mô hình ràng buộc (Dependency modeling) 8
6 Dò tìm biến đổi và độ lệch (Change and Deviation Dectection) 8
VI Các phương pháp khai mỏ dữ liệu 9
1 Các thành phần của giải thuật khai mỏ dữ liệu 9
2 Một số phương pháp khai thác dữ liệu phổ biến 10
VII Ứng dụng của khai mỏ dữ liệu 11
VIII Một số thách thức đặt ra cho quá trình khai mỏ dữ liệu 12
Trang 41 Một số khái niệm 13
II Một số loại luật kết hợp 14
III Thuật toán sinh các luật kết hợp 14
Phần IV Một số ứng dụng khai mỏ dữ liệu trong thực tế 20
I Dự đoán và cảnh báo rủi ro tín dụng bằng phương pháp khai phá tri thức từ dữ liệu.20 1 Khái niệm rủi ro tín dụng 20
2 Dự đoán rủi ro tín dụng 20
3 Thử nghiệm dự đoán rủi ro tín dụng 21
II Ứng dụng khai mỏ dữ liệu trong viễn thông 22
1 Các dữ liệu chính trong viễn thông 22
2 Ứng dụng phát hiện gian lận 23
3 Ứng dụng quản lý và chăm sóc khách hàng 23
4 Phát hiện và cô lập lỗi trên hệ thống mạng viễn thông 24
III Ứng dụng khai mỏ dữ liệu trong quản lý bán hàng tại siêu thị 24
Phần V Công cụ WEKA tìm luật kết hợp 26
I Tạo tập tin mở bằng WEKA 26
Ứng dụng với dữ liệu KHÁCH HÀNG (KH.arff) Mở bằng wordpad như sau: 26
26 * Cách tạo tập tin KH.arff 27
II Tìm luật kết hợp bằng WEKA 27
Kết quả31 31 Phần VI Tài liệu tham khảo 1
1 Bài giảng CNTT& ứng dụng , GS.TSKH Hoàng Kiếm, ĐHQG TpHCM 1
Trang 5-0o0 -Trong xã hội ngày nay có rất nhiều cơ quan chức năng thực hiện lưu trữ cơ sở
dữ liệu trong quá trình làm việc của cơ quan, nhằm khai thác trên cơ sở dữ liệu
đó để rút ra những kinh nghiệm quí để thực hiện công việc một cách có hiệu quả Với cơ sở dữ liệu càng ngày càng lớn thì việc sử dụng thì việc sử dụng luật kết hợp trong khai mỏ dữ liệu càng ngày được nhiều cơ quan như Ngân hàng, Siêu thị, Công ty viễn thông… sử dụng
Trong giới hạn thời gian cho phép bài thu hoạch này em tìm hiểu khái quát về khai mỏ dữ liệu, áp dụng khai mỏ dữ liệu trong thực tế dùng luật kết hợp, nêu ra một số ứng dụng thực tế sử dụng khai mỏ dữ liệu hiện nay và cách sử dụng công cụ mã nguồn mở WEKA tìm luật kết hợp
Em xin chân thành cảm ơn thầy GS.TSKH Hoàng Kiếm đã hướng dẫn cung cấp tài liệu trong suốt quá trình học tập môn học cũng như quá trình làm bài thu hoạch này
Trang 6Phần I Tổng quan về dữ liệu
I Đặt vấn đề
Lĩnh vực khoa học kỹ thuật ngày càng phát triển, trong đó lĩnh vực công nghệ thông tin cũng phát triển vượt bậc, được ứng dụng nhiều trong các lĩnh vực trong xã hội như: Y tế, giáo dục, viễn thông, tài chính, kinh doanh…Nó trở thành lĩnh vực không thể thiếu trong đời sống con người Ngày này con người đã phát hiện nhiều công cụ tin học để lưu trữ xử lý dữ liệu ngày càng hiện đại tinh vi và với sự phát triển mạnh mẽ của công nghệ điện tử tạo ra các bộ nhớ có dung lượng lớn, bộ
xử lý tốc độ cao cùng với các hệ thống mạng viễn thông, người ta đã xây dựng các
hệ thống thông tin nhằm tự động hóa mọi hoạt động kinh doanh của mình Điều này
đã tạo ra một dòng dữ liệu tăng lên không ngừng vì ngay từ các giao dịch đơn giản nhất như một cuộc gọi điện thoại, kiểm tra sức khỏe, bán hàng, sử dụng thẻ tín dụng, v.v… đều được ghi vào trong máy tính Cho đến nay, con số này đã trở nên khổng lồ, bao gồm các cơ sở dữ liệu cực lớn cỡ gigabytes và thậm chí terabytes lưu trữ các dữ liệu kinh doanh, ví dụ như dữ liệu thông tin khách hàng, dữ liệu lịch sử các giao dịch, dữ liệu bán hàng, dữ liệu các tài khoản, các khoản vay, sử dụng vốn,
… Nhiều hệ quản trị cơ sở dữ liệu mạnh với các công cụ phong phú và thuận tiện đã giúp con người khai thác có hiệu quả các nguồn tài nguyên dữ liệu Mô hình cơ sở
dữ liệu quan hệ và ngôn ngữ vấn đáp chuẩn (SQL) đã có vai trò hết sức quan trọng trong việc tổ chức và khai thác các cơ sở dữ liệu đó Cho đến nay, không một tổ chức kinh tế nào là không sử dụng các hệ quản trị cơ sở dữ liệu và các hệ công cụ báo cáo, ngôn ngữ hỏi đáp nhằm khai thác các cơ sở dữ liệu phục vụ cho hoạt động tác nghiệp của mình
Với bài tìm hiểu này nói về một số ứng dụng trong thực tế xã hội áp dụng khai mỏ dữ liệu để thực hiện công việc một cách hiệu quả hơn
II Khai phá tri thức và phát hiện tri thức
Yếu tố thành công trong mọi hoạt động kinh doanh ngày nay là việc biết sử dụng thông tin một cách có hiệu quả Điều đó có nghĩa là từ các dữ liệu sẵn có, phải tìm ra những thông tin tiềm ẩn có giá trị mà trước đó chưa được phát hiện, tìm ra những xu hướng phát triển và những yếu tố tác động lên chúng Thực hiện công việc
đó chính là thực hiện quá trình phát hiện tri thức trong cơ sở dữ liệu (Knowledge Discovery in Database – KDD) mà trong đó kỹ thuật cho phép ta lấy được các tri thức chính là kỹ thuật khai mỏ dữ liệu (data mining)
Như John Naisbett đã nói “Chúng ta đang chìm ngập trong dữ liệu mà vẫn
đói tri thức” Dữ liệu thường được cho bởi các giá trị mô tả các sự kiện, hiện tượng
cụ thể Còn tri thức (knowledge) là gì? Có thể có những định nghĩa rõ ràng để phân biệt các khái niệm dữ liệu, thông tin và tri thức hay không? Khó mà định nghĩa chính xác nhưng phân biệt chúng trong những ngữ cảnh nhất định là rất cần thiết và
có thể làm được Thông tin là một khái niệm rất rộng, khó có thể đưa ra một định
Trang 7nghĩa chính xác cho khái niệm này Cũng không thể định nghĩa cho khái niệm tri thức cho dù chỉ hạn chế trong phạm vi những tri thức được chiết xuất từ các CSDL Tuy nhiên, ta có thể hiểu tri thức là một biểu thức trong một ngôn ngữ nào đó diễn
tả một (hoặc nhiều) mối quan hệ giữa các thuộc tính trong các dữ liệu đó Các ngôn ngữ thường được dùng để biểu diễn tri thức (trong việc phát hiện tri thức từ các CSDL) là các khung (frames), các cây và đồ thị, các luật (rules), các công thức trong ngôn ngữ logic mệnh đề hoặc tân từ cấp một, các hệ thống phương trình, v.v…, ví
dụ như ta có các luật mô tả các thuộc tính của dữ liệu, các mẫu thường xuyên xảy ra, các nhóm đối tượng trong cơ sở dữ liệu, v.v…
Nếu quan niệm tri thức là mối quan hệ của các mẫu giữa các phần tử dữ liệu thì quá trình phát hiện tri thức chỉ toàn bộ quá trình chiết xuất tri thức từ cơ sở dữ liệu, có nhiều giai đoạn khác nhau như: tìm và phát hiện vấn đề, thu thập và tiền xử
lý dữ liệu, phát hiện tri thức, minh họa và đánh giá tri thức đã phát hiện và đưa kết quả vào thực tế
So sánh khai mỏ dữ liệu và phát hiện tri thức có những điểm khác nhau về mặt ngữ nghĩa, nhưng thực tế ta thấy khai mỏ dữ liệu là chỉ một giai đoạn phát hiện tri thức trong một chuỗi các giai đoạn quá trình phát hiện tri thức trong cơ sở dữ liệu Tuy nhiên đây là giai đoạn chủ chốt đóng vai trò chính tạo nên tính đa ngành của phát hiện tri thức trong cơ sở dữ liệu
III Quá trình phát hiện tri thức từ cơ sở dữ liệu
Phát hiện tri thức từ cơ sở dữ liệu sử dụng nhiều phương pháp và công cụ tin học nhưng yếu tố con người chiếm vị trí quan trọng Nó không phải là một hệ thống
tự động mà kết hợp nhiều hoạt động tương tác thường xuyên với nhau giữa con người và cơ sở dữ liệu có sự hỗ trợ của công cụ tin học
Trang 8Mặc dù có 5 giai đoạn như trên( hình 1.1) xong quá trình phát hiện tri thức từ
cơ sở dữ liệu là 1 quá trình tương tác và lặp đi lặp lại theo kiểu xoắn chôn ốc, trong
đó lần lặp sau hoàn chỉnh hơn lần lặp trước Ngoài ra giai đoạn sau lại dựa trên kết quả thu được của giai đoạn trước theo kiểu thác nước Đây là một quá trình biện chứng mang tính chất học của quá trình phát hiện tri thức và là phương pháp luận trong việc phát hiện tri thức Các giai đoạn đó sẽ được trình bày cụ thể như sau:
1 Xác định bài toán
Xác định bài toán là bước đầu tiên trong quá trình phát hiện tri thức, giai đoạn này định hình mục đích xác định yêu cầu và xây dụng bài toán tổng quát Giúp định hướng cho giai đoạn tiếp theo thu thập và tiền xử lý dữ liệu
2 Thu thập và tiền xử lý
Các cơ sở dữ liệu thu được thường chứa rất nhiều thuộc tính nhưng lại không đầy đủ, không thuần nhất, có nhiều lỗi và các giá trị đặc biệt Vì vậy giai đoạn thu thập và tiền xử lý dữ liệu trở nên rất quan trọng trong quá trình phát hiện tri thức từcơ sở dữ liệu Có thể nói giai đoạn này chiếm từ 70%-80% giá thành trong toàn
bộ bài toán Người ta chia giai đoạn và tiền xử lý dữ liệu như: Gom dữ liệu, chọn dữ liệu,làm sạch, mã hoá dữ liệu, làm giàu, đánh giá và trình diễn dữ liệu
Xác định bài toán
Thu thập và tiền xử lý dữ liệu
Khai mỏ dữ liệu
Chiết xuất tri thức
Phát biểu kết quả và đánh giá
Chiết xuất tri thức
Sử dụng tri thức và phát hiện được
Chiết xuất tri thứcHình 1.1
Trang 93 Khai mỏ dữ liệu
Giai đoạn khai thác dữ liệu được bắt đầu sau khi dữ liệu đã được thu thập và tiến hành xử lý Trong giai đoạn này, công việc chủ yếu là xác định được bài toán khai mỏ dữ liệu, tiến hành lựa chọn các phương pháp khai thác phù hợp với dữ liệu
có được và tách ta các tri thức cần thiết Là giai đoạn thiết yếu, trong đó các phương pháp thông minh sẽ được áp dụng để trích xuất ra các mẩu dữ liệu
4 Phát biểu và đánh giá kết quả
Các tri thức phát hiện từ cơ sở dữ liệu cần được tổng hợp dưới dạng các báocáo phục vụ cho các mục đích hỗ trợ các quyết định khác nhau.Do nhiều phương pháp khai thác có thể được áp dụng nên các kết quả có mức độ tốt, xấu khác nhau Việc đánh giá các kết quả thu được là cần thiết, Các tri thức phát hiện từ cơ sở dữ liệu cần được tổng hợp dưới dạng các báo cáo phục vụ cho các mục đích hỗ trợ các quyết định khác nhau Do nhiều phương pháp khai thác có thể được áp dụng nên các kết quả có mức độ tốt, xấu khác nhau Việc đánh giá các kết quả thu được là cần thiết, giúp tạo cơ sở cho những quyết định chiến lược Thông thường, chúng được tổng hợp, so sánh bằng các biểu đồ và được kiểm nghiệm, tin học
5 Sử dụng tri thức đã phát hiện
Củng cố, tinh chế các tri thức đã được phát hiện Kết hợp các tri thức thành
hệ thống Giải quyết các xung đột tiềm tàng trong tri thức khai thác được Sau đó tri thức được chuẩn bị sẵn sàng cho ứng dụng.Các kết quả của quá trình phát hiện tri thức có thể được đưa vào ứng dụng trong những lĩnh vực khác nhau Do các kết quả
có thể là các dự báo hoặc các mô tả nên chúng có thể được đưa vào các hệ thống hỗ trợ ra quyết định nhằm tự động hoá quá trình này
Trang 10Phần II Khai mỏ dữ liệu
I Khai mỏ dữ liệu là gì?
1 Khái niệm
Khai mỏ dữ liệu là một khái niệm ra đời vào những năm cuối của thập kỷ 80
Nó bao hàm một loạt các kỹ thuật nhằm phát hiện ra các thông tin có giá trị tiềm ẩn trong các tập dữ liệu lớn (các kho dữ liệu) Về bản chất, khai mỏ dữ liệu liên quan đến việc phân tích các dữ liệu và sử dụng các kỹ thuật để tìm ra các mẫu hình có tính chính quy (regularities) trong tập dữ liệu
Năm 1989, Fayyad, Piatestsky-Shapiro và Smyth đã dùng khái niệm Phát hiện tri thức trong cơ sở dữ liệu (Kownledge Discovery in Database – KDD) để chỉ toàn bộ quá trình phát hiện các tri thức có ích từ các tập dữ liệu lớn Trong đó, khai
mỏ dữ liệu là một bước đặc biệt trong toàn bộ quá trình, sử dụng các giải thuật đặc biệt để chiết xuất ra các mẫu (pattern) (hay các mô hình) từ dữ liệu
II Khai mỏ dữ liệu có những lợi ích gì?
- Cung cấp tri thức hỗ trợ ra quyết định
- Dự báo
- Khái quát dữ liệu
- Là một mô hình thể hiện lợi ích của KPDL trong việc phân tích và ra quyết định cho việc ra tiếp thị của một loại sản phẩm nào đó
III Các bước của quá trình khai mỏ dữ liệu
Các giải thuật khai mỏ dữ liệu thường được mô tả như những chương trình hoạt động trực tiếp trên tệp dữ liệu Với các phương pháp học máy và thống kê trước đây, thường thì bước đầu tiên là các giải thuật nạp toàn bộ tệp dữ liệu vào trong bộ nhớ Khi chuyển sang các ứng dụng công nghiệp liên quan đến việc khai phá các kho dữ liệu lớn, mô hình này không thể đáp ứng được Không chỉ bởi vì nó không thể nạp hết dữ liệu vào trong bộ nhớ mà còn vì khó có thể chiết xuất dữ liệu
ra các tệp đơn giản để phân tích được
Quá trình xử lý khai mỏ dữ liệu bắt đầu bằng cách xác định chính xác vấn đề cần giải quyết Sau đó sẽ xác định các dữ liệu liên quan dùng để xây dựng giải pháp Bước tiếp theo là thu thập các dữ liệu có liên quan và xử lý chúng thành dạng sao cho giải thuật khai mỏ dữ liệu có thể hiểu được Về lý thuyết thì có vẻ rất đơn giản nhưng khi thực hiện thì đây thực sự là một quá trình rất khó khăn, gặp phải rất nhiều vướng mắc như: các dữ liệu phải được sao ra nhiều bản (nếu được chiết xuất vào các tệp), quản lý tập các tệp dữ liệu, phải lặp đi lặp lại nhiều lần toàn bộ quá trình (nếu mô hình dữ liệu thay đổi), v.v…
Sẽ là quá cồng kềnh với một giải thuật khai mỏ dữ liệu nều phải truy nhập vào toàn
bộ nội dung của CSDL và làm những việc như trên Vả lại, điều này cũng không cần
Trang 11thiết Có rất nhiều giải thuật khai mỏ dữ liệu thực hiện dựa trên những thống kê tóm tắt khá đơn giản của CSDL, khi mà toàn bộ thông tin trong CSDL là quá dư thừa đối với mục đích của việc khai mỏ dữ liệu
Bước tiếp theo là chọn thuật toán khai mỏ dữ liệu thích hợp và thực hiện việc khai mỏ dữ liệu để tìm được các mẫu (pattern) có ý nghĩa dưới dạng biểu diễn tương ứng với các ý nghĩa đó (thường được biểu diễn dưới dạng các luật xếp loại, cây quyết định, luật sản xuất, biểu thức hồi quy, …)
Đặc điểm của mẫu phải là mới (ít nhất là đối với hệ thống đó) Độ mới có thể đuợc
đo tương ứng với độ thay đổi trong dữ liệu (bằng cách so sánh các giá trị hiện tại với các giá trị trước đó hoặc các giá trị mong muốn), hoặc bằng tri thức (mối liên hệ giữa phương pháp tìm mới và phương pháp cũ như thế nào) Thường thì độ mới của mẫu được đánh giá bằng một hàm logic hoặc một hàm đo độ mới, độ bất ngờ của mẫu Ngoài ra, mẫu còn phải có khả năng sử dụng tiềm tàng Các mẫu này sau khi được xử lý và diển giải phải dẫn đến những hành động có ích nào đó được đánh giá bằng một hàm lợi ích Ví dụ như trong dữ liệu các khoản vay, hàm lợi ích đánh giá khả năng tăng lợi nhuận từ các khoản vay Mẫu khai thác được phải có giá trị đối với các dữ liệu mới với độ chính xác nào đó
Với các giải thuật và các nhiệm vụ của khai mỏ dữ liệu rất khác nhau, dạng của các mẫu chiết xuất được cũng rất đa dạng Theo cách đơn giản nhất, sự phân tích cho ra kết quả chiết xuất là một báo cáo về một số loại (có thể bao gồm các phép đo mang tính thống kê về độ phù hợp của mô hình, các dữ liệu lạ, v.v…) Trong thực tế đầu ra phức tạp hơn nhiều, mẫu chiết xuất được có thể là một mô tả
xu hướng, có thể là dưới dạng văn bản, một đồ thị mô tả các mối quan hệ trong mô hình, cũng có thể là một hành động, ví dụ như yêu cầu người dùng làm gì với những
gì khai thác được trong dữ liệu Một mẫu chiết xuất được từ một công cụ khai phá tri thức khác lại có thể là một dự đoán xem số lượng bánh kẹo bán ra vào dịp Tết sẽ tăng lên bao nhiêu phần trăm, v.v… Dạng của mẫu chiết xuất được có thể được phân loại bởi kiểu mẫu dữ liệu mà nó mô tả Các mẫu liên vùng (interfield pattern) liên quan đến các giá trị của các trường trong cùng một bản ghi (ví dụ: Nếu thủ tục=phẫu thuật thì ngày nằm viện>5) Các mẫu liên bản ghi liên quan đến các giá trị được tổng hợp từ một nhóm các bản ghi ví dụ như bệnh nhân mắc bệnh đau dạ dày khó ăn gấp hai lần những người bình thường khác; hoặc xác định những phần có ích
ví dụ như nhóm các công ty có lợi nhuận Việc khai thác các mẫu liên bản ghi là dạng tổng kết dữ liệu Đối với dữ liệu phụ thuộc thời gian, mối quan hệ liên bản ghi
có thể cũng xác định các xu hướng quan tâm (ví dụ như sản lượng bán hàng tăng 20% so với năm ngoái)
Ta cũng có thể phân loại dạng mẫu chiết xuất được theo khả năng mô tả của chúng Ví dụ như mẫu chiết xuất được của quá trình khai mỏ dữ liệu theo số lượng liên quan đến các giá trị trường số sử dụng các công thức toán học Mẫu của quá trình khai mỏ dữ liệu theo chất lượng tìm ra một mối quan hệ logic giữa các trường
Ta phân biệt hai dạng này vì các kỹ thuật khai phá khác nhau thường được sử dụng
Trang 12trong các trường hợp khác nhau Ví dụ như các mối quan hệ số lượng tuyến tính tìm thấy rất dễ dàng bằng các phương pháp hồi quy tuyến tính trong khi khai phá theo định tính lại không thể dùng được các phương pháp này
Kỹ thuật khai mỏ dữ liệu thực chất không có gì mới Nó là sự kế thừa, kết hợp và mở rộng của các kỹ thuật cơ bản đã được nghiên cứu từ trước như học máy, nhận dạng, thống kê (hồi quy, xếp loại, phân nhóm), các mô hình đồ thị, các mạng Bayes, trí tuệ nhân tạo, thu thập tri thức hệ chuyên gia, v.v… Tuy nhiên, với sự kết hợp tài tình của khai mỏ dữ liệu, kỹ thuật này có ưu thế hơn hẳn các phương pháp trước đó, đem lại nhiều triển vọng trong việc ứng dụng phát triển nghiên cứu khoa học cũng như làm tăng mức lợi nhuận trong các hoạt động kinh doanh
IV Các kỹ thuật khai mỏ dữ liệu
Kỹ thuật khai mỏ dữ liệu thường được chia làm 2 nhóm chính
1 Kỹ thuật khai mỏ dữ liệu mô tả
Có nhiệm vụ mô tả về các tính chất hoặc các đặc tính chung của dữ liệu trong CSDL hiện có Các kỹ thuật này gồm có: Phân cụm (clustering), tóm tắt(summerization), trực quan hoá (visualiztion), phân tích sự phát triển và độ lệch(Evolution and deviation analyst), phân tích luật kết hợp (association rules).v.v
2 Kỹ thuật khai mỏ dữ liệu dự đoán
Có nhiệm vụ đưa ra các dự đoán dựa vào các suy diễn trên dữ liệu hiện thời Các kỹ thuật này gồm có: Phân lớp (classification), hồi quy (regression)…
V Nhiệm vụ chính của khai mỏ dữ liệu
Rõ ràng rằng mục đích của khai mỏ dữ liệu là các tri thức chiết xuất được sẽ được sử dụng cho lợi ích cạnh tranh trên thương trường và các lợi ích trong nghiên cứu khoa học
Do đó, ta có thể coi mục đích chính của khai thác dữ liệu sẽ là mô tả và
dự đoán.Các mẫu mà khai mỏ dữ liệu phát hiện được nhằm vào mục đích này Dự đoán liên quan đến việc sử dụng các biến hoặc các trường trong cơ sở dữ liệu để chiết xuất ra các mẫu là các dự đoán những giá trị chưa biết hoặc những giá trị trong tương lai của các biến đáng quan tâm Mô tả tập trung vào việc tìm kiếm các mẫu
mô tả dữ liệu mà con người có thể hiểu được Để đạt được hai mục đích này, nhiệm vụ chính của khai mỏ dữ liệu là:
- Phân lớp (Classification)
- Hồi qui (Regression)
- Gom nhóm (Clustering)
- Tổng hợp (Summarization)
- Mô hình ràng buộc (Dependency modeling)
- Dò tìm biến đổi và độ lệch (Change and Deviation Dectection)
Trang 131 Phân lớp (Classification)
Phân lớp là việc phân loại một mẫu dữ liệu vào một trong số các lớp đã xác định Mục tiêu của thuật toán phân lớp là tìm ra các mối quan hệ nào đó giữa các thuộc tính dự báo và thuộc tính phân lớp, từ đó sử dụng mối quan hệ này để dự báo lớp cho các bộ dữ liệu mới khác cùng khuông dạng
2 Hồi quy (Regression)
Hồi quy là việc lọc một hàm ánh xạ từ một mẫu dữ liệu thành một biến dự đoán có giá trị thực Có rất nhiều ứng dụng khai mỏ dữ liệu với nhiệm vụ hồi quy, ví
dụ như biết các phép đo vi sóng từ xa, đánh giá khả năng tử vong của bệnh nhân biết các kết quả xét nghiệm chẩn đoán, dự đoán nhu cầu tiêu thụ một sản phẩm mới bằng một hàm chỉ tiêu quảng cáo, dự đoán theo thời gian với các biến đầu vào là các giá trị của mẫu dự đoán trong quá khứ, v.v…
3 Gom nhóm (Clustering)
Là việc mô tả chung để tìm ra các tập xác định các nhóm hay các loại để mô
tả dữ liệu Các nhóm có thể tách riêng nhau hoặc phân cấp hoặc gối lên nhau Có nghĩa là một dữ liệu có thể vừa thuộc nhóm này, vừa thuộc nhóm kia Các ứng dụng khai mỏ dữ liệu có nhiệm vụ gom nhóm như: Phát hiện tập các khách hàng có phản ứng giống nhau trong cơ sở dữ liệu tiếp thị, xác định các loại quang phổ từ các phương pháp đo tia hồng ngoại
4 Tổng hợp (Summarization)
Nhiệm vụ tổng hợp là việc sản sinh ra các mô tả đặc trưng cho một lớp Các
mô tả này là một kiểu tổng hợp, tóm tắt mô tả các đặc tính chung của tất
cả các bộ dữ liệu dạng giỏ mua hàng thuộc một lớp C á c m ô tả đặ c t r ư n g t h ể
h iệ n dư ới dạ n g cá c l u ậ t th ư ờn g có k h u ôn dạ n g: “Nếu một bộ dữ liệu thuộc về một lớp đã chỉ ra trong tiền đề, thì bộ dữ liệu đó có tất cả các thuộc tính
đã nêu trong kết luận” Những luật này có những đặc trưng khác biệt so với các luật phân lớp Luật phát hiện đặc trưng cho một lớp chỉ được sản sinh khi các bộ dữ liệu thuộc về lớp đó
5 Mô hình ràng buộc (Dependency modeling)
Bao gồm việc tìm kiếm một mô hình mô tả sự phụ thuộc đáng kể giữa các biến Các mô hình phụ thuộc tồn tại dưới hai mức: Mức cấu trúc của mô hình xác định các biến nào là phụ thuộc cục bộ với nhau, mức định lượng của một mô hình xác định độ mạnh của sự phụ thuộc theo một thước
đo nào đó
6 Dò tìm biến đổi và độ lệch (Change and Deviation Dectection)
Tập trung vào khai thác những thay đổi đáng kể nhất trong dữ liệu
từ các giá trị chuẩn hoặc được đo trước đó.Vì các nhiệm vụ khác nhau này yêu cầu số lượng và các dạng thông tin rất khác nhau nên chúng thường ảnh
Trang 14hưởng đến việc thiết kế và chọn giải thuật khai mỏ dữ liệu khác nhau Ví dụ như giải thuật tạo cây quyết định tạo ra được một mô tả phân biệt được các mẫu giữa các lớp nhưng không có các tính chất và đặc điểm của lớp.
VI Các phương pháp khai mỏ dữ liệu
Quá trình khai mỏ dữ liệu là quá trình phát hiện mẫu, trong đó, giải thuật khai mỏ dữ liệu tìm kiếm các mẫu đáng quan tâm theo dạng xác định như các luật, cây phân lớp, hồi quy, gom nhóm, v v
1 Các thành phần của giải thuật khai mỏ dữ liệu
Giải thuật khai mỏ dữ liệu bao gồm 3 thành phần chính như sau: biểu diễn
mô hình, đánh giá mô hình, tìm kiếm mô hình
Biểu diễn mô hình:
Mô hình được biểu diễn bằng một ngôn ngữ L để mô tả các mẫu có thể khai thác được Nếu sự mô tả quá bị hạn chế thì sẽ không thể học được hoặc sẽ không thể có các mẫu tạo ra được một mô hình chính xác cho dữ liệu Tức là người phân tích
dữ liệu cần phải hiểu đầy đủ các giả thiết mô tả và cần phải diễn tả được các giả thiết mô tả nào được tạo ra bởi giải thuật nào Mô hình đó sẽ được đánh giá bằng cách đưa các dữ liệu thử vào mô hình và thay đổi lại các tham số cho phù hợp nếu cần
Khả năng mô tả mô hình càng lớn thì càng làm tăng mức độ nguy hiểm do bị học quá và làm giảm đi khả năng dự đoán các dữ liệu chưa biết Hơn nữa, việc tìm kiếm
sẽ càng trở nên phức tạp hơn và việc giải thích mô hình cũng khó khăn hơn
Đánh giá mô hình:
Đánh giá xem một mẫu có đáp ứng được các tiêu chuẩn của quá trình phát hiện tri thức hay không Việc đánh giá độ chính xác dự đoán dựa trên đánh giá chéo (Cross Validation) Đánh giá chất lượng mô tả liên quan đến độ chính xác dự đoán,
độ mới, khả năng sử dụng, khả năng hiểu được củamô hình Cả hai chuẩn thống kê
và chuẩn logic đều có thể được sử dụng để đánh giá mô hình
• Tìm kiếm mô hình: Xảy ra giống như một vòng lặp qua phương pháp tìm kiếm tham số: Mô tả mô hình bị thay đổi tạo nên một
họ các mô hình
= > Với mỗi một mô tả mô hình, phương pháp tìm kiếm tham số được áp dụng để đánh giá chất lượng mô hình Các phương pháp tìm kiếm mô hình thường sử dụng các kỹ thuật tìm kiếm heuristic vì kích thước của không gian các mô hình có thể thường ngăn cản các tìm kiếm tổng thể, hơn nữa các giải pháp đơn giản không
dễ đạt được
Trang 152 Một số phương pháp khai thác dữ liệu phổ biến
Phương pháp quy nạp (Induction).
Một cơ sở dữ liệu là một kho thông tin nhưng các thông tin quan trọng hơn cũng có thể được suy diễn từ kho thông tin đó Có hai kỹ thuật chính để thực hiện việc này là suy diễn và quy nạp
Phương pháp suy diễn:
Nhằm rút ra thông tin là kết quả logic của cácthông tin trong cơ sở dữ liệu Phương pháp suy diễn dựa trên các sự kiện chính xác để suy ra các tri thức mới từ các thông tin cũ Mẫu chiết xuất được bằng cách sử dụng phương pháp này thường
là các luật suy diễn
Phương pháp quy nạp:
Phương pháp quy nạp suy ra các thông tin được sinh ra từ cơ sở dữ liệu Có nghĩa là nó tự tìm kiếm, tạo mẫu và sinh ra tri thức chứ không phải bắt đầu với các tri thức đã biết trước Các thông tin mà phương pháp này đem lại là các thông tin hay các tri thức cấp cao diễn tả về các đối tượng trong cơ sở dữ liệu Phương pháp này liên quan đến việc tìm kiếm các mẫu trong CSDL Trong khai mỏ dữ liệu, quy nạp được sử dụng trong cây quyết định và tạo luật
Cây quyết định và luật
Cây quyết định:
Cây quyết định là một mô tả tri thức dạng đơn giản nhằm phân các đối tượng
dữ liệu thành một số lớp nhất định Các nút của cây được gán nhãn là tên các thuộc tính, các cạnh được gán các giá trị có thể của các thuộc tính, các lá mô tả các lớp khác nhau Các đối tượng được phân lớp theo các đường đi trên cây, qua các cạnh tương ứng với các giá trị, thuộc tính của đối tượng tới lá
Tạo luật:
Các luật được tạo ra nhằm suy diễn một số mẫu dữ liệu có ý nghĩa về mặt thống kê Các luật có dạng Nếu P thì Q, với P là mệnh đề đúng với một phần trong CSDL, Q là mệnh đề dự đoán.Cây quyết định và luật có ưu điểm là hình thức mô
tả đơn giản, mô hình suy diễn khá dễ hiểu đối với người sử dụng Tuy nhiên, giới hạn của nó là mô tả cây và luật chỉ có thể biểu diễn được một số dạng chức năng và
vì vậy giới hạn về cả độ chính xác của mô hình
Phát hiện các luật kết hợp
Phương pháp này nhằm phát hiện ra các luật kết hợp giữa các thành phần dữ liệu trong cơ sở dữ liệu Mẫu đầu ra của giải thuật khai mỏ dữ liệu là tập luật kết hợp tìm được Ta có thể lấy một ví dụ đơn giản về luật kết hợp như sau: sự kết hợp giữa hai thành phần A và B có nghĩa là sự xuất hiện của A trong bản ghi kéo theo sự xuất hiện của B trong cùng bản ghi đó: A = > B.Việc phát triển một thuật toán phải phát hiện luật này trong cơ sở dữ liệu lớn là không khó Tuy nhiên, vấn đề là ở chỗ
có thể có rất nhiều luật kiểu này hoặc là ta chỉ biết một tập nhỏ dữ liệu trong cơ sở
dữ liệu lớn thoả mãn tiền đề của luật
HV: Lê Thị Xuân Diệu CH1101076 Trang
Trang 16Nhiệm vụ của việc phát hiện các luật kết hợp là phải tìm tất cả các luật dạng
X => B sao cho tần số của luật không nhỏ hơn ngưỡng Minsup cho trước và độ tin cậy của luật không nhỏ hơn ngưỡng Minconfi cho trước Từ một cơ sở dữ liệu ta có thể tìm được hàng nghìn và thậm chí hàng trăm nghìn các luật kết hợp
Mạng Neuron
Mạng Neuron là tiếp cận tính toán mới liên quan tới việc phát triển cấu trúc toán học và khả năng học Các phương pháp là kết quả của việc nghiên cứu mô hình học của hệ thống thần kinh con người Mạng Neuron có thể đưa ra ý nghĩa từ các dữ liệu phức tạp hoặc không chính xác và có thể được sử dụng để chiết xuất các mẫu và phát hiện ra các xu hướng quá phức tạp mà con người cũng như các kỹ thuật máy tính khác không thể phát hiện được Khi đề cập đến khai thác dữ liệu, người ta thường đề cập nhiều đến mạng Neuron Tuy mạng Neuron có một số hạn chế gây khó khăn trong việc áp dụng và phát triển nhưng nó cũng có những ưu điểm đáng
kể
Một trong số những ưu điểm phải kể đến của mạng Neuron là khả năng tạo ra các mô hình dự đoán có độ chính xác cao, có thể áp dụng được cho rất nhiều loại bài toán khác nhau, đáp ứng được nhiệm vụ đặt ra của khai mỏ dữ liệu như phân lớp, gom nhóm, mô hình hóa, dự báo các sự kiện phụ thuộc vào thời gian, v.v
Giải thuật di truyền
Giải thuật di truyền, nói theo nghĩa rộng là mô phỏng lại hệ thống tiến hóa trong tự nhiên, chính xác hơn đó là giải thuật chỉ ra tập các cá thể được hình thành, được ước lựợng và biến đổi như thế nào? Ví dụ như xác định xem làm thế nào để lựa chọn các cá thể tạo giống và lựa chọn các cá thể nào sẽ bị loại bỏ Giải thuật cũng mô phỏng lại yếu tố gen trong nhiễm sắc thể sinh học trên máy tính để có thể giải quyết nhiều bài toán thực tế khác nhau.Giải thuật di truyền là một giải thuật tối
ưu hóa Nó được sử dụng rất rộng rãi trong việc tối ưu hóa các kỹ thuật khai mỏ dữ liệu trong đó có kỹ thuật mạng Neuron Sự liên hệ của nó với các quá trình khai mỏ
dữ liệu Ví dụ như trong kỹ thuật cây quyết định, tạo luật Như đã đề cập ở phần trước, các luật mô hình hóa dữ liệu chứa các tham số được xác định bởi các giải thuật phát hiện tri thức.Giai đoạn tối ưu hóa là cần thiết để xác định xem các giá trị tham số nào tạo ra các luật tốt nhất Và vì vậy mà giải thuật di truyền đã được sử dụng trong các công cụ khai mỏ dữ liệu
VII Ứng dụng của khai mỏ dữ liệu
Khai mỏ dữ liệu là một lĩnh vực liên quan tới nhiều ngành học khác như: Hệ CSDL, thống kê, trực quan hoá.v.v Hơn nữa, tuỳ vào cách tiếp cận được sử dụng, khai mỏ dữ liệu còn có thể áp dụng một số kỹ thuật như mạng nơron, lýthuyết tập thô, tập mờ, biểu diễn tri thức, v.v.So với các phương pháp này, khai mỏ dữ liệu có một số ưu thế rõ rệt So với phương pháp học máy, khai mỏ dữ liệu có lợi thế hơn ở chỗ, khai mỏ dữ liệu có thể sử dụng với các CSDL chứa nhiều nhiễu, dữ liệu không
HV: Lê Thị Xuân Diệu CH1101076 Trang
Trang 17đầy đủ hoặc biến đổi liên tục Trong khi đó phương pháp học máy chủ yếu được áp dụngtrong các CSDL đầy đủ, ít biến động và tập dữ liệu không qua lớn.Phương pháp hệ chuyên gia: Phương pháp này khác với khai mỏ dữ liệu ở chỗ các ví dụ của chuyên gia thường ở mức cao hơn nhiều so với các dữ liệu trongCSDL, và chúng thường chỉ bao hàm được các trường hợp quan trọng Hơn nữa cácchuyên gia sẽ xác nhận giá trị và tính hữu ích của các mẫu phát hiện được Phương pháp thống kê là một trong những nên tảng lý thuyết của khai mỏ dữ liệu, nhưng khi so sánh hai phương pháp với nhau ta có thể thấy các phương pháp thống kê còn tồn tại một số điểm yếu mà khai mỏ dữ liệu khắc phục được Các phương pháp thống kê chuẩn không phù hợp với các kiểu dữ liệu có cấu trúc trong rất nhiều CSDL.Các phương pháp thống kê hoạt động hoàn toàn theo dữ liệu, nó không sử dụng tri thức có sẵn về lĩnh vực Kết quả phân tích của hệ thống sẽ rất nhiều và khó có thể làm rõ ra được Phương pháp thống kê cần có sự hướng dẫn của người dùng để xác định phân tích
dữ liệu như thế nào và ở đâu.Với nhưng ưu điểm đó, khai mỏ dữ liệu hiện đang được áp dụng một cách rộng rãi trong nhiều lĩnh vực kinh doanh và đời sống khác nhau như: Marketing, tài chính, ngân hàng và bảo hiểm, khoa học, y tế, an ninh, internet.v.v rất nhiều tổ chức và công ty lớn trên thế giới đã áp dụng kỹ thuật khai
mỏ dữ liệu vào các hoạt động sản xuất kinh doanh của mình và thu được những lợi ích to lớn Một số ứng dụng của khai mỏ dữ liệu trong lĩnh vực kinh doanh: Brandaid: Mô hình Marketing linh hoạt tập chung vào hàng tiêu dùng.Callpla: Giúp nhân viên bán hàng xác định số lần viếng thăm của khách hàng triển vọng và khách hàng hiện có Detailer: Xác định khách hàng nào nên viếng thăm và sản phẩm nào nên giới thiệu trong từng chuyến viếng thăm Geoline: Mô hình thiết kế địa bàn tiêu thụ và dịch vụ Mediac: Giúp người quảng cáo mua phương tiện trong một năm, lập
kế hoạch sử dụng phương tiện bao gồm phác hoạ khúc thị trường, ước tính tiềm năng
VIII Một số thách thức đặt ra cho quá trình khai mỏ dữ liệu
Các cơ sở dữ liệu lớn Thay đổi dữ liệu và tri thức có thể làm cho các mẫu đã phát hiện không còn phù hợp nữa Dữ liệu bị thiếu hoặc nhiễu
Quan hệ giữa các trường phức tạp Giao tiếp với người sử dụng và kết hợp với các tri thức đã có Tích hợp với các hệ thống khác…
HV: Lê Thị Xuân Diệu CH1101076 Trang
Trang 18Phần III Thuật toán tìm tập phổ biến và luật
kết hợp
I Luật kết hợp trong khai mỏ dữ liệu (Association Rule in Data Mining)
Trong lĩnh vực Data Mining, mục đích của luật kết hợp (Association Rule - AR) là tìm ra các mối quan hệ giữa các đối tượng trong khối lượng lớn dữ liệu Nội dung cơ bản của luật kết hợp được tóm tắt như dưới đây
1 Một số khái niệm
Cho cơ sở dữ liệu gồm các giao dịch T là tập các giao dịch t1, t2, …, tn.
T = {t1, t2, …, tn} T gọi là cơ sở dữ liệu giao dịch (Transaction Database)
Mỗi giao dịch ti bao gồm tập các đối tượng I (gọi là itemset)
I = {i1, i2, …, im} Một itemset gồm k items gọi là k-itemset
Mục đích của luật kết hợp là tìm ra sự kết hợp (association) hay tương quan
(correlation) giữa các items Những luật kết hợp này có dạng X =>Y
Trong Basket Analysis, luật kết hợp X =>Y có thể hiểu rằng những người mua các mặt hàng trong tập X cũng thường mua các mặt hàng trong tập Y (X và Y gọi là itemset)
Ví dụ, nếu X = {Apple, Banana} và Y = {Cherry, Durian} và ta có luật kết hợp X =>Y thì chúng ta có thể nói rằng những người mua Apple và Banana thì cũng thường mua Cherry và Durian
Theo quan điểm thống kê, X được xem là biến độc lập (Independent variable) còn Y được xem là biến phụ thuộc (Dependent variable)
Độ hỗ trợ (Support) và độ tin cây (Confidence) là 2 tham số dùng để đo lường luật kết hợp.
a) Độ hỗ trợ (Support)
Độ hỗ trợ (Support) của luật kết hợp X =>Y là tần suất của giao dịch chứa tất
cả các items trong cả hai tập X và Y Ví dụ, support của luật X =>Y là 5% có nghĩa
là 5% các giao dịch X và Y được mua cùng nhau
Công thức để tính support của luật X =>Y như sau:
Trong đó: N là tổng số giao dịch
HV: Lê Thị Xuân Diệu CH1101076 Trang