Đăng ký Đăng nhập
Trang chủ 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ô...

Tài liệu 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ô

.PDF
64
89
87

Mô 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ô 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ĩ. 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 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 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 U Tập tất cả các đối tượng ∅ Tập rỗng ⊆ Bị chứa trong ∈ Thuộc (phần tử thuộc tập hơp) ≥ Lớn hơn hoặc bằng ≤ Nhỏ hơn hoặc bằng ≠ Khác ∪, ∩ phép lấy giao và hợp của tập hợp 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. 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 Đỗ 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. 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]: Xác định và định nghĩa vấn đề 1 Thu nhập và tiền xử lý dữ liệu 2 Khai phá dữ liệu 3 Giải thích kết quả và đánh giá 4 Sử dụng tri thức phát hiện được 5 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. 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. − 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. − .v.v. Như vậy, khai phá dữ liệu là một giai đoạn quan trọng trong quá trình khai phá tri thức và nó đang được áp dụng rộng rãi trong nhiều lĩnh vực như: − Phân tích dữ liệu và hỗ trợ ra quyết định (data analysis & decision support) − Đ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. 1.2 . Khai phá tri thức theo cách tiếp cận tập thô 1.2.1. 1.2.1.1. Một số khái niệm 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). Trong đó: U : là một tập hữu hạn khác rỗng các đối tượng. A : là một tập hữu hạn khác rỗng các thuộc tính. a: U → Va với mọi a ∈ A. Tập Va được gọi là tập giá trị của thuộc tính 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). (1) (2) (8) X1 2 102 31 X2 4 146 70 X3 3 102 28 X4 2 90 37 X5 2 90 31 X6 2 146 28 X7 2 102 31 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 A = (U, A∪{d}) Trong đó: d ∉A là thuộc tính phân biệt, được gọi là thuộc tính quyết định. Các thành phần của A được gọi là các thuộc tính điều kiện. Ví dụ: Bảng 2 mô tả một bảng quyết định, với các thuộc tính điều kiện lấy ở bảng 1 và thêm vào thuộc tính quyết đinh (9).Trong đó thuộc tính thứ (9) chỉ nhận hai giá trị là 1(ứng với trường hợp bị bệnh), và 2(ứng với trường hợp không bị bệnh) (1) (2) (8) (9) X1 2 102 31 1 X2 4 146 70 2 X3 3 102 28 1 X4 2 90 37 2 X5 2 90 31 1 X6 2 146 28 2 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)}. 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] A=(U, Con∪Dec). 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 mà xRy. Bây giờ chúng ta bắt đầu định nghĩa một quan hệ tương đương trên hệ thông tin. Quan hệ này sau này được sử dụng đê biểu diễn những thông tin mập mờ, không rõ ràng. Định nghĩa 6: Một quan hệ tương đương (ký hiệu là INDA(B)), được định nghĩa như sau: INDA(B)={(x,x’) ∈ U2 ⏐∀a ∈ B: a(x) = a(x’)} Trong đó: 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. 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} ). Trong đó: U= {x1, . . . ,xn}, A={a1, . . . ,ak} và d:U→{1,. . .,r} Giả sử Va=[la, ra) ⊂ R với mọi a thuộc A Chúng ta giả sử rằng A là một bảng quyết định thống nhất. Xét Pa là một cách chia Va thành các khoảng con như; { } Pa = [c0a , c1a ), [c1a , c2a ),..., [c ka , c ka +1 ) với ka là một số nguyên khi: a a la = c 0a < c1a < K < c ka < c ka +1 = ra a a và Va = [c0a , c1a ) ∪ [c1a , c2a ) ∪ . . . ∪ [cka , cka a a +1 ). { Khi đó Pa sẽ định nghĩa duy nhất tập các nhát cắt trên Va : Ca = c 0a , c1a ,K, c ka a } 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. 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à: [X1]B=[X7]B={X1, X7}, [X2]B={X2}, [X3]B={X3}, [X4]B={X4}, [X5]B={X5}, [X6]B={X6} Ta xét một tập X các bệnh nhân là bị bệnh (thuộc tính quyết định có giá trị 1) X={X1, X3, X5}. Khi đó tập X là không mô tả được theo tập các tập sơ cấp trên. Hai bệnh nhân X1 và X7 thuộc cùng một tập sơ cấp nhưng có giá trị quyết định khác nhau. Khi diễn tả tập X có bênh nhân X1 thì phải chứa tập sơ cấp [X1]B. Mà tập [X1]B thì lại chứa bênh nhân X7 là không bị bệnh (thuộc tính quyết định có giá trị là 2). Như vậy tập X là không mô tả được theo các tập sơ cấp trên. 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 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ập B 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ập B 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ó. a) Các tính chất của sự xấp xỉ[2,12]: (1) B X ⊆ X ⊆ B X , (2) B (∅) = B (∅), B (U) = B (U) = U, (3) B (X ∪ Y) = B (X) ∪ B (Y), (4) B ( X ∩ Y) = B (X) ∩ B (Y), (5) Nếu X ⊆Y thì B (X) ⊆ B (Y) và B (X) ⊆ B (Y), (6) B ( X ∪ Y) ⊇ B (X) ∪ B (Y), (7) B (X ∩Y) ⊆ B (X) ∩ B (Y), (8) B (-X) = - B (X), (9) B (-X) = - B (X), (10) B ( B (X)) = B ( B (X)) = B (X), (11) B ( B (X)) = B ( B (X)) = B (X). 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. c) Độ đo liên quan biên xấp xỉ: αB (X ) = B( X ) B( X ) , Tập thô được chỉ số hoá bởi hệ số sau: Trong đó: α B (X ) : gọi là độ đo liên quan xấp xỉ của X. |X| : là lực lượng của X. Ta có thể thấy 0≤ α B ( X ) ≤1. Nếu α B ( X ) =1 thì X đúng hoàn toàn đối với tập thuộc tính B, ngược lại thì α B ( X ) <1 thì X là thô đối với B. 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
- Xem thêm -

Tài liệu liên quan