Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 69 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
69
Dung lượng
1,61 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ Lê Thị Thanh Hải VẤN ĐỀ VỀ LUẬT KẾT HỢP MỜ VÀ CÁC TỐN TỬ CĨ NGƢỠNG TRONG KHAI PHÁ DỮ LIỆU Ngành: Công nghệ thông tin Mã ngành: 1.01.10 TÓM TẮT LUẬN VĂN THẠC SỸ NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TSKH Bùi Công Cƣờng Hà Nội - 2007 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu MỤC LỤC MỤC LỤC DANH MỤC BẢNG BIỂU, HÌNH VẼ, CƠNG THỨC & KÍ HIỆU VIẾT TẮT LỜI CẢM ƠN MỞ ĐẦU CHƯƠNG - LUẬT KẾT HỢP 1.1 Ý NGHĨA THỰC TIỄN CỦA LUẬT KẾT HỢP 1.2 MƠ HÌNH HÌNH THỨC CỦA VẤN ĐỀ PHÁT HIỆN LUẬT 1.2.1 Các định nghĩa 1.2.1.1 Thuộc tính CSDL 1.2.1.2 Độ hỗ trợ tập thuộc tính 10 1.2.1.3 Tập phổ biến (Frequent Itemset): 10 1.2.1.4 Độ hỗ trợ luật r = X Y 10 1.2.1.5 Độ tin cậy luật: r = X Y 10 1.2.1.6 Luật kết hợp mạnh: 11 1.2.2 Bài toán luật kết hợp 11 1.2.3 Một số tính chất tập phổ biến luật kết hợp 13 1.3 THUẬT TỐN TÌM LUẬT KẾT HỢP 14 1.3.1 Thuật toán Apriori nhị phân 14 1.3.1.1 Giới thiệu 14 1.3.1.2 Các bước thực 15 1.3.1.3 Giải thích: 15 1.3.2 Thuật toán AprioriTid 17 1.3.2.1 Giới thiệu thuật toán 17 1.3.2.2 Các bước thực 17 1.3.2.3 Giải thích 18 1.3.3 Sinh luật kết hợp mạnh từ tập phổ biến 20 1.3.3.1 Thuật toán 20 1.3.3.2 Thuật toán nhanh hơn: 21 1.3.4 Thuật toán FP-Growth 22 1.3.4.1 Ví dụ 1.2: 23 1.3.4.2 Thuật toán: 26 CHƯƠNG - LUẬT KẾT HỢP MỜ 29 2.1 Ý NGHĨA VỀ LUẬT KẾT HỢP MỜ 29 2.2 TẬP MỜ (FUZZY SET) VÀ MỘT SỐ KHÁI NIỆM [1] 30 2.2.1 Tập mờ: 30 2.2.1.1 Định nghĩa tập mờ: 31 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu 2.2.1.2 Các phép toán tập mờ: 31 2.2.2 Số mờ số dạng phổ biến 32 2.2.2.1 Định nghĩa tập mức: 32 2.2.2.2 Định nghĩa số mờ: 32 2.2.2.3 Các dạng phổ biến số mờ: 32 2.2.3 Các phép toán logic mờ (toán tử mờ) 33 2.2.3.1 Phép phủ định (negation) 33 2.2.3.2 Phép hội (conjunction): 33 2.2.3.3 Phép tuyển (disconjunction): 34 2.3 LUẬT KẾT HỢP MỜ 34 2.3.1 Cơ sở liệu thuộc tính: 34 2.3.2 Độ đo luật 35 2.3.2.1 Độ ủng hộ ghi cho mệnh đề 35 2.3.2.2 Độ hỗ trợ mệnh đề 36 2.3.2.3 Tập phổ biến 36 2.3.2.4 Độ hỗ trợ luật mờ: 36 2.3.2.5 Độ tin cậy luật mờ 36 2.3.3 Bài toán 37 2.3.4 Ưu điểm việc áp dụng tập mờ để rời rạc hoá liệu 37 2.4 LUẬT KẾT HỢP MỜ VỚI CÁC TỐN TỬ CĨ NGƯỠNG 38 2.4.1 Tốn tử có ngưỡng 38 2.4.1.1 Định nghĩa: t-chuẩn có ngưỡng 38 2.4.1.2 Định nghĩa: t-đối chuẩn có ngưỡng 38 2.4.2 Bài toán 39 2.4.3 Thuật toán [9] 39 2.4.3.1 Các ký hiệu sử dụng thuật toán: 39 2.4.3.2 Thuật toán: 40 2.4.3.3 Các chương trình sử dụng thuật tốn: 40 2.4.3.4 Ví dụ minh họa thuật tốn (Ví dụ 2.2) : 41 2.4.4 Chuyển luật kết hợp mờ luật có thuộc tính số 45 2.4.5 Luật kết hợp mờ với thuộc tính đánh trọng số 45 2.4.6 Luật thật có ích 46 2.4.6.1 Phương pháp loại bỏ luật thừa 46 2.4.6.2 Phương pháp tìm luật đơn giản 46 CHƯƠNG - CÀI ĐẶT THỬ NGHIỆM 47 KẾT LUẬN 51 TÀI LIỆU THAM KHẢO 53 PHỤ LỤC 55 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ toán tử có ngưỡng khai phá liệu DANH MỤC BẢNG BIỂU, HÌNH VẼ, CƠNG THỨC & KÍ HIỆU VIẾT TẮT DANH MỤC BẢNG BIỂU Bảng 1.1 CSDL giao dịch (Ví dụ 1.1) 12 Bảng 1.2 Độ hỗ trợ thuộc tính (Ví dụ 1.1) 12 Bảng 1.3 Danh sách tập mục phổ biến (Ví dụ 1.1) 12 Bảng 1.4 Độ tin cậy luật sinh từ tập phổ biến (Ví dụ 1.1) 12 Bảng 1.5 Thực bước thuật toán Apriori 19 Bảng 1.6 Cơ sở liệu giao dịch (Ví dụ 1.2) 23 Bảng 1.7 Độ hỗ trợ tất thuộc tính (Ví dụ 1.2) 24 Bảng 1.8 Các tập phổ biến có thuộc tính (Ví dụ 1.2) 24 Bảng 1.9 Cơ sở liệu lần thứ (Ví dụ 1.2) 25 Bảng 2.1 Cơ sở liệu giao tác (Ví dụ 2.1) 29 Bảng 2.2 Cơ sở liệu sau rời rạc hóa thuộc tính mục (Ví dụ 2.1) 30 Bảng 2.3 Cơ sở liệu giao tác (Ví dụ 2.2) 41 Bảng 2.4 Cơ sở liệu mờ (Ví dụ 2.2) 43 Bảng 2.5 Độ hỗ trợ tập có thuộc tính (Ví dụ 2.2) 44 Bảng 2.6 Độ hỗ trợ tập có thuộc tính (Ví dụ 2.2) 44 Bảng 2.7 Luật sinh (Ví dụ 2.2) 45 DANH MỤC HÌNH VẼ Hình 1.1 Cây CSDL duyệt lại (Ví dụ 1.2) 25 Hình 1.2 Cây CSDL kết hợp với bảng thuộc tính (Ví dụ 1.2) 26 Hình 2.1 Tập mờ 31 Hình 2.2 Số mờ 32 Hình 2.3 Số mờ dạng tam giác 32 Hình 2.4 Số mờ dạng hình thang 32 Hình 2.5 Số mờ dạng úp chuông 32 Hình 2.6 Đồ thị hàm thuộc tập mờ thuộc tính Tuổi 42 Hình 2.7 Đồ thị hàm thuộc tập mờ thuộc tính TGDSD 42 Hình 2.8 Đồ thị hàm thuộc tập mờ thuộc tính TGSDHN 42 Hình 3.2 Giao diện xây dựng thuộc tính mờ từ thuộc tính gốc ban đầu 49 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu Hình 3.3 Giao diện Cơ sở liệu mờ 50 Hình 3.4 Giao diện kết sinh luật tin cậy 50 DANH MỤC CÔNG THỨC Độ hỗ trợ tập thuộc tính 10 Độ hỗ trợ luật 10 Độ tin cậy luật 11 Số mờ dạng tam giác M(a,b,c) 32 Số mờ dạng hình thang M(a,b,c,d) 32 Số mờ dạng úp chuông 32 Độ ủng hộ ghi cho mệnh đề 35 Độ hỗ trợ mệnh đề 36 Độ hỗ trợ luật mờ 36 Độ tin cậy luật mờ 36 Tốn tử t-chuẩn có ngưỡng 38 Tốn tử t-đối chuẩn có ngưỡng 38 KÝ HIỆU VIẾT TẮT - CSDL - Database: sở liệu - fminconf - fuzzy minimum confidence: độ tin cậy tối thiểu mờ - fminsupp - fuzzy minimum support: độ hỗ trợ tối thiểu mờ - minconf - minimum confidence: độ tin cậy tối thiểu - minsupp - minimum support: độ hỗ trợ tối thiểu - t-conorm: t-đối chuẩn - TID - Transaction Identification : định danh thuộc tính - t-norm: t-chuẩn Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu MỞ ĐẦU Ngày với bùng nổ khoa học công nghệ, kỹ thuật số cho phép số hóa thơng tin cách dễ dàng Chính vậy, với lượng liệu khổng lồ công văn giấy tờ, chứng từ, tài liệu, thông tin khách hàng, số liệu kinh doanh,…việc đưa công cụ để phân tích xử lý thơng tin trở thành vấn đề thiết yếu Ví dụ ngành kinh doanh, vấn đề quảng cáo mặt hàng nào? nên đặt bố trí, nhập hàng sao? thường xuyên đặt Và thế, khai phá liệu trở thành hướng nghiên cứu lĩnh vực khoa học máy tính cơng nghệ tri thức để nhằm thực yêu cầu xã hội Để chọn lọc thơng tin có ý nghĩa, nhiều toán đưa số Khai phá luật kết hợp Khai phá luật kết hợp lần đưa vào năm 1993 Rakesh Agrawal, Tomasz Imielinsky Arun Swami giới thiệu Sau đó, năm 1996 Rakesh Agrawal, Heikki Mannila, Ramakrishnan Srikant, Hannu Toivonen A Inkeri Verkamo tiếp tục phát triển Trong năm gần đây, người ta tập trung vào cải tiến, phát triển thuật toán hiệu từ thuật tốn có xây dựng thuật toán nhằm phát luật kết hợp có ý nghĩa Các thơng tin liệu thực tế không tồn dạng nhị phân (có khơng) mà cịn định lượng Chính vậy, khái niệm tập mờ kết hợp với khai phá luật kết hợp để trở thành hướng nghiên cứu Việc kết hợp tập mờ thơng qua tốn tử (t-chuẩn, t-đối chuẩn) với ngưỡng mở rộng để giải toán khai phá luật kết hợp Do lĩnh vực nghiên cứu quan tâm có nhiều triển vọng nên chọn “Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu” làm đề tài cho luận văn Luận văn xây dựng số nghiên cứu lĩnh vực năm gần Luận văn tổ chức thành chương sau: Chương 1: Luật kết hợp Trong chương tơi trình bày nét khái qt khai phá liệu luật kết hợp thông qua việc đưa khái niệm, định nghĩa tốn tìm luật kết hợp Những thuật tốn điển hình luật kết hợp thuật tốn Apriori vài thuật toán khác đề cập để giải toán Chương 2: Luật kết hợp mờ với tốn tử có ngưỡng Ở phần đầu chương tơi trình bày khái niệm liên quan đến tập mờ để từ làm sở đưa vào toán khai phá luật kết hợp Với tốn có thuộc tính số hạng mục việc rời rạc hóa Lê Thị Thanh Hải Vấn đề luật kết hợp mờ toán tử có ngưỡng khai phá liệu liệu xảy vài nhược điểm vấn đề “điểm biên gãy” Vì luật kết hợp mờ giải pháp hiệu Phần cuối chương khái niệm tốn tử có ngưỡng đưa toán xây dựng luật kết hợp mờ với tốn tử có ngưỡng Chương 3: Cài đặt thử nghiệm: Là phần cài đặt thử nghiệm chương trình dùng liệu việc sử dụng internet Kết luận: Phần nêu lại việc thực kết đạt luận văn, vấn đề chưa giải thấu đáo số hướng nghiên cứu tương lai Lê Thị Thanh Hải Vấn đề luật kết hợp mờ toán tử có ngưỡng khai phá liệu CHƢƠNG - LUẬT KẾT HỢP Luật kết hợp lĩnh vực quan trọng khai phá liệu kỹ thuật khai phá luật kết hợp ngày quan tâm phát triển mạnh năm trở lại đây, trở thành hướng nghiên cứu lớn Trong chương này, tìm hiểu khái niệm sở thuật toán kinh điển luật kết hợp Ý NGHĨA THỰC TIỄN CỦA LUẬT KẾT HỢP 1.1 Luật kết hợp luật có dạng: X Y Trong lĩnh vực bán hàng ta có luật: “40% khách hàng mua cafe mua thêm bánh quy, 3% khách hàng mua cafe bánh quy” Ở ví dụ diễn tả mối quan hệ cafe bánh quy hay ta có luật X Y tương đương với cafe bánh quy Cafe tiền đề luật bánh quy kết luật Các hệ số 40% 3% độ đo luật - 40% độ tin cậy luật: khách hàng mua cafe có 40% mua thêm bánh quy - 3% độ hỗ trợ luật: tất khách hàng mua cửa hàng có 3% mua mặt hàng cafe bánh quy Các số ta định nghĩa cụ thể phần MƠ HÌNH HÌNH THỨC CỦA VẤN ĐỀ PHÁT HIỆN LUẬT 1.2 1.2.1 Các định nghĩa 1.2.1.1 Thuộc tính CSDL - I = {I1, I2, …,In} tập tất mục (Item) hay gọi tập tất thuộc tính (attributes) thuộc tính Ii với i = 1, n gọi mục liệu - X = {Ix1, Ix2,…,Ixp} I tập thuộc tính (Itemset) - D = (T1, T2, …, Tm) sở liệu I, tập tất tác vụ (transaction) hay gọi tập ghi Mỗi ghi Tk với k = 1, m có định danh (TIDTransaction Identification) tập thuộc tính Tk I với k = 1, m Ta có Tk(Iv) xác định giá trị thuộc tính Iv Ví dụ: xét thuộc tính phân, Tk(Iv) = nghĩa khách hàng Tk chọn mua mặt hàng Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu Iv, Tk(Iv) = khách hàng Tk không chọn mua hàng Iv) - Một luật kết hợp có dạng X Y Trong đó: + X I tiền đề luật + Y I hệ luật, +XY= biểu thị mối quan hệ tập thuộc tính X tập thuộc tính Y Vì nói luật kết hợp biểu thị mối quan hệ tập I Độ hỗ trợ độ tin cậy thước đo luật kết hợp 1.2.1.2 Độ hỗ trợ tập thuộc tính Cho tập thuộc tính X I, sở liệu D Độ hỗ trợ (support) tập thuộc tính X sở liệu D (Ký hiệu supp(X)) tỷ lệ % số ghi sở liệu D chứa tập thuộc tính X với tổng số ghi sở liệu D Supp( X ) 1.2.1.3 | {Tk D \ X Tk | |D| Tập phổ biến (Frequent Itemset): Cho tập thuộc tính X I sở liệu D ngưỡng hỗ trợ tối thiểu minsupp (0,1] (minsupp - Minimum Support) xác định người sử dụng Một tập thuộc tính X gọi tập phổ biến theo ngưỡng minsupp độ hỗ trợ lớn ngưỡng minsupp X I tập phổ biến supp(X) minsupp Ký hiệu: FX(D, minsupp) tập hợp tập phổ biến theo ngưỡng minsupp FX( D, minsupp) = {X I \supp(X) minsupp} 1.2.1.4 Độ hỗ trợ luật r = X Y Độ hỗ trợ luật tính cơng thức: Supp (r) = supp(XY) 1.2.1.5 Độ tin cậy luật: r = X Y Độ tin cậy luật r sở liệu D (Ký hiệu conf(r)) tỷ lệ % số ghi D chứa tập thuộc tính X chứa tập thuộc tính Y Về mặt xác suất độ tin cậy luật r xác suất có điều kiện xảy Y với điều kiện xảy X 10 Lê Thị Thanh Hải conf (r ) 1.2.1.6 Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu Tk D \ X Tk , Y Tk Tk D \ X Tk Tk D \ X Y Tk Tk D \ X Tk Tk D \ X Y Tk D D Tk D \ X Tk supp( X Y ) supp( X ) Luật kết hợp mạnh: Luật r = X Y gọi luật kết hợp mạnh theo ngưỡng độ hỗ trợ tối thiểu minsupp (0,1] độ tin cậy tối thiểu minconf (0,1] (Minimum Confidence) độ hỗ trợ luật lớn độ hỗ trợ tối thiểu độ tin cậy luật lớn độ tin cậy tối thiểu r = X Y luật kết hợp mạnh Supp (r) minsupp Conf (r) minconf 1.2.2 Bài toán luật kết hợp Người ta quan tâm đến luật kết hợp mạnh theo ngưỡng minsupp minconf cho trước Chính tốn khai phá luật kết hợp thường chia làm pha: 1- Tìm tất tập phổ biến (FX) sở liệu, nghĩa tìm tất tập thuộc tính X cho supp(X) minsupp 2- Sinh luật kết hợp mạnh từ tập phổ biến tìm thấy pha 1Ví dụ 1.1: Bài tốn khai phá luật kết hợp Thực toán khai phá luật kết hợp đầu vào: Cho CSDL D = {T1, T2, T3, T4, T5, T6} I = {A, B, C, D, E, F} Các thuộc tính TID T1 A, C, E, F T2 B, C, E T3 A, B, D, E 11 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ toán tử có ngưỡng khai phá liệu rs1.Fields(i) = Hinhthang(RS.Fields("" & rs2!ttgoc & "").Value, rs2!hsa, rs2!hsb, rs2!hsc, rs2!hsd) End If rs1.Update rs1.MoveNext RS.MoveNext Loop End If rs2.Close Next End If RS.Close rs1.Close End Sub ' Dua vao bang CK voi k = Public Sub CK1() Dim sql As String Dim RS As New ADODb.Recordset Dim rs1 As New ADODb.Recordset Dim rs2 As New ADODb.Recordset Dim rs3 As New ADODb.Recordset Dim i As Integer Dim k As Integer ' Cap thu nhat sql = "select * from tt_mo" clsConn.GetRs connQLPK, sql, RS If Not (RS.BOF And RS.EOF) Then sql = "select " i = Do While Not RS.EOF If i + > RS.RecordCount Then sql = sql & " sum(" & RS!ma & ") as " & RS!ma Else sql = sql & " sum(" & RS!ma & ") as " & RS!ma & ", " End If RS.MoveNext i = i + Loop sql = sql & " from " & tblMO clsConn.GetRs connQLPK, sql, rs1 sql = "select * from Ck" clsConn.GetRs connQLPK, sql, rs2 If Not (rs1.EOF And rs1.BOF) Then For i = To rs1.Fields.Count - sql = "select id from tt_mo where ma ='" & rs1.Fields(i).Name & "'" clsConn.GetRs connQLPK, sql, rs3 rs2.AddNew rs2!TT = rs1.Fields(i).Name rs2!dohotro = rs1.Fields(i).Value / RecNum rs2!cap = rs2!ck_truoc = If (rs1.Fields(i).Value / RecNum) > fminsupp Then rs2!phobien = True Else rs2!phobien = False End If 56 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu rs2!thichhop = True If Not (rs3.EOF And rs3.BOF) Then rs2!id_ttmo_tiep = rs3!id End If rs2!tt_mo = rs1.Fields(i).Name rs2.Update rs3.Close sql = "insert into Ck_TTMo values(" & rs2!id & "," & rs2!id_ttmo_tiep & ")" clsConn.ExecQuery connQLPK, sql Next End If rs1.Close rs2.Close End If End Sub ' ' Cac ham bo tro cho viec tinh toan Public Function max(ByVal x As Double, ByVal y As Double) As Double If x >= y Then max = x Else max = y End If End Function Public Function min(ByVal x As Double, ByVal y As Double) As Double If x >= y Then = y Else = x End If End Function Public Function min2(ByVal x As Double, ByVal y As Double, ByVal z As Double) As Double Dim t As Double t = min(x, y) min2 = min(t, z) End Function Public Function T1(ByVal x As Double, ByVal y As Double) As Double If x >= y Then T1 = y Else T1 = x End If End Function Public Function T2(ByVal x As Double, ByVal y As Double) As Double If (x + y - x * y) = Then T2 = Else T2 = (x * y) / (x + y - x * y) End If End Function Public Function T3(ByVal x As Double, ByVal y As Double) As Double 57 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu T3 = x * y End Function Public Function T4(ByVal x As Double, ByVal y As Double) As Double If (2 - (x + y - x * y)) = Then T4 = Else T4 = (x * y) / (2 - (x + y - x * y)) End If End Function Public Function T5(ByVal x As Double, ByVal y As Double) As Double If (x + y) >= Then Tl = x + y - Else Tl = End If End Function Public Function T6(ByVal x As Double, ByVal y As Double) As Double If max(x, y) = Then Td = min(x, y) Else Td = End If End Function Public Function NhiphanA(ByVal z As Double, ByVal a As Double, ByVal b As Double) As Double If b = Then NhiphanA = Else NhiphanA = End If End Function Public Function Tamgiac(ByVal z As Double, ByVal a As Double, ByVal b As Double, ByVal c As Double) As Double Dim t As Double Dim T1 As Double If b - a = Then t = (z - a) / (b - a) Else t = End If If c - b = Then T1 = Else T1 = (c - z) / (c - b) End If Tamgiac = max(min2(t, 1, T1), 0) End Function Public Function Hinhthang(ByVal z As Double, ByVal a As Double, ByVal b As Double, ByVal c As Double, ByVal d As Double) As Double Dim t As Double Dim T1 As Double If b - a = Then 58 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu t = Else t = (z - a) / (b - a) End If If d - c = Then T1 = Else T1 = (d - z) / (d - c) End If Hinhthang = max(min2(t, 1, T1), 0) End Function Public Function F1(ByVal colname As String, ByVal tblname As String) As Double Dim sql As String Dim RS As New ADODb.Recordset Dim t As Double Dim T1 As Double Dim T2 As Double sql = "select sum(" & colname & " ) as tong from " & tblname End Function 'Dua dieu kien vao de fuc vu cho tinh ho tro - Thuc hien sau Joint Public Sub Dieukien(ByVal cap As Integer) Dim sql As String Dim RS As New ADODb.Recordset Dim rs1 As New ADODb.Recordset Dim rs2 As New ADODb.Recordset Dim rs3 As New ADODb.Recordset Dim rs4 As New ADODb.Recordset Dim rs5 As New ADODb.Recordset Dim i As Integer Dim bien1 As String sql = "select * from " & tblMO & " order by TID " clsConn.GetRs connQLPK, sql, RS If cap = Then sql = "select * from tt_mo order by id " clsConn.GetRs connQLPK, sql, rs1 If Not (RS.EOF And RS.BOF And rs1.EOF And rs1.BOF) Then Do While Not RS.EOF rs1.MoveFirst Do While Not rs1.EOF If RS.Fields("" & rs1!ma & "").Value >= rs1!nguong Then sql = "insert into dieukien(cot,TID,giatri) values('" & rs1!ma & "'," & RS!TID & ",True)" Else sql = "insert into dieukien(cot,TID,giatri) values('" & rs1!ma & "'," & RS!TID & ",False)" End If clsConn.ExecQuery connQLPK, sql rs1.MoveNext Loop RS.MoveNext Loop End If rs1.Close 59 Lê Thị Thanh Hải Else Dim Dim Dim Dim Dim Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu cot1 As String cot2 As String value_cot1 As Boolean value_cot2 As Boolean value_cuoi As Boolean sql = "select * from ck where cap = " & cap clsConn.GetRs connQLPK, sql, rs2 If Not (rs2.EOF And rs2.EOF) Then Do While Not rs2.EOF RS.MoveFirst Do While Not RS.EOF sql = "select * from dieukien where (cot ='" & rs2!tt_truoc & "' or cot ='" & rs2!tt_mo & "' ) and TID=" & RS!TID clsConn.GetRs connQLPK, sql, rs3 If Not (rs3.EOF And rs3.BOF) Then If rs3.RecordCount = Then rs3.MoveFirst value_cot1 = rs3!giatri rs3.MoveNext value_cot2 = rs3!giatri value_cuoi = value_cot1 And value_cot2 sql = "insert into dieukien(cot,TID,giatri,id_ck) values('" & rs2!TT & "'," & RS!TID & "," & value_cuoi & "," & rs2!id & ")" clsConn.ExecQuery connQLPK, sql End If End If rs3.Close RS.MoveNext Loop rs2.MoveNext Loop End If rs2.Close End If End Sub ' Thay doi cau truc bang Mo de dua them cac truong du lieu la tap phobien Public Sub Alter_tbl_Mo(ByVal cap As Integer) Dim sql As String Dim RS As New ADODb.Recordset Dim rs1 As New ADODb.Recordset Dim rs2 As New ADODb.Recordset Dim temp As String Dim cot As String Dim tt1 As String Dim tt2 As String sql = "select * from Ck where cap = " & cap & " and thichhop =true order by id " clsConn.GetRs connQLPK, sql, RS If Not (RS.EOF And RS.BOF) Then Do While Not RS.EOF cot = RS!TT tt1 = RS!tt_mo tt2 = RS!tt_truoc 60 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu sql = "alter table MO add column [" & cot & "] Double " clsConn.ExecQuery connQLPK, sql sql = "select * from Mo" clsConn.GetRs connQLPK, sql, rs1 If Not (rs1.EOF And rs1.BOF) Then Do While Not rs1.EOF sql = "select * from dieukien where cot='" & RS!TT & "' and TID =" & rs1!TID clsConn.GetRs connQLPK, sql, rs2 If Not (rs2.EOF And rs2.BOF) Then If rs2!giatri Then rs1.Fields("" & cot & "") = Result_F(id_F1, rs1.Fields("" & Trim(tt1) & ""), rs1.Fields("" & Trim(tt2) & "")) Else rs1.Fields("" & cot & "") = Result_F(id_F2, rs1.Fields("" & Trim(tt1) & ""), rs1.Fields("" & Trim(tt2) & "")) End If End If rs2.Close rs1.Update rs1.MoveNext Loop End If rs1.Close RS.MoveNext Loop End If RS.Close End Sub ' Thuc hien noi cac tap lai voi Public Sub Joint(ByVal cap As Integer) Dim sql As String Dim sql2 As String Dim RS As New ADODb.Recordset Dim rs1 As New ADODb.Recordset Dim rs2 As New ADODb.Recordset Dim rs3 As New ADODb.Recordset Dim rs4 As New ADODb.Recordset Dim rs5 As New ADODb.Recordset Dim id_ttmo As Long Dim Ma_tt_mo As String Dim tt_goc As String Dim id_ck_goc As Long Dim id_ck2 As Long Dim id_ck_new As Long sql = "select * from ck where cap =" & cap & " and phobien =true order by id" clsConn.GetRs connQLPK, sql, RS If Not (RS.EOF And RS.BOF) Then Do While Not RS.EOF tt_goc = RS!TT id_ck_goc = RS!id sql = "select * from ck where cap = " & cap & " and id >" & id_ck_goc & " and phobien=true order by id" clsConn.GetRs connQLPK, sql, rs1 If Not (rs1.EOF And rs1.BOF) Then 61 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu Do While Not rs1.EOF id_ck2 = rs1!id id_ttmo = Check(id_ck_goc, id_ck2, cap) If id_ttmo > Then ' Insert vao bang Ck Ma_tt_mo = Ma_ttmo(id_ttmo) sql = "select * from ck" clsConn.GetRs connQLPK, sql, rs2 rs2.AddNew rs2!cap = cap + rs2!ck_truoc = id_ck_goc rs2!tt_truoc = tt_goc rs2!TT = tt_goc & "," & Trim(Ma_tt_mo) rs2!id_ttmo_tiep = id_ttmo rs2!tt_mo = Ma_tt_mo rs2.Update id_ck_new = rs2!id rs2.Close ' Insert vao bang Ck_ttmo ' sql = "select Ck_TTMo.id_tt_mo,tt_mo.ma from Ck_TTMo,tt_mo where tt_mo.id=ck_ttmo.id_tt_mo and Ck_TTMo.id_ck=" & rs!id sql = "select id_tt_mo from Ck_TTMo where id_ck=" & id_ck_goc clsConn.GetRs connQLPK, sql, rs3 If Not (rs3.EOF And rs3.BOF) Then Do While Not rs3.EOF 'sql2 = "insert into ck_ttmo(id_ck,id_tt_mo) values(" & rs2!id & "," & rs3!id_tt_mo & ")" sql2 = "insert into ck_ttmo(id_ck,id_tt_mo) values(" sql2 = sql2 & id_ck_new & "," sql2 = sql2 & rs3!id_tt_mo & ")" clsConn.ExecQuery connQLPK, sql2 rs3.MoveNext Loop End If rs3.Close sql2 = "insert into ck_ttmo(id_ck,id_tt_mo) values(" sql2 = sql2 & id_ck_new & "," sql2 = sql2 & id_ttmo & ")" clsConn.ExecQuery connQLPK, sql2 End If rs1.MoveNext Loop End If rs1.Close RS.MoveNext Loop End If RS.Close End Sub ' Kiem tra dieu kien de tap1 noi voi tap2 Public Function Check(id_tap1 As Long, id_tap2 As Long, cap As Integer) As Long Dim sql As String Dim RS As New ADODb.Recordset 62 Lê Thị Thanh Hải Dim Dim Dim Dim Dim Dim Dim Vấn đề luật kết hợp mờ toán tử có ngưỡng khai phá liệu rs1 As New ADODb.Recordset rs2 As New ADODb.Recordset rs3 As New ADODb.Recordset i As Integer, j As Integer Result As Boolean find As Boolean id_tt_mo As Long Result = False id_tt_mo = find = False 'sql = "select id_tt_mo from ck_ttmo where id_ck=" & id_tap1 & " order by id_tt_mo" sql = "select ck_ttmo.id_tt_mo,tt_mo.ttgoc from ck_ttmo,tt_mo where tt_mo.id = ck_ttmo.id_tt_mo and ck_ttmo.id_ck=" & id_tap1 & " order by id_tt_mo" clsConn.GetRs connQLPK, sql, RS sql = "select ck_ttmo.id_tt_mo,tt_mo.ttgoc from ck_ttmo,tt_mo where tt_mo.id = ck_ttmo.id_tt_mo and ck_ttmo.id_ck=" & id_tap2 & " order by id_tt_mo" clsConn.GetRs connQLPK, sql, rs1 If Not (RS.EOF And RS.BOF And rs1.EOF And rs1.BOF) Then If (RS.RecordCount = rs1.RecordCount) And (RS.RecordCount = cap) Then i = RS.MoveFirst rs1.MoveFirst For i = To cap - If RS!id_tt_mo = rs1!id_tt_mo Then RS.MoveNext rs1.MoveNext Result = True Else Exit For Result = False End If Next If i = cap Then ' Kiem tra cung thuoc tinh goc khong If (RS!ttgoc = rs1!ttgoc) Then Result = False ' Kiem tra xem q.Ik-1 = fminConf, True, False) & ",'" & ttsuy & "','" & ttgoc & "')" clsConn.ExecQuery connQLPK, sql End If End If 68 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu End Sub Public Function Luat_Exist(ByVal tt_goc As String, ByVal tt_suy As String) As Boolean Dim sql As String Dim RS As New ADODb.Recordset sql = "select * from Luat where tt_goc ='" & Trim(tt_goc) & "' and tt_suydien ='" & tt_suy & "'" clsConn.GetRs connQLPK, sql, RS If Not (RS.EOF And RS.BOF) Then Luat_Exist = True Else Luat_Exist = False End If RS.Close End Function Public Function Result_F(ByVal id_F As Long, ByVal x As Double, ByVal y As Double) As Double If id_F = Then Result_F = T1(x, y) ElseIf id_F = Then Result_F = T2(x, y) ElseIf id_F = Then Result_F = T3(x, y) ElseIf id_F = Then Result_F = T4(x, y) ElseIf id_F = Then Result_F = T5(x, y) ElseIf id_F = Then Result_F = T6(x, y) End If End Function 69 Thank you for evaluating AnyBizSoft PDF Merger! To remove this page, please register your program! Go to Purchase Now>> AnyBizSoft PDF Merger Merge multiple PDF files into one Select page range of PDF to merge Select specific page(s) to merge Extract page(s) from different PDF files and merge into one ... luật kết hợp nhị phân vào khai phá luật kết hợp mờ với vài thay đổi 37 Lê Thị Thanh Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu LUẬT KẾT HỢP MỜ VỚI CÁC TOÁN TỬ CĨ NGƯỠNG 2.4 Ở cơng... Hải Vấn đề luật kết hợp mờ tốn tử có ngưỡng khai phá liệu CHƢƠNG - LUẬT KẾT HỢP MỜ Trong chương tìm hiểu vài thuật tốn với mục đích tìm luật kết hợp CSDL thuộc tính nhị phân Tuy nhiên vấn đề khai. .. hợp Với tốn có thuộc tính số hạng mục việc rời rạc hóa Lê Thị Thanh Hải Vấn đề luật kết hợp mờ toán tử có ngưỡng khai phá liệu liệu xảy vài nhược điểm vấn đề “điểm biên gãy” Vì luật kết hợp mờ