1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt

64 450 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 64
Dung lượng 693,42 KB

Nội dung

Hiện nay, trên thế giới có rất nhiều thuật toán khai phá tri thức bằng cách phân lớp và rời rạc dữ liệu như: Sử dụng cây quyết định, phương pháp thống kê, các mạng nơ ron, thuật toán di

Trang 1

Luận văn tốt nghiệp Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô

Trang 2

TÓM TĂT KHOÁ LUẬN TỐT NGHIỆP

Cùng với sự phát triển của Công Nghệ Thông Tin ngày nay, khai phá tri thức trong các cơ sở dư liệu lớn là một trong nhưng lĩnh vực được rất nhiều nhà nguyên cứu

và ứng dụng tin học đặc biệt quan tâm Việc nguyên cứu những phương pháp có thể tự động phát hiện những tri thức mới trong cơ sở dư liệu trên máy tính đã tỏ ra thực sự hữu ích trong việc hỗ trợ quyết định cho con người

Hiện nay, trên thế giới có rất nhiều thuật toán khai phá tri thức bằng cách phân lớp và rời rạc dữ liệu như: Sử dụng cây quyết định, phương pháp thống kê, các mạng

nơ ron, thuật toán di truyền, Trong một vài năm gần đây, lý thuyết tâp thô được nhiều nhóm nguyên cứu hoạt động trong lĩnh vực tin học nói chung và khai phá tri thức nói riêng nguyên cứu và áp dụng trong thực tế Lý thuyết tập thô được xây dựng trên nền tảng toán học vững chắc giúp cung cấp những công cụ hữu ích để giải quyết những bài toán phân lớp dữ liệu và khai phá luật, Với đặc tính có thể xử lý được những dữ liệu

mơ hồ, không chắc chắn tập thô tỏ ra rất hữu ích trong việc giải quyết những bài toán thực tế Từ những bảng dữ liệu lớn với dữ liệu dư thừa, không hoàn hảo, dữ liệu liên tục, hay dữ liệu dưới dạng ký hiệu lý thuyết tập thô cho phép khai phá tri thức từ những khối dữ liệu này nhằm phát hiện những luật tiềm ẩn từ khối dữ liệu này

Trong khoá luân tốt nghiệp chúng tôi đã trình bày một số phương pháp rời rạc

hoá dữ liệu theo hướng tiếp cận tập thô Và xây dựng chương trình thử nghiệm: phát

hiện luật bằng cách sử dụng siêu phẳng tối ưu theo hướng tiếp cân tập thô Chương

trình được xây dựng để thử nghiệm trên bộ dữ liệu chứa thông tin về 768 bệnh nhân bị

bệnh tiểu đường cung cấp bởi tổ chức “National Institute of Diabetes and Digestive

and Kidney Diseases” Từ đó xây dựng hệ thống các luật dựa trên cây quyết định dùng

để hỗ trợ việc khám bệnh của các bác sĩ

Trang 3

MỤC LỤC

MỤC LỤC 2

PHẦN MỞ ĐẦU 5

Chương 1 TỔNG QUAN VỀ KHAI PHÁ TRI THỨC 8

1.1 Khai phá tri thức 8

1.1.1 Định nghĩa khai phá tri thức 8

1.1.2 Các giai đoạn của quá trình khai phá tri thức 8

1.1.3 Khai phá dữ liệu 10

1.2 Khai phá tri thức theo cách tiếp cận tập thô 12

1.2.1 Một số khái niệm 12

1.2.1.1 Khái niệm hệ thông tin 12

1.2.1.2 Khái niêm về bảng quyết định 13

1.2.1.3 Khái niệm quan hệ không phân biệt được trong hệ thông tin .15

1.2.1.4 Khái niệm tập các nhát cắt, nhát cắt trong bảng quyết định 16

1.2.1.5 Tập thô trong không gian xấp xỉ .17

1.2.2 Khai phá tri thức theo cách tiếp cận tập thô .19

1.2.2.1 Sự rời rạc hoá dữ liệu theo cách tiếp cận tập thô .19

1.2.2.2 Lựa chọn thuộc tính dựa trên tập thô 19

1.2.2.3 Khám phá luật bới bảng phân bố tổng quát dựa trên tập thô .20

1.2.2.4 Khám phá mẫu trong hệ thông tin .20

1.3 Kết luận .21

Chương 2 KHAI PHÁ LUẬT KẾT HỢP 22

2.1 Khai phá luật kết hợp trong cơ sở dữ liệu .22

2.1.1 Bài toán xuất phát .22

2.1.2 Mô hình hoá bài toán .22

2.1.3 Thuật toán khai phá luật kết hợp .25

2.1.3.1 Tập phổ biến .25

2.1.3.2 Khai phá luật dựa trên tập mục phổ biến 25

2.1.4 Kết luận 28

2.2 Sinh cây quyết định từ hệ thông tin 29

2.2.1 Thuật toán học cây quyết định 29

2.2.2 Một số phương pháp giải quyết vấn đề rời rạc hoá .35

Trang 4

2.2.2.1 Maximal Discernibility (MD) Heuristic 35

2.2.2.2 Sự rời rạc hoá định nghĩa bằng siêu phẳng .36

2.2.2.3 Những tính chất của phương thức MD 39

2.2.2.4 Xây dựng cây quyết định không đối xứng .43

2.2.3 Kết luận 50

Chương 3 CHƯƠNG TRÌNH THỬ NGHIỆM .51

3.1 Mô tả dữ liệu .51

3.2 Xây dựng chương trình .53

3.3 Kết quả thử nghiệm .57

3.4 Nhận xét .61

KẾT LUẬN .62

Tài liêu tham khảo: 63

Trang 5

CÁC KÝ HIỆU SỬ DỤNG TRONG LUẬN VĂN

Ký hiệu Mô tả

A Hệ thông tin hay bảng quyết định

A, B Tập các thuộc tính trong hệ thông tin

D Tập thuộc tính quyết định trong hệ thông tin

a Một thuộc tính điêu kiện trong hệ thông tin

Va Tập giá trị của thuộc tính điều kiện a

Trang 6

PHẦN MỞ ĐẦU

Trong một vài năm gần đây, ngành công nghệ thông tin trên toàn thế giới đã phát triển mạnh mẽ với một tốc độ rất nhanh Song song với điều đó chúng ta cũng phải đối mặt với một thách thức mới là sự bùng nổ về lượng thông tin Tuy nhiên, một thực tế diễn ra rất phổ biến là mặc dù có một lượng dữ liệu rất lớn nhưng thông tin mà thực sự chúng ta có là rất ít, những hiểu biết thực sự của chúng ta về lượng dữ liệu mà chúng ta có còn rất hạn chế

Xuất phát từ thực tế đó mà trong một vài năm gần đây các nhà nguyên cứu và ứng dụng tin học phải nguyên cứu, tìm kiếm những phương pháp mới để khai thác triệt

để nhưng thông tin có trong cơ sở dữ liệu Từ cuối những năm của thập kỷ 1980 khái

niệm phát hiện tri thức trong cơ sở dữ liệu lần đầu tiên được nói đến, đây là quá trình

phát hiện tri thức tiềm ẩn, không biết trước và hữu ích trong các cơ sở dữ liệu lớn

Khắc phục hạn chế của những mô hình cơ sở dữ liệu truyền thống chỉ với những công cụ truy vấn dữ liệu không có khả năng tìm kiếm các thông tin mới, các thông tin tiềm ẩn trong cơ sở dữ liệu Khai phá tri thức trong cơ sở dữ liệu là một quá trình có thể tìm ra những thông tin mới, những thông tin hữu ích, và tiềm ẩn trong cơ

sở dữ liệu Quá trình phát hiện tri thức gồm nhiều giai đoạn, trong đó giai đoạn khai phá dữ liệu là quan trọng nhất Đây là giai đoạn chính tìm ra những thông tin mới trong cơ sở dữ liệu Quá trình phát hiện tri thức là sự tiếp thu, sử dụng và phát triển các thành tựu của nhiều lĩnh vực nguyên cứu ứng dụng tin học trước đó như: lý thuyết nhận dạng, hệ chuyên gia, trí tuệ nhân tạo, thống kê, v.v

Từ đầu những năm 80 Z Pawlak đã đề xuất ra lý thuyết tập thô với một cơ sở toán học rất chắc chắn Trong những năm gần đây, lý thuyết tập thô được nhiều nhóm nguyên cứu hoạt động trong lĩnh vực tin học nói chung và khai phá tri thức trong cơ sở

dữ liệu nói riêng nguyên cứu và áp dụng trong thực tế [2,4,6,10,12] Lý thuyết tập thô ngày càng được áp dụng rộng rãi trong lĩnh vực phát hiện tri thức Nó tỏ ra rất hữu ích trong việc giải quyết các bài toán phân lớp dữ liệu, phát hiện luật và đặc biệt hữu ích trong các bài toán phải xử lý các dữ liệu mơ hồ, không chắc chắn Các mối quan hệ giữa dữ liệu trong mô hình này được biểu diễn qua mối quan hệ “không phân biệt được”, các tập dữ liệu là mơ hồ, không chắc chắn được biểu diễn thông qua tập xấp xỉ trên và xấp xỉ dưới của nó Nhờ vào những điều này mà dữ liệu có thể phân tích và xử

lý bằng những công cụ toán học

Cụ thể trong lý thuyết tập thô dữ liệu được biểu diễn thông qua hệ thông tin hay bảng quyết Từ trong thực tế, với những bảng dữ liệu lớn với dữ liệu không hoàn hảo, có dữ liệu dư thừa, dữ liệu liên tục hay biểu diễn dưới dạng các ký hiệu, lý thuyết tập thô cho phép khai phá tri thức trong những cơ sở dữ liệu như thế này nhằm phát hiện những tri thức tiềm ẩn từ những khối dữ liệu “thô” này Tri thức tìm được được thể hiện dưới dạng các luật, các mẫu Sau khi tìm được những quy luật chung nhất để biểu diễn dữ liệu, người ta có thể tính toán độ mạnh và độ phụ thuộc giữa các thuộc tính trong hệ thông tin

Trang 7

Theo Skowron và NingZong [2], cách tiếp cận tập thô để phân tích dữ liệu có rất nhiều điểm lợi quan trọng như sau:

− Cho phép xử lý hiệu quả bảng dữ liệu lớn, loại bỏ dữ liệu dư thừa, dữ liệu không hoàn hảo, dữ liệu liên tục

− Hiệu quả trong việc tìm kiếm những mẫu tiềm ẩn trong cơ sở dữ liệu

− Sử dụng được tri thức kinh nghiệm

− Nhận ra được những mối quan hệ mà khi sử dụng các phương pháp thống

kê khác không phát hiện được

− Sử dụng quan hệ thứ lỗi trong quá trình phát hiện mẫu

− Làm việc hiệu quả trên tập rút gọn

− Cách giải thích rõ ràng và dễ hiểu

Với những đặc điểm trên thì tập thô đã chứng tỏ là một trong những lý thuyết rất hiệu quả trong lĩnh vực khai phá dữ liệu Trong khoa luận tốt nghiệp này chúng tôi xin trình bày một số ứng dụng và lý thuyết cơ bản của tâp thô Việc phát hiện tri thức được thực hiện bằng cách phân lớp, rời rạc hoá dữ liệu từ đó sinh ra các luật, các tri thức mới Phương pháp nguyên cứu chủ yếu của khoá luận tốt nghiệp là tìm hiểu và phân tích nội dung các bài báo được công bố về lĩnh vực khai phá tri thức trong những năm gần đây Từ những kiến thức thu được chúng tôi đã xây dựng được chương trình thử nghiệm mô phỏng thuật toán xây dựng cây quyết định tối ưu bằng cách sử dụng siêu phẳng tối ưu được trình bày trong [9] Chương trình tiến hành khai phá tri thức trong cớ sở dữ liệu lưu thông tin về 678 bệnh nhân tiểu đường cung cấp bởi tổ chức

“National Institute of Diabetes and Digestive and Kidney Diseases” Từ đó sinh ra các luật quyết định hỗ trợ trong quá trình khám bệnh của bệnh nhân

Khoá luận tốt nghiệp được trình bày gôm 3 phần: Phần mở đầu, 3 chương và phần kết luận Trong đó:

Chương 1: Khóa luận trình bày những kiến thức chung nhất về khai phá tri thức và khai phá tri thức theo cách tiếp cận tập thô

Chương 2: Khóa luận trình bày về chi tiết một số thuật toán khai phá tri thức, chủ yếư là khai phá các luật trong các cơ sở dữ liệu Trong đó đáng chú ý là thuật toán xây dựng cây quyết định tối ưu bằng cách sử dụng siêu phẳng tối ưu

Chương 3: Khóa luận trình bày kết quả thử nghiệm bài toán khai phá luật trong cây quyết định tối ưu trình bày ở chương 2 và áp dụng trên cơ sở dữ liệu bệnh nhân bị tiểu đường được lấy về từ trên mạng Qua đó đánh giá được sự hiệu quả của thuật toán được trình bày trong [9]

Khóa luận được hoàn thành duới sự giúp đỡ của Tiến Sĩ Hà Quang Thuỵ , Bộ môn các hệ thông thông tin, Khoa Công Nghệ, ĐHQG Hà Nội Em xin bày tỏ lòng kính trọng và sự biết ơn sâu sắc tới Thầy đã hướng dẫn, động viên và tạo điều kiện cho

em trong quá trình làm khoá luận tốt nghiệp Em xin chân thành cảm ơn Thầy Đỗ

Trang 8

Văng Thành, Văn phong chính phủ, người đã truyền thụ cho em những kiến thức nền tảng và cơ sở để em có thể hoàn thành bản khoá luận tôt nghiệp này Em xin chân thành cảm ơn các thầy cô giáo trong bộ môn Các Hệ Thống Thông Tin, nhóm

“Seminar Data Mining and KDD” Cuối cùng em xin chân thành cảm ơn tới những người thân trong gia đình, bạn bè đã giúp đỡ và động viên em rất nhiều trong quá trình nguyên cứu và học tập

Trang 9

Chương 1 TỔNG QUAN VỀ KHAI PHÁ TRI THỨC

1.1 Khai phá tri thức

Phát hiện tri thức là khái niệm ra đời vào những năm cuối của thập kỷ 80 và đã trở thành một lĩnh vực được nguyên cứu rộng rãi trên toàn cầu Sự ra đời của phát hiện tri thức là sự kết hợp kết quả nguyên cứu của nhiều ngành khoa học khác lại với nhau như: Quản trị cơ sở dữ liệu, học máy, thống kê v.v

1.1.1 Định nghĩa khai phá tri thức

Khai phá tri thức (Khai phá tri thức-Knowledge Discovery in Databases) trong các cơ sở dữ liệu là quá trình phát hiện những tri thức tiềm ẩn, không biết trước, và có ích trong trong cơ sở dữ liệu Thực chất đó là quá trình tìm kiếm những thông tin có trong cơ sở dữ liệu nhưng bị che giấu trong các khối dữ liệu

Tri thức ở đây có thể được hiểu 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 dùng để biểi diễn tri thức trong việc biểu diễn tri thức trong quá trình phát hiện tri thức từ cơ sở dư liệu là các khung (frames), các cây và đồ thị, các luật, các công thức trong logic mệnh đề hoặc logic tân từ cấp một

Việc khai phá tri thức thường được áp dụng để giả quyết một loạt những yều cầu phục vụ những mục đích nhất định Do vậy nên quá trình phát hiện tri thức mang tính chất hướng nhiệm vụ, không phải là phát hiện mọi tri thức mà phát hiện những tri thức phục vụ tốt một nhiệm vụ đề ra Vì vậy, quá trình phát hiện tri thức là một hoạt động tương tác giữa một người sử dụng hoặc một chuyên gia phân tích với các công cụ tin học

1.1.2 Các giai đoạn của quá trình khai phá tri thức

Mục đích của quá trình khai phá tri thức: Từ những cơ sở dữ liệu ngoài cuộc sống thực tế sau một hoặc một số bước của quá trình sẽ rút ra được những tri thức mới Các bước trong quá trình này có thể lặp đi lặp lại nhiều lần và được mô tả theo hình sau [4,8]:

Trang 10

Hình 1 Mô hình mô tả quá trình khai phá tri thức

Giai đoạn 1:Xác định và định nghĩa vấn đề

− Tìm hiểu lĩnh vực ứng dụng và nhiệm vụ đề ra, xác định các tri thức đã có và các mục tiêu của người sử dụng

− Tạo và chọn lựa cơ sở dữ liệu

Giai đoạn 2: Thu nhập và tiền xử lý dữ liệu

− Xử lý và làm sạch dữ liệu trước: Bỏ đi các dữ liệu tạp bao gồm các lỗi và các dạng không bình thường Xử lý dữ liệu bị mất, chuyển đổi

dữ liệu phù hợp

− Rút gọn kích thước dữ liệu nhận được: Nhận ra các thuộc tính hữu ích cho quá trình phát hiện tri thức

Giai đoạn 3: Khai phá dữ liệu

− Chọn nhiệm vụ khai phá dữ liệu

− Lựa chọn các phương pháp khai phá dữ liệu

− Khai phá dữ liệu để rút ra các mẫu, các mô hình

Giai đoạn 4:Giải thích kết quả và đánh giá các mẫu, các mô hình tìm được ở giai đoạn 3

Xác định và định nghĩa vấn đề

Trang 11

Giai đoạn 5: Sử dụng tri thức phát hiện được

− Các tri thức phát hiện được tích hợp chặt chẽ trong hệ thống Tuy nhiên để sử dụng được tri thức đó đôi khi cần đến các chuyên gia trong các lĩnh vực quan tâm vì tri thức rút ra có thể chỉ có tính chất hỗ trợ quyết định

− Tri thức tìm được có thể được sử dụng cho một quá trình khai phá tri thức khác

Như vậy khai phá tri thức gồm 5 giai đoạn chính, trong 5 giai đoạn trên thì giai đoạn khai phá dữ liệu là quan trọng nhất Đây là giai đoạn duy nhất tìm được các thông tin tiềm ẩn trong cơ sở dữ liệu

1.1.3 Khai phá dữ liệu

Khai phá dữ liệu (hay data mining) được định nghĩa như là quá trình phát hiện các tri thức mới, có giá trị từ những dữ liệu lớn được lưu trữ trong cơ sở, datawarehouse hay các kho chứa thông tin khác Khai phá dữ liệu là một giai đoạn quan trọng trong quá trình phát hiện tri thức Về bản chất nó là giai đoạn duy nhất tim

ra được thông tin mới, thông tin tiềm ần có trong cơ sở dữ liệu Mục đích nguyên thủy của khai phá dữ liệu là mô tả và dự đoán [4] Các kỹ thuật khai phá dữ liệu được chia thành những mảng chính sau:

• Phân cụm và phân lớp dữ liệu: Quá trình này có thể xem là quá trình phân tích một tập dữ liệu và sinh ra một tập nhóm các luật mà chúng ta có thể sử dụng để phân lớp dữ liệu trong tương lai Khi phân lớp dữ liệu người ta thường dựa trên một tập các mẫu huấn luyện để sinh ra các luật Có rất nhiều phương pháp để phân lớp dữ liệu được nguyên cứu như: Các phương pháp học cây quyết định, phương pháp thông kê, các mạng nơ ron, các mạng xác xuất Bayes,

• Khai phá luật kết hợp: Mong muốn tìm ra những mối quan hệ giữa các thuộc tính hoàn toàn độc lập với nhau trong cơ sở dữ liệu Luật kết hợp có thể dùng để hỗ trợ quyết định Ví dụ như các bài toán kinh doanh

• Khai phá chuỗi: Luật chuỗi và khai phá chuỗi có thể coi như là một cách trừu tượng của luật kết hợp và phát hiện các luật kết hợp trong cơ sở dữ liệu phụ thuộc thời gian

Có rất nhiều phương pháp để có thể tiến hành khai phá dữ liệu đã được nguyên cứu và đề ra như:

− Các phương pháp sinh cây quyết định

− Các phương pháp thống kê

− Các mạnh nơ ron

− Các mạng xác suất Bayes

Trang 12

− Các thuật toán di truyền

− Phương pháp người láng giềng gần nhất

− Luật suy diễn

− Trực quan hoá dữ liệu

− Điều trị y học (medical treatment)

− Text mining & Web mining

− Tài chính và thị trường chứng khoán (finance & stock market)

− Bảo hiểm (insurance)

− Nhận dạng (pattern recognition)

− v.v

Trang 13

1.2 Khai phá tri thức theo cách tiếp cận tập thô

1.2.1 Một số khái niệm

1.2.1.1 Khái niệm hệ thông tin

Trong hầu hết các hệ quản trị cơ sở dữ liệu thông thương thì thông tin thường được biểu diễn dưới dạng các bảng, trong dó mỗi hang biểu diễn thông tin về một đối tượng, mỗi cột biểu diễn thông tin về một thuộc tính của đối tượng Tứ đầu những năm

80 Pawlak đã định nghĩa một khái niệm mới là hệ thông tin (infomation system) dựa

trên khái niệm bảng truyền thống như sau [2,5,10,12]:

Đinh nghĩa 1: Hệ thông tin là một cặp A = (U,A)

Ví dụ: Có một hệ thông tin được biểu diễn như bảng sau: Trong bảng có 7 đối tượng

và có 3 thuộc tính là số lần mang thai của bệnh nhân (1), lượng glucose trong huyết

tương sau 2 giờ uống thuốc (2), tuổi của bệnh nhân (8)

Mỗi đối tượng của bảng là một bệnh nhân đang tham gia khám bệnh tiểu đường, trong đó các bác sĩ dựa vào một số chỉ số tương ứng với các thuộc tính sau để xác định tình trạng của bệnh nhân

Để thuận tiện cho việc trình bày từ giờ chúng ta chỉ ký hiệu các thuộc tính là (1), (2), (8)

X2 4 146 70 X3 3 102 28 X4 2 90 37 X5 2 90 31 X6 2 146 28

Trang 14

Bảng 1 Ví dụ về hệ thông tin

Trong ví dụ trên thì ta có một hệ thông tin A =(U, A)

U={X1, X2, X3, X4, X5, X6, X7}

A={1,2,8,9}

Nhìn vào các đối tượng trong ví dụ trên ta thấy X1 và X7 là có các giá trị của

các thuộc tính là giống nhau Như vậy, X1 và X7 là không phân biệt được theo các

thuộc tính trong bảng trên Chúng ta sẽ tiếp tục đề cập đến điều này trong các ví dụ sau

Định nghĩa 2: Với một hệ thông tin bất kỳ A = (U,A) và một tập không rỗng

các thuộc tính B⊆A định nghĩa một hàm thông tin B như sau:

InfB = {(a, a(x)): a∈ B} với mọi x ∈ A

Trường hợp đặc biệt B=A, khi đó tập {InfA(x): x ∈ A} được gọi là tập thông tin

A, viết tắt là INF(A)

1.2.1.2 Khái niêm về bảng quyết định

Để có thể biểu diễn một dữ liệu thực tế, trong đó có những thuộc tính quyết đinh, chúng ta xét một trường hợp đặc biệt của hệ thông tin được gọi là bảng quyết định được định nghĩa như sau[9]

Định nghĩa 3: Bảng quyết định là một hệ thông tin có dạng

Trang 15

X7 2 102 31 2

Bảng 2 Ví dụ một bảng quyết định

Nhìn vào bảng 2 ta tiếp tục xét các đối tượng X1 và X7 ta thấy chúng có giá trị của các thuộc tính điều kiện là giống nhau, nhưng đối với kết quả quyết định đối với 2 đối tượng là khác nhau Như thế chỉ dùng các thuộc tính điều kiện xét trong ví dụ trên thì không thể xác định rõ tính chất bị bệnh hay không bị bệnh của một đối tượng bất

kỳ Sẽ tồn tại trường hợp mà với những giá trị điều kiện được đưa ra ta không thể xác định đối tượng đó có bị bệnh hay không

Chúng ta giả sử rằng tập các giá trị của giá trị quyết định d tương đương với tập {1, , r(d)} là các số nguyên dương từ 1 đến r(d), tập này được gọi là phạm vi của thuộc tính quyết đinh d Ta định nghĩa một lớp quyết định thứ k như sau:

Địng nghĩa 4: Một lớp quyết định thứ k (ký hiệu là Ck) là một tâp các đối tượng thoả mãn: Ck ={u ∈ U: d(u)=k} Trong đó 1≤ k ≤r(d)

Khi đó giá trị quyết định d sẽ chia tập các đối tượng thành r(d) lớp quyết định phần:{C1, ,Cr(d)}

Trang 16

Chú ý: Trong trường hợp tổng quát thì có thể có nhiểu thuộc tính quyết định, khi dó

bảng quyết định có dạng [10]

Trong đó:

Con: là tập các thuộc tính điều kiện

Dec: là tập các thuộc tính quyết định

1.2.1.3 Khái niệm quan hệ không phân biệt được trong hệ thông tin

Một trong những đặc điểm cơ bản của lý thuyết tập thô là dùng để lưu giữ và

sử lý các dữ liệu trong đó có sự mập mờ, không phân biệt được [2,5,12] Trong một hệ thông tin theo định nghĩa trên cũng có thể có những đối tương không phân biệt được Trước tiên ta nhắc lại định nghĩa quan hệ tương đương như sau:

Định nghĩa 5: Một quan hệ hai ngôi (quan hệ nhị phân) R ⊆ U × U trên U là một quan hệ tương đương khi nó có cả 3 tính chất:

• Phản xạ: Mọi đối tượng đều quan hệ với chính nó

• Đối xứng: Nếu xRy thì yRx

• Bắc cầu: Nếu xRy và yRz thì xRz

Quan hệ tương đương R sẽ chia tập các đối tượng U thành các lớp tương đương Lớp tương đương của phần tử x∈U, ký hiệu là [x], chứa tất cả các đối tượng y

B: là một tập thuộc tính của các đối tượng, B∈A

x, x’: là hai đối tượng bất kỳ thuộc U

Khi đó INDA(B) là một quan hệ không phân biệt được B Khi đó thì hai đối tượng x, x’, mà (x, x’)∈INDA(B) thì khi đó hai đối tượng x, x’ được gọi là không phân biệt được bởi các thuộc tính trong B Khi xét trên một hệ thông tin xác định thì ký hiệu

A thường được bỏ qua, ta sẽ viết là IND(B) thay cho INDA(B)

Lớp tương đương chứa x của quan hệ không phân biệt được trên B được ký hiệu là [x]B

Trang 17

Ví dụ:Tiếp tục xét ví dụ trong bảng 2, ta xem xét các tập thuộc tính điều kiện

là: |(1)|, |(2)|, |(1), (2)| Khi đó các quan hệ không phân biệt được trên các tập thuộc tính điều kiện trên sẽ chia tập các đối tương trên thành các tập sơ cấp tương ứng như sau:

IND(|(1)|)=| | X1, X4, X5, X6, X7 |, | X2 |, |X3| |

IND(|(2)|)=| | X1, X3, X7 |, | X4, X5 |, |X2, X6| |

IND(|(2)|, |(1)|)=| | X1, X7 |, | X4, X5 |, |X2|, |X3|, |X6| |

Định nghĩa 7: Với một hệ thông tin bất kỳ A = (U,A) và một tập không rỗng

các thuộc tính B⊆A ta định nghĩa một hàm σB=U→2{1, ,r(d)} gọi là quyết định phổ biến như sau:

σB(u)={i:∃u’∈U[(u IND(B) u’)∧d(u’)=i]}

Một bảng quyết định A được gọi là thống nhất nếu card(σa(u)) với mọi u∈ U,

ngược lại thì A được coi là không thống nhất

1.2.1.4 Khái niệm tập các nhát cắt, nhát cắt trong bảng quyết định

Trong quá trình phân lớp và rời rạc dữ liệu, ta có thể dùng nhiều phương pháp Tuy nhiên, sử dụng nhát cắt để phân lớp dữ liệu là một trong những phương pháp phổ biến Ta xét đinh nghĩa nhát cắt dưới đây

Định nghĩa 8: Xét một bảng quyết định A =(U, A ∪ {d} )

a k a

Khi đó Pa sẽ định nghĩa duy nhất tập các nhát cắt trên Va : { a}

k a a

a c c c a

C = 0, 1,K,

và bộ (a,c) trong đó a∈A và c ∈ Ca được gọi là một nhát cắt trên Va

Định nghĩa nhát cắt trên đây cho thấy mỗi nhát cắt sẽ phân hoạch tập các đối tượng thành hai tập con các đối tượng rời rạc nhau Khái niệm nhát cắt sẽ được sử

dụng để rời rạc hoá dữ liệu trong thuật toán được trình bày ở chương 2 phần 2.2.2.1

Trang 18

1.2.1.5 Tập thô trong không gian xấp xỉ

Để hiểu rõ về việc hệ thông tin biểu diễn và xử lý dữ liệu thô như thế nào ta

xét định nghĩa dưới đầy Ta xét R là một quan hệ tương đương theo định nghĩa 6 với

trường hợp đặc biệt B=A gồm tất cả các thuộc tính Lớp tương đương theo quan hệ R được gọi là các tập sơ cấp [2,10] và gọi E là tập các tập sơ cấp Z Pawlak đã đưa ra khái niệm tập mô tả được như sau [10]

Định nghĩa 9: Một tập con X khác rỗng các đối tượng được gọi là mô tả được

khi và chỉ khi X là tập hợp của các tập sơ cấp trong hệ thông tin (trong trường hơp đặc biệt tập rỗng cũng được coi là tập mô tả được)

Như vậy một tập các đối tượng bất kỳ có thể là mô tả được hoặc không mô tả được theo các tập sơ cấp E Một vấn đề đặt ra là làm sao có thể tìm ra một cách để biểu diễn các tập không mô tả được theo các tập sơ cấp E

Nhìn vào bảng quyết định, ta xét một tập các đối tượng X có cùng một giá trị của thuộc tính quyết định là d, khi đó sẽ có nhiều trường hợp X không mô tả được theo các tập sơ cấp Ta chỉ tìm được một tập mô tả được (có số đối tượng là nhỏ nhất) không những chứa tất cả các phần tử thuộc X mà còn chứa các phần tử không thuộc X

Ví dụ:Ta tiếp tục xét bảng 2, và tập B là tâp các thuộc tính điều kiện Khi đó

thì tập các tập sơ cấp của quan hệ không phân biệt được trên tập thuộc tính B là:

Khắc phục hạn chế trên ta có thể dùng tính chất của lý thuyết tập thô để biểu diễn tập X ở trên Chúng ta không trực tiếp biểu diễn tập X mà đi tìm các tập là mô tả được là tập xấp xỉ trên và tập xấp xỉ dưới của X Tập xấp xỉ dưới của X là tập bao gồm

những người chắc chắn bị bệnh {X3, X5}, còn tập xấp xỉ trên của X là tập những người có khả năng bị bệnh {X1, X3, X5, X7} Ta xem xét các bệnh nhân không thuộc tập những người chắc chắn bị bệnh mà lại thuộc tập những người có khả năng bị

bệnh {X1, X7}.Tập này là vùng ranh giới giữa trường hợp chắc chắn và trường hợp

Trang 19

có khả năng bị bệnh Nếu tập ranh giới này không rỗng thì tập này được gọi là thô Ta

có định nghĩa sau [10]:

Định nghĩa 10: Giả sử A =(U,A) là một hệ thông tin và B ⊆ A và X ⊆ U, thì các tập xấp xỉ của X theo thông tin có từ B, được tính theo các công thức sau:

(1) Tập B-xấp xỉ dưới của X, ký hiệu là B X, là tậpB X ={x∈U: [x]B ∈ X}

(2) Tập B-xấp xỉ trên của X, ký hiệu là B X , là tậpB X ={x∈U:[x]B∩X≠∅} Theo định nghĩa trên thì khi gặp một tập X mà ta không thể mô tả được bằng các tập sơ cấp E là các lớp tương đương của quan hệ INDA(B), ta chỉ có thể có được xấp xỉ trên và xấp xỉ dưới của nó

Ký hiệu –X biểu thi thay cho U-X

b) Bốn loại tập thô cơ bản:

Người ta phân tập thô thành 4 loại [9]:

• X là xác định thô thực sự theo B nếu B X ≠ ∅ và B X ≠ U

• X là không xác định bên trong theo B nếu B X = ∅ và B X ≠ U

• X là không xác đinh bên ngoài theo B nếu B X ≠ ∅ và B X = U

• X là không xác định thực sự theo B nếu B X = ∅ và B X = U

Trang 20

c) Độ đo liên quan biên xấp xỉ:

Tập thô được chỉ số hoá bởi hệ số sau:

1.2.2 Khai phá tri thức theo cách tiếp cận tập thô

Như đã trình bày ở trên, khai phá tri thức từ cơ sở dữ liệu đang là vấn đề được rất nhiều người quan tâm [2,12] Việc tìm kiếm tri thức trong các cơ sở dữ liệu được tiến hành theo rất nhiều phương pháp khác nhau Trong đó khai phá tri thức theo cách tiếp cân tập thô là một phương pháp tỏ ra đặc biệt hiệu quả đối với những dữ liệu lớn

và nhiều kiểu khác nhau Hơn thế nữa nó con có thể làm tốt với những cơ sở dữ liệu không chắc chắn, có tính mơ hồ, không phân biệt được

1.2.2.1 Sự rời rạc hoá dữ liệu theo cách tiếp cận tập thô

Trong lĩnh vực khai phá tri thức, một vấn đề đặt ra là làm sao chúng ta có thể

xử lý cả được những dữ liệu hỗn tạp với những giá trị liên tục Có rất nhiều thuật toán được sử dụng trong lĩnh vực rời rạc hoá dữ liệu như: Các phương pháp lập luận logic, thuật toán NAIVE, tuy nhiên không có một thuật toán được gọi là tối ưu và hiệu quả nhất Việc lưa chọn thuật toán vẫn còn phụ thuộc vào dạng dữ liệu mà chúng ta cần xử lý Các tác giả trong [1,2] đã đưa ra một số phương pháp rời rạc hoá dữ liệu dựa trên tập thô và lập luận logic

Khi sử dụng phương pháp rời rạc hoá dữ liệu thì có nghĩa là chúng ta đã chấp nhận sai số trong dữ liệu Một ví dụ là khi đo về nhiệt độ của cơ thể thì ta thương gặp những số thực nhưng chúng ta thường phải quy về giá trị nguyên hay những khoảng khác nhau tuỳ từng bài toán cụ thể Việc phân chia các giá trị thực thành các khoảng hợp lý là rất phức tạp Khi đó thường cần phải có các chuyên gia trong các lĩnh vực cụ thể tham gia cùng

1.2.2.2 Lựa chọn thuộc tính dựa trên tập thô

Các cơ sở dữ liệu trong thực tế thương có rất nhiều thuộc tính, những thuộc tính cần thiết cho lĩnh vực mà bài toán khai phá dữ liệu mà chúng ta đang xử lý không phải là tất cả Việc lựa chọn những thuộc tính phù hợp để tiến hành các phương pháp khai phá dữ liệu là rất cần thiết Các thuộc tính dư thừa không cần thiết trong quá trình khai phá tri thức không chỉ làm cho bài toán trở lên phức tạp mà còn dẫn đền một thực

,)(

)()(

X B

X B X

B

Trang 21

tế là số tri thức được phát hiện sẽ không nhiều vì phải phụ thuộc vào cả những thuộc tính không được coi là đặc trưng của bài toán Mục tiêu của việc lựa chọn thuộc tính là phải đưa ra được một tập tối ưu các thuộc tính trong cơ sở dữ liệu Từ đó các luật sinh

ra trong cơ sở dữ liệu sẽ đạt được hiệu quả cao nhất, dữ liệu mà chúng ta thực sự phải làm việc sẽ nhỏ đi rất nhiều

Có hai phương pháp lựa chọn thuộc tính thường được sử dụng là lọc và bọc Trong đó thì phương pháp lọc thực chất là tìm những thuộc tính tối thiểu trong tập các thuộc tính, chọn ra các thuộc tính có độ phù hợp cao hơn theo tiêu chuẩn sau:

− Lựa chọn những thuộc tính là cho số trường hợp thoả mãn tăng nhanh

− Chọn những thuộc tính có it giá trị khác nhau

Phương pháp này là khá đơn giản và tốc độ là tương đối nhanh Phương pháp thứ hai sử dụng thuật toán quy nạp đánh giá Tư tưởng của thuật toán này là sử dụng 3 cách tìm kiếm: tìm kiếm toàn bộ, tìm kiếm kinh nghiệm và tìm kiếm không xác định Phương pháp này sử dụng các thuật toán quy nạp nên độ phức tạp lớn nhưng bù lại thì kết quả mang lại sẽ chính xác và toàn diện hơn

1.2.2.3 Khám phá luật bới bảng phân bố tổng quát dựa trên tập thô

Bảng phân bố tổng quát có những đặc điểm sau:

− Bảng phân bố tổng quát mô tả quan hệ xác suất giữa các trường hợp có thể và các bộ sinh có thể

− Những trường hợp không thấy trong quá trình khai phá dữ liệu sự không chắc chắn của luật bao gồm cả khả năng dự đoán trước các trường hợp

nó không được thể hiện rõ ràng trong độ mạnh của luật

− Có thể sử dụng tri thức nền làm cơ sở cho việc lập bảng phân bố tổng quát và quá trình khai phá

A Skowronvà Ning Zong [2] đã đưa ra phương pháp khám phá luật sư dụng bảng phân bố tổng quát dựa trên tập thô với ý tưởng như sau:

− Từ bảng quyết định xây dựng bảng phân bố tổng quát

− Dựa trên các bảng phân bố tổng quát này sinh các vector phân biệt được

− Tạo ra các tập rút gọn được từ các tập vector phân biệt được

− Sinh ra các luật bao phủ tất cả các trường hợp

1.2.2.4 Khám phá mẫu trong hệ thông tin

Việc tìm những mẫu quan hệ phức tạp được phát hiện trong những cơ sở dữ liệu lớn một cách tự động là một trong những hướng nghiên cứu đang được chú trọng trên thế giới Trong trường hợp đơn giản thì mẫu chỉ là một vector có giá trị độ dài đủ lớn của một sô thuộc tính được hỗ trợ của một lượng đủ lớn các đối tượng Các bài toán tìm mẫu thường có độ phức tạp lớn đòi hỏi những thuật toán tối ưu, thuật toán đánh giá kinh nghiệm đủ tốt để có thể rút ra các mẫu gần tối ưu từ những cơ sở dữ liệu

Trang 22

lớn Một lớp quan trọng của của phương pháp tìm kiếm mẫu là dựa trên những khuôn mẫu quan hệ Những khuôn mẫu này được xác định từ một bảng dữ liệu cho trước sử dụng quan hệ thứ lỗi trong một số lớp quan hệ thứ lỗi giả định trước Một quan hệ thứ lỗi là tối ưu nếu tập các tham số miêu tả quan hệ này cho phép xây dựng những khuôn mẫu dữ liệu thích hợp trên những bảng dữ liệu cho trước

Có rất nhiêu ứng dụng cho việc phát hiện những khuôn mẫu trong hệ thông tin Một số có thể dùng để tách các bảng dữ liệu lớn, bảng dữ liệu lớn có thể được phân chia thành một cây nhị phân của các mẫu và khuôn mẫu Mỗi nút của cây phụ thuộc vào một bước phân tách Quá trình phân chia dừng lai khi thu được những bảng

có kích thước đủ nhỏ để có thể áp dụng nhưng phương pháp khai phá tri thức khác Người ta áp dụng những phương pháp tìm kiếm mẫu quyết định từ những bảng quyết đinh gắn với các lá đã có dựa trên cách tiếp cận tập thô Quá trình phân lớp cho một đối tượng mới bắt đầu bằng việc tìm ra đường đi trên cây bằng cách so sánh các mẫu Sau đó, đối tượng được phân lớp dựa trên luật quyết định được sinh ra từ bảng con gắn với các lá ở trên đường đó

Việc lựa chon một chiến lược tìm kiếm khuôn mẫu có trong các lớp quyết định

đã được thảo luận rất nhiều Quá trình này có thể coi là quá trình tìm luật quyết định xấp xỉ mạnh ngầm định

Các phương pháp này cũng có thể dùng để tìm luật quyết định xấp xỉ tổng hợp

từ các bảng dữ liệu Bản chất xấp xỉ của những luật này được mô tả bởi một số rằng buộc

1.3 Kết luận

Trên đây chúng tôi đã trình bày một số khái niêm cơ bản về khai phá tri thức,

và đăc biệc là khai phá tri thức theo cách tiếp cận tập thô Khai phá tri thức có thể được hiểu đơn giản là quá trình tìm kiếm nhưng thông tin mới trong cơ sở dữ liêu Nó bao gồm 5 quá trình, trong đó quá trình khai phá dữ liệu là quan trong nhất Các kỹ thuật khai phá tri thức được chia thành 3 mảng chính: phân cụm và phân lớp dữ liệu,khai phá các luật kết hợp, khai phá chuỗi

Lý thuyết tập thô do P Pawlak đưa ra trong những năm đầu của thập kỷ 80 đã

tỏ ra là rất hiệu quả trong lĩnh vực khai phá tri thức Nó tỏ ra thực sự hiểu quả trong các bài toán thực tế, những bài toán có dữ liệu thương ở dạng thô, chưa qua xử lý, trong dữ liệu có nhiều thông tin dư thừa

Trang 23

Chương 2 KHAI PHÁ LUẬT KẾT HỢP

Khai phá luật kết hợp là một kỹ thuật quan trọng và phát triển mạnh mẽ trong những năm gần đây Lần đầu tiên được Rakesh Agrawal, Tomasz Imielinski, Arun Swami đề xuất năm 1993 [6] Sau đó được nhiều nhà khoa học phát triển và cải tiến

2.1 Khai phá luật kết hợp trong cơ sở dữ liệu

2.1.1 Bài toán xuất phát

Cho trước một cơ sở dữ liệu lưu thông tin bán hàng của một siêu thị Với lượng dữ liệu được lưu giữ là tương đối lớn, người sử dụng mong muốn có những tri thức từ cơ sở dữ liệu trên để có thể hoạch định kế hoạch kinh doanh phù hợp: Những câu hỏi được đặt ra như nên đầu tư cho những mặt hàng nào, số lượng là bao nhiêu? Sắp xếp các mặt hàng trong siêu thị như thế nào là hợp lý v v ?

Với những câu hỏi như trên thì người sử dụng mong muốn có những thông tin như là: ”75% những người mua bánh mì sẽ mua sữa”, hoặc “5% những người mua rượu sẽ mua lạc” Những phát biểu trên được gọi là các luật kết hợp Bản thân nó ngầm định một số quan hệ kết hợp một tập các đối tượng cùng tham gia mua hàng Từ những luật dạng trên thì người sử dụng có thể dùng để hỗ trợ những quyết định của họ trong kinh doanh Họ sẽ có chiến lược chẳng hạn như đầu tư lượng bánh mi và sữa gần bằng nhau sao cho hiệu quả

Trong phần này chúng tôi chỉ giải quyết ở mức độ là người khách hàng đó có mua mặt hàng đó hay không, khi đó thì mỗi thuộc tính chỉ có 2 giá tri khác nhau là 0 ứng với trường hợp người đó không mua mặt hàng này và bằng 1 nếu người đó có mua mặt hàng đó

2.1.2 Mô hình hoá bài toán

Trước tiên ta có một số định nghĩa như sau:

I = {i 1 ,i 2 , ,i m} là tập toàn bộ các mục (chính là các mặt hàng trong bài toán trên)

D : là cơ sở dữ liệu, nó bao gồm các tác vụ, trong đó mỗi tác vụ có thể coi như

là một vector t=(t1, t2, ,tm) với ti = 0 nếu tác vụ t mua mặt hàng i, i=1, ,m

Với những định nghĩa trên thì cơ sở dữ liệu bán hàng của một siêu thị sẽ được biệt diễn là một tập D các tác vụ t Trong đó I là tập các thuộc tính hay tập các mặt hàng Ta có định nghĩa luật kết hợp như sau:

Trang 24

Định nghĩa 11: Luật kết hợp là biểu thức có dạng X⇒Y trong đó X ⊂ I, Y ⊂ I

và X∩Y=∅

Trong đinh nghĩa trên thì

X được gọi là tiên đề

Y được gọi là kết quả của luật

Định nghĩa 12: Độ hỗ trợ của một tập mục X, ký hiệu là Supp(X), là tỉ số giữa

số các tác vụ mà tập mục đó xuất hiện trên tổng số các tác vụ

Với định nghĩa trên thì ta dễ dàng có tính chất: Nếu A ⊆ B thì Supp(A)≥Supp(B)

Định nghĩa 13: Độ hỗ trợ của luật X⇒Y , ký hiệu là Supp(X⇒Y) được xác định như sau: Supp(X⇒Y)= Supp(X∪Y)

Định nghĩa 14: Độ tin cậy của luật dạng r=X⇒Y, ký hiệu là conf(X⇒Y) được định nghĩa: Conf(X⇒Y)=Supp(X∪Y)/Supp(X).ư

Ta thấy độ tin cậy của một luật chính là xác suất có điều kiện của tác vụ chứa

Y xét trong điều kiện chứa X

Ví dụ: Để hiểu rõ hơn các định nghĩa trên chúng ta xét ví dụ sau:

Cho một cơ sở dữ liệu như bảng sau:

Trong cơ sở dứ liệu trên gồm 5 tác vụ thao tác trên 6 tập mục là A, B, C, D, E,

F Khi đó thì độ hỗ trợ tương ứng của từng mục sẽ là: Ở đây tổng số tác vụ là 5, trong khi mục A xuất hiện trong 2 tác vụ là T1 và T3 nên có độ hỗ trợ là 2/5=40%

)(

:)

(

D card

T X T card X

Supp = ∈

Trang 25

Bảng 4 Độ hỗ trợ tương ứng của từng mục đơn

Tiếp tục tính độ hỗ trợ của các tập mục lớn hơn với mỗi tập gồm 2 mục ta có bảng :

Trang 26

Luật kết hợp Độ tin cậy conf(X⇒Y)A⇒C 100%

Bảng 6 Độ tin cậy của các luật

2.1.3 Thuật toán khai phá luật kết hợp

2.1.3.1 Tập phổ biến

Định nghĩa 15: Tâp mục X ⊆I được gọi phổ biến nếu thoả mãn supp(X) ≥

minsup Trong đó minsup là một độ hỗ trợ tối thiểu cho trước

Khái niệm phổ biến này cho phép chúng ta chỉ xét những tập mục xuất hiện trong cơ sở dữ liệu là đủ lớn, lớn hơn một minsup nào đó Khi đó luật của chúng ta sinh ra sẽ đáng tin cậy hơn

Ta có hệ quả sau:

Cho A và B là hai tập mục, A⊆B

a Nếu B là tập mục phổ biến thì A cũng là tập mục phổ biến

b Nếu A là tập mục không phổ biến thì B cũng là tập mục không phổ biến

2.1.3.2 Khai phá luật dựa trên tập mục phổ biến

Việc tìm kiếm luật kết hợp trong cơ sở dữ liệu được quy về 2 giai đoạn [7]:

− Tìm tất cả các luật có độ hỗ trợ lớn hơn một minssup Các tập mục này chính những tập mục phổ biến Các thuật toán Apriori và AprioriTid nhằm giải quyết vấn đề này

− Từ các tập mục tìm được ở trên tiến hành sinh những luật có độ tin cậy lớn hơn một minconf nào đó

Hai tham số minsupp và minconf được người sử dụng đưa vào khi hệ thống khai phá tri thức Các giá trị này thường được đưa ra bởi các chuyên gia kinh tế hoặc những người có kinh nghiệm

Trang 27

Ở trong giai đoạn nhất việc phát hiện những tập mục phổ biến tiến hành duyệt

dữ liệu rất nhiều lần Việc tìm các tập mục phổ biến thực hiện dựa trên hệ quả của định nghĩa 14 trình bày ở trên Và thực hiện lần luợt các bước sau:

− Đầu tiên người ta khởi tạo một tập thật giống các tập mục phổ biến

và sinh các tập mục phổ biến dựa trên tập mục hạt giống này

− Từ các tập mục phổ biến người ta thực hiện ghép các tập mục phổ biến để được các tập mục lớn hơn, các tập mục này được gọi là tập ứng cử viên

− Để tính được độ hỗ trợ của các tập mục phổ biến người ta phải thực hiện duyệt toàn bộ dữ liệu Khi đó sẽ tìm được những tập mục ứng cử viên là tập mục phổ biến

− Tập các tập mục ứng cử viên là phổ biến này được sử dụng là tập hạt giống cho bước tiếp theo

Cụ thể các thuật toán Apriori và AprioriTid sinh ra các tập ứng cử viên đó được tính trong một lần duyệt bằng việc sử dụng các tập mục được coi là phổ biến trong lần duyệt trước mà không cần quan tâm tới các tác vụ trong cơ sở dữ liệu Việc chỉ xét các tập mục là phổ biến trong lần trước để sinh các tập mục ứng cử viên dựa hệ quả rút ra từ định nghĩa 14 đã trình bày ở trên: “Bất kỳ tập con của một tập mục phổ biến nào cũng là tập mục phổ biến” Vì vậy tập ứng cử viên có k mục có thể sinh ra bởi tập các tập mục phổ biến có k-1 mục Điều này có thể dẫn đến việc giảm đáng kể các tập mục ứng cử viên, là giảm độ phức tạp trong tính toán

Thuật toán Apriori: Đây là thuật toán dùng để phát sinh các tập mục phổ

Trang 28

Các bước của thuật toán được trình bày dưới đây:

b Với mỗi ứng cử viên Ck phát sinh tất cả k-1 tập con của Ck

c Tỉa tất cả các ứng cử viên từ Ck trong đó có tập con (k-1) của nó không có trong tập mục phổ biến Lk-1

2 Duyệt trong cơ sở dữ liệu để xác định độ hỗ trợ của các tập ứng

cử viên Ck

3 Ghi lại các tập mục phổ biến Lk

Trong bước thứ 2 của mỗi lần duyệt, để có thể tính độ hỗ trợ của các tập ứng

cử viên thì thuật toán phải tiến hành duyệt lại toàn bộ cớ sở dữ liệu Quá trình này là thực sự đáng kể với những cơ sở dữ liệu lớn Khắc phục hạn chế trên thuật toán ApriporiTid đã lưu lai thông tin về các tác vụ gắn liền với mỗi tập mục phổ biến Điều này có thể giúp chúng ta khắc phục được hạn chế về việc phải đọc dữ liệu nhiều lần tuy nhiên lại gây khó khăn hơn cho chúng ta khi tổ chức bộ nhớ chương trình

Ở giai đoạn 2, giai đoạn sinh luật với mỗi tập mục phổ biến l ta tiến hành xây dựng những luật dạng a→(la) ở đây a là tập con của l sao cho

( ) ( )a conf p

l p

minsup

Trang 29

Một hạn chế đáng kể của các thuật toán trình bày ở trên là chỉ làm việc với dữ liệu ở dạng nhị phân, tức là giá trị của các thuộc tính chỉ nhận 2 giá trị là 0 và 1 Điều

đó dẫn đến việc thuật toán khó có thể áp dụng trực tiếp trên những cơ sở dữ liệu tự nhiên Muốn thực hiện được thuật toán cần phải định lượng các thuộc tính thành dạng nhị phân Quá trinh này làm giảm tính chính xác của kết quả thu được Trong chương sau chúng tôi sẽ trình bày một thuật toán có thể làm việc được với dữ liệu là đa trị, dữ liêu là dạng số thực

Trang 30

2.2 Sinh cây quyết định từ hệ thông tin

2.2.1 Thuật toán học cây quyết định

Phương pháp học cây quyết định là một trong những phương pháp được sử dụng rông rãi nhất cho việc học quy nạp từ một tập mẫu lớn [11] Đây là phương pháp xấp xỉ các hàm mục tiêu có giá trị rời rạc Mặt khác cây quyết định còn có thể chuyển sang dạng biểu diễn tương đương dưới dạng tri thức là các luật Nếu – Thì (if then)

Xét một ví dụ về cây quyết định

Cho một bảng dữ liệu sau:

Doc ai timetable system patallel relation database process graphic Class AI

Trang 31

Ta có cây quyết định:

Hình trên là một ví dụ về cây quyết định phân lớp AI các mẫu đưa vào theo bảng 5 Mỗi nút của cây biểu diễn một thuộc tính trong các mẫu, mỗi một nhánh tới nút tương ứng với một trong những giá trị cụ thể cho thuộc tính này Để đơn giản ta chỉ xét các thuộc tính nhị phân, tức là chỉ lấy giá trị là 0 và 1

Trong bảng 5, dữ liệu huấn luyện là 10 văn bản (trong các bài toán thực tế thì

số lượng văn bản có thể lên tới hàng nghìn) Mỗi văn bản có 8 thuộc tính nhị phân tương ứng với việc văn bản đó có hay không có từ đó Đó là các thuộc tính ai, system, paralell, relation, database, process, graphics.Thuộc tính cuối Class AI cùng là thuộc tính quyết định Đó là hàm mục tiêu của chúng ta, nó nhận giá trị 1 tức là văn bản đó thuộc lớp AI, 0 tức là văn bản đó không thuộc lớp AI

Mặt khác, từ cây quyết định trên chúng ta có thể sinh ra được các luật như sau: 1) Nếu (System=1) và (Timetable =1 ) thì class AI =Yes

2) Nếu (System=1) và (Timetable =0 ) thì class AI =No

3) Nếu (System=0) và (Process =1 ) thì class AI =No

4) Nếu (System=0) và ( Process=0 ) thì class AI =Yes

Trang 32

Giải thích cụ thể hơn ta có:

1) Nếu văn bản có từ System và từ Timetable thì thuộc lớp AI

2) Nếu văn bản có từ System và không có từ Timetable thì không thuộc lớp AI 3) Nếu văn bản không có từ System và có từ Process thì không thuộc lớp AI 4) Nếu văn bản không có từ System và không có từ Process thì thuộc lớp AI

Những bài toán nên sử dụng việc học cây quyết định:

Trong [10], Mitchel đã chỉ việc sử dụng cây quyết định phù hợp với việc giải quyết các bài toán sau:

− Các mẫu huấn luyện được biểu diễn thành những cặp giá trị - thuộc tính, các thuộc tính là một tập cố định Các giá trị thuộc tính là rời rạc Tuy nhiên trong các thuật toán sinh cây quyết định cải tiến sau này cho phép các thuộc tính nhận giá trị là giá trị thực Đặc biệt là thuật toán sinh cây quyết định sử dụng siêu phẳng được đưa ra trong[9] sẽ được trình chi tiết sau

− Hàm mục tiêu phải có giá trị rời rạc, trong bài toán phân lớp văn bản trên thì hàm mục tiêu có thể mở rộng thành nhiều giá trị đầu ra

− Trong trường hợp cần biểu diễn kết quả thu được dưới dạng các mô tả: Chẳng hạn như là dưới dạng luật thì cấu trúc cây quyết định có thể chuyển sang một cách dễ dàng

− Tập dữ liệu huấn luyện có thể chứa lỗi: Phương pháp học cây quyết định có thể thực hiện tốt trên các tập dữ liệu chứa lỗi, cả trên các lỗi trong phân lớp ví

dụ huấn luyện cũng như lỗi trên các giá trị thuộc tính trong các ví dụ này

− Tập dữ liệu có thể có những giá trị bị thiếu Phương pháp cây quyết định có thể được sử dụng trong các trường hợp các ví dụ huấn luyện có những giá trị chưa biết

Thuật toán ID3

Đây là một thuật toán cơ bản nhất trong lĩnh vực học cây quyết đinh, hầu hết các thuật toán học cây quyết đinh cải tiến sau này đều dựa trên nó ID3 và các thuật toán cải tiến của nó đều dựa vào cách tiếp cận từ trên xuống

Trong các thuật toán học cây quyết định thì thuật toán ID3 và thuật toán C4.5

là phổ biến nhất Thuật toán ID3 lần đầu tiên được Quinlan giới thiệu năm 1975 trong tạp trí Machine Learning, Vol 1, No.1.Sau đây chúng tôi trình bày thuật toán ID3, thuật toán được mô tả như sau [9]:

Ngày đăng: 05/03/2014, 18:20

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Aleksander. Discernibility and Rough Sets in Medicine: Tools and Applications Knowledge Systems Group, Dept. of Computer and Information Science, Norwegian University of Science and Technology, Trondheim, Norway Sách, tạp chí
Tiêu đề: Discernibility and Rough Sets in Medicine: Tools and Applications
[3]. Ho Tu Bao (1996). Introduction to Knowledge Discovery and Data mining. Institute of Information Technology National Center for Natural Science and Technology Sách, tạp chí
Tiêu đề: Introduction to Knowledge Discovery and Data mining
Tác giả: Ho Tu Bao
Năm: 1996
[4]. Fayyad, Piatetsky-Shapiro, Smyth, “From Data Mining to Knowledge Discovery: An Overiew”, in Fayyad, Piatetsky-Shapiro, Smyth, Uthurusamy, Advances in Knowl\ledge Discovery and Data Mining, AAAI Press/ The MIT Press, Menlo Park, CA, 1996, pp,1-34 Sách, tạp chí
Tiêu đề: From Data Mining to Knowledge Discovery: An Overiew
[7]. Rakesh Agrawal, Tomasz Imielinski, Arun Swami (1993). Mining Assosication Rules between Sets of item in Large Databases. Proceedings of the 1993 ACM SIGMOD conference Washington DC, USa, May 1993 Sách, tạp chí
Tiêu đề: Mining Assosication Rules between Sets of item in Large Databases
Tác giả: Rakesh Agrawal, Tomasz Imielinski, Arun Swami
Năm: 1993
[8] Ronald J.Branchman and Tej Anand. The Process of Knowledge Discoery inDatabases, 1996 Sách, tạp chí
Tiêu đề: The Process of Knowledge Discoery inDatabases
[9] Nguyen Hung Son, Nguyen Sinh Hoa. From Optimal Hyperplanes to Optimal Decision Trees: Rough Set and Boolean Reasoning Approaches, Institute of Computer Sciences Warsaw University 02-097, Banacha 2, Warsaw, Poland Sách, tạp chí
Tiêu đề: From Optimal Hyperplanes to Optimal Decision Trees: Rough Set and Boolean Reasoning Approaches
[10] Hà Quang Thuỵ (1996). Một số vấn đề về không gian xấp xỉ, tập thô đối với hệ thông tin. Luận án Phó tiến sĩ Khoa học Toán Lý. ĐHKHTN, 1996 Sách, tạp chí
Tiêu đề: Một số vấn đề về không gian xấp xỉ, tập thô đối với hệ thông tin
Tác giả: Hà Quang Thuỵ
Năm: 1996
[12]. Wojciech P. Ziarko (Ed., 1994). Rough Sets, Fuzzy Sets and Knowledge Discovery. Proceedings of the International Workshop on Rough Sets and Knowledge Discovery (RSKD'93), Banff, Alberta, Canada, 12-15 October 1993. Springer-Verlag Sách, tạp chí
Tiêu đề: Rough Sets, Fuzzy Sets and Knowledge Discovery
[5]. Sinh Nguyen Hoa, Andrzej Skowron, Piotr Synak (1998). Discovery of Data Patterns with Application to Decomposition and Classification Problems Khác
[6]. Jan Komorowski, Zdzislaw Pawlak, Lech Polkowski, Andrzej Skowron (2000). Rough sets: A tutorial Khác

HÌNH ẢNH LIÊN QUAN

Hình 1. Mô hình mô tả quá trình khai phá tri thức. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Hình 1. Mô hình mô tả quá trình khai phá tri thức (Trang 10)
Định nghĩa 3: Bảng quyết định là một hệ thông tin có dạng - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
nh nghĩa 3: Bảng quyết định là một hệ thông tin có dạng (Trang 14)
Bảng 1. Ví dụ về hệ thông tin. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 1. Ví dụ về hệ thông tin (Trang 14)
Bảng 2. Ví dụ một bảng quyết định. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 2. Ví dụ một bảng quyết định (Trang 15)
Bảng 3. Ví dụ về một cơ sở dữ liệu. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 3. Ví dụ về một cơ sở dữ liệu (Trang 24)
Bảng 5. Độ hỗ trợ tương ứng của các  tập mục khác - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 5. Độ hỗ trợ tương ứng của các tập mục khác (Trang 25)
Bảng 4. Độ hỗ trợ tương ứng của từng mục đơn. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 4. Độ hỗ trợ tương ứng của từng mục đơn (Trang 25)
Bảng 6. Độ tin cậy của các luật. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 6. Độ tin cậy của các luật (Trang 26)
Bảng 6. Các ví dụ huấn luyện tron cây quyết định. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 6. Các ví dụ huấn luyện tron cây quyết định (Trang 30)
Hình trên là một ví dụ về cây quyết định phân lớp AI các mẫu đưa vào theo  bảng 5. Mỗi nút của cây biểu diễn một thuộc tính trong các mẫu, mỗi một nhánh tới  nút tương ứng với một trong những giá trị cụ thể cho thuộc tính này - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Hình tr ên là một ví dụ về cây quyết định phân lớp AI các mẫu đưa vào theo bảng 5. Mỗi nút của cây biểu diễn một thuộc tính trong các mẫu, mỗi một nhánh tới nút tương ứng với một trong những giá trị cụ thể cho thuộc tính này (Trang 31)
Bảng 7. Giá trị informatin Gain của các thuộc tính. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 7. Giá trị informatin Gain của các thuộc tính (Trang 35)
Bảng 8. Một dạng của bảng quyết định dạng A* - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 8. Một dạng của bảng quyết định dạng A* (Trang 36)
Bảng 10. Ví dụ về bảng quyết định. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 10. Ví dụ về bảng quyết định (Trang 47)
Hình 4. Các nhánh cây bị phân theo thuật toán đối với các đối tượng ở bảng 10. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Hình 4. Các nhánh cây bị phân theo thuật toán đối với các đối tượng ở bảng 10 (Trang 48)
Bảng 12. Bảng giá trị hàm power 1  của các siêu phẳng chọn theo thuộc tính (2) - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 12. Bảng giá trị hàm power 1 của các siêu phẳng chọn theo thuộc tính (2) (Trang 48)
Hình 6. Cây quyết định được thành lập sau khi thực hiện thuật toán. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Hình 6. Cây quyết định được thành lập sau khi thực hiện thuật toán (Trang 50)
Bảng 16. Kết quả thử nghiêm chương trình. - Luận văn tốt nghiệp: Phát hiện luật bằng cách sử dụng siêu phằng tối ưu theo hướng tiếp cận thô ppt
Bảng 16. Kết quả thử nghiêm chương trình (Trang 61)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w