Logic mờ

Một phần của tài liệu phân lớp dữ liệu sử dụng logic mờ (Trang 49 - 75)

2.4.1. Mở đầu

Logic mờ đƣợc xem nhƣ một sự mở rộng trực tiếp của logic cổ điển, với mỗi mệnh đề P ta gán một giá trị chân lý v(P) của mệnh đề. Chúng ta đã biết trong logic cổ điển thì v(P) = 1 nếu P đúng, v(P) = 0 nếu P saị Do đó để giúp cho nhu cầu tính toán và suy diễn chính trong các hệ mờ thì chúng ta cần suy rộng các phép toán logic cơ bản với các mệnh đề có giá trị chân lý v(P) trong đoạn [0,1] thay cho quy định v(P) chỉ nhận giá trị 0 hoặc 1 nhƣ trƣớc đâỵ

Trong logic mờ, một mệnh đề khi phát biểu lên tính đúng của nó đƣợc biểu diễn bằng 1 số thực trong đoạn [0,1]. Chẳng hạn: Mệnh đề “Trời nắng” có giá trị chân lý 0,5 nghĩa là độ tin cậy vào mệnh đề “Trời nắng” chỉ có 0,5.

Những nhân tố cơ bản nhất của logic mờ là các kỹ thuật điều khiển mờ. Ví dụ: Máy giặt mờ đã sử dụng các bộ cảm nhận tinh xảo để dò ra khối lƣợng, màu sắc và độ bẩn của quần áo và xử dụng bộ vi xử lý mờ để tự động điều khiển quá trình giặt. Ngày nay nhiều nƣớc cũng đã và đang quan tâm nghiên cứu và phát triển ứng dụng của lĩnh vực “khoa học mờ” nhƣ: Singapore, Brazil, Trung Quốc, Iran, Việt Nam…chứng tỏ ý nghĩa thực tiễn của “khoa học mờ” ngày càng đƣợc mở rộng. Lý thuyết logic mờ thiết lập nền tảng cơ bản cho việc biểu diễn tri thức. Từ sau năm 1970 logic mờ đã có ứng dụng trong hệ thống điều khiển giao thông, xử lý tín hiệu, truyền thông, các hệ chuyên gia trong y học, nông nghiệp, quản lý, xã hội

học, môi trƣờng, điều khiển tự động trong thiết bị máy giặt Fuzzy hiểu đƣợc ngôn ngữ tự nhiên nhƣ: “cao”, “nóng”, “ấm”, “yếu”…hay giao tiếp trực tiếp giữa con ngƣời với máy thông qua ngôn ngữ tự nhiên nhƣ Robot thông minh Asimo và nhiều ứng dụng khác nhƣ phân lớp dữ liệụ

2.4.2. Biến ngôn ngữ và mệnh đề mờ * Biến ngôn ngữ * Biến ngôn ngữ

Khái niệm biến ngôn ngữ đã đƣợc Zadeh đƣa ra năm 1973. Định nghĩa hình thức về biến ngôn ngữ đƣợc thể hiện nhƣ sau:

Một biến ngôn ngữ đƣợc xác định bởi bộ bốn (x, T, U, M) Trong đó:

x: là tên biến, Chẳng hạn nhƣ x có thể là: “điểm”, “nhiệt độ”, “áp suất:, “độ ẩm”, “tốc độ” ..v..v

Xét cụ thể nhƣ: “nhiệt độ” có thể xem là một biến mờ mà nó có khả năng nhận các giá trị ngôn ngữ nhƣ: “thấp”, “trung bình”, “bình thường”, “cao”, “rất cao”, “cực cao”, “quá cao”, “không cao”..

Nói chung bất kỳ biến mờ nào cũng có thể biểu diễn bằng thuật ngữ của các câu, và các câu này là tổ hợp của các biến mờ, các diễn tả ngôn ngữ và các từ nhấn (hedges) chẳng hạn các giá trị của biến mờ đã đƣợc mô tả nhƣ trên, thì: nhãn là cao; phủ định là không; từ nhấn là rất, cực, quá...

T: là một tập các từ nào đó (miền giá trị ngôn ngữ) mà biến X có thể nhận đƣợc. Ví dụ nếu x là “học lực” thì có thể T = {trung bình, khá, giỏi}

U: Là miền giá trị vật lý mà x với vai trò là biến số có thể nhận. Chẳng hạn ta nói: “Hoa là học sinh có điểm học rất khá” thì biến ngôn ngữ là x=”điểm”, trên không gian nền là thang điểm U=[0,10] và tập mờ A=”rất khá”

M là luật ngữ nghĩa , ứng với mỗi từ t  T với một tập mờ Ạ, trên không gian nền Ụ

Ví dụ: Gọi x là “tốc độ”, T= {chậm, trung bình, nhanh}, các từ “chậm”, “trung bình”, “nhanh” đƣợc xác định bởi các tập mờ nhƣ trong hình sau:

Hình2.2: Các tập mờ biểu diễn các giá trị ngôn ngữ: “Chậm”, “Trung bình" và “Nhanh”

Vậy ta có thể nói rằng biến ngôn ngữ là biến có thể nhận giá trị các tập mờ trên một miền nào đó.

* Mệnh đề mờ:

Trong logic cổ điển mệnh đề phân tử P(x) là một phát biểu có dạng: x là p (1)

Trong đó x là ký hiệu một đối tƣợng nằm trong một tập các đối tƣợng U nào đó hay nói cách khác x là một biến nhận giá trị trên miền U, còn P là một tính chất nào đó của các đối tƣợng trong Ụ Chẳng hạn các mệnh đề: n là số nguyên tố, x là ngƣời học khá.

Trong các mệnh đề (1) của logic cổ điển, tính chất P cho phép ta xác định một tập

con rõ A của U sao cho x  A và nếu chỉ x thỏa mãn tính chất P. Chẳng hạn tính

chất “là số nguyên tố” xác định một tập con rõ của tập tất cả các số nguyên tố, đó là tập tất cả các số nguyên tố.

Nếu ta ký hiệu Truth(P(x)) là giá trị chân lý của mệnh đề rõ (1) thì: Truth(P(x)) = A(x) (2)

Ăx) là hàm đặc trƣng của tập rõ A, tập rõ A đƣợc xác định bởi tính chất P.

Một mệnh đề phân tử cũng có dạng tƣơng tự nhƣ (1) chỉ khác là ở đó P không phải là một tính chất chính xác, mà là một tính chất không rõ ràng, mờ. Chẳng hạn các mệnh đề: “áp suất là cao”, “tốc độ là nhanh”, “nhiệt độ là rất thấp”,...là các mệnh đề mờ. Hay một mệnh đề mờ phân tử có dạng:

với x là biến ngôn ngữ, t là giá trị ngôn ngữ của x.

Theo định nghĩa biến ngôn ngữ, từ t trong (3) đƣợc xác định bởi một tập mờ A trên không gian Ụ Do đó ta có thể định nghĩa mệnh đề mờ phân tử là phát biểu có dạng:

x là A (4)

Trong đó x là biến ngôn ngữ, A là một tập mờ trên miền U các giá trị vật lý của x. P = {biến x nhận giá trị mờ của A trên nền U}

Ví dụ: Minh học giỏị (adsbygoogle = window.adsbygoogle || []).push({});

Logic cổ điển là logic hai trị, một mệnh đề chỉ có thể là đúng (với giá trị chân lý là 1) hoặc sai (với giá trị chân lý là 0). Logic mờ là mở rộng của logic cổ điển. Trong đó logic mờ, giá trị chân lý của một mệnh đề mờ là một số nằm trong [0,1].

Ta ký hiệu P(x) là mệnh đề mờ (3) hoặc (4). Giá trị chân lý Truth(P(x)) đƣợc xác định nhƣ sau:

Truth(P(x)) = A(x)

Nghĩa là giá trị chân lý của mệnh đề mờ P(x) = “x là A ’’ là mức độ thuộc của x vào tập mờ Ạ

Ví dụ: Giả sử P(x) là mệnh đề mờ “Ba trẻ tuổi”. Có tập mờ A=”tuổi trẻ” nhƣ trong

hình và Ă45) = 0,73. Khi đó mệnh đề “tuổi 45 là trẻ” có giá trị chân lý là 0,73.

Hình 2.3: Tập mờ “tuổi trẻ”

2.4.3. Các phép kết nối

Các phép kết nối thƣờng bao gồm phủ định (not), hội (and), tuyển (or) và kéo theo ( Implication)

* Phép phủ định (not)

Phủ định (negation) là một trong những phép toán logic cơ bản: T(P)1T(P)

Một số tính chất cơ bản dùng trong logic: ( )  P T chỉ phụ thuộc vào T(P); Nếu T(P)1 thì T(P)0 Nếu T(P)0 thì T(P)1 Nếu T(P1)T(P2) thì ( 1) ( 2)   T P P T

* Phép hội (and - conunction)

Đây là một trong những phép toán logic cơ bản nhất và là cơ sở để định nghĩa phép giao của hai tập mờ, đƣợc xác định nhƣ sau:

PQ:  is A and B

T(PQ)Min(T(P),T(Q))

Một số tính chất hay dùng:

T(P1 and P2) chỉ phụ thuộc vào T(P1), T(P2)

Nếu T(P1) =1 thì T(P1 and P2) = T(P2) với mọi mệnh đề P2 T(P1 and P2) = T(P2 and P1) giao hoán

Nếu T(P1)  T(P2) thì T(P1 and P3)  T(P2 and P3) với mọi mệnh đề P3

T(P1 and (P2 and P3)) = T((P1 and P2) and P3)) kết hợp

* Phép tuyển (OR – disjunction)

Phép tuyển là một phép toán cơ bản đƣợc xác định nhƣ sau : PQ:  is A and B

T(PQ)Max(T(P),T(Q)

Một số tính chất hay dùng:

T(P1 or P2) chỉ phụ thuộc vào T(P1), T(P2)

Nếu T(P1) =1 thì T(P1 or P2) = T(P2) với mọi mệnh đề P2 T(P1 or P2) = T(P2 or P1) giao hoán

T(P1 and (P2 or P3)) = T((P1 and P2) or P3)) kết hợp

* Phép kéo theo:

Là một dạng luật (rule) xác định nhƣ sau: PQ: if x is A then x is B (adsbygoogle = window.adsbygoogle || []).push({});

T(PQ)T(PQ) = Max(T(P),T(Q))

Phép kéo theo có thể mô hình hóa thành dạng luật sau:

PQ: if x is A then y is B tƣơng đƣơng với quan hệ R(AB)(AY) ứng

với hàm thuộc B(x,y)max[(A(x)B(y)),(1A(x))]

2.5. Phân lớp dữ liệu dựa trên quan hệ mờ 2.5.1. Cơ sở lí thuyết 2.5.1. Cơ sở lí thuyết

Cho R là quan hệ mờ trên không gian nền Ụ

Bao đóng bắc cầu R^ của quan hệ giống nhau là quan hệ tƣơng tự và đƣợc tính theo công thức sau đây:

Nhƣ vậy bao đóng bắc cầu R^ của quan hệ giống nhau là quan hệ tƣơng tự. R^ đƣợc tính theo công thức: R^ = R1 R2.... Rk.... Trong đó: R2 = R R Rk = Rk-1 R. Để tính R^ ta thƣờng dùng các kết quả sau : +) Nếu có n mà Rn =Rn+1 thì R^ = R1R2....Rn hoặc +) Nếu U hữu hạn và U  = n thì R^ = R1R2....Rn

Nếu R là quan hệ mờ tƣơng tự thì tập mức  ,R = {u, v U: R (u, v) } của R là quan hệ tƣơng đƣơng kinh điển và do đó phân hoạch U thành các lớp tƣơng đƣơng.

Ký hiệu R là phần bù của R tức là R = CR thì R là quan hệ không tƣơng tự và

R1- = {u,v U : R(u, v)=dR(u, v)  1-} = R.

2.5.2. Phân hoạch các đối tƣợng mờ trong bài toán thực tế

Xét các đối tƣợng mờ Ai (trong đó i = 1,2,…,n) Với mục đích là ta phân loại các đối tƣợng mờ có “ độ tƣơng tự nhau” vào một lớp phân hoạch theo một tiêu chuẩn nào đó. Với phƣơng pháp luận nhƣ trên thì ta có thể thực hiện nhƣ sau:

Trƣớc hết ta xây dựng quan hệ không tƣơng tự giữa các đối tƣợng mờ. Định nghĩa khoảng cách giữa các đối tƣợng:

Giả sử ta có 2 đối tƣợng mờ bất kỳ Ai và Aj. Ta định nghĩa khoảng cách Hamming đƣợc tính bởi công thức sau:

( i, j) 1(Ai(u1Aj(u1)  Ai(u2)Aj(u2) ... Ai(un)Aj(un)) n A A d Trong đó: 0d(Ai,Aj)1

- Kí hiệu: dij = d(Ai, Aj) và lập quan hệ không giống nhau R = (dij )nm - Cuối cùng ta xây dựng quan hệ không tuơng tự sau:

Đây là quan hệ không tƣơng tự, mỗi phần tử của ma trận là một khoảng cách giữa các đối tƣợng mờ.

* Ta thấy R*{ij:dR*(ij) } là quan hệ tƣơng đƣơng kinh điển xác định một

phân hoạch mức  trên các đối tƣợng. Nhƣ vậy các đối tƣợng trong cùng một lớp

phân hoạch có khoảng cách (có mức độ , hay mức độ tƣơng tự 1) không

vƣợt quá.  .

* Xây dựng cây phân tích theo từng lớp tƣơng đƣơng, nghĩa là mỗi hàng của ma

trận kết quả ta xếp các đối tƣợng có khoảng cách không vƣợt quá  vào cùng 1

lớp.

2.5.3. Quan hệ mờ trong phân lớp dữ liệu

Cho một quan hệ hai ngôi R trong tập hợp Ạ Một quan hệ tƣơng đƣơng A chia A thành các lớp tƣơng đƣơng, mỗi lớp gồm và chỉ gồm những phần tử tƣơng đƣơng với nhaụ Hai lớp tƣơng đƣơng khác nhau không có phần tử chung.

Với mọi ngƣỡng  chọn trong [0, 1], quan hệ R phân hoạch thành các lớp tƣơng

Những phần tử thỏa mãn quan hệ tƣơng tự nhƣ trên có thể đƣợc nhóm thành các lớp tƣơng đƣơng. Một cách tƣơng tự, ta tập hợp trong cùng một lớp những phần tử (adsbygoogle = window.adsbygoogle || []).push({});

của x mà sự giống nhau đƣợc thể hiện bởi quan hệ mờ R.

Khi  thay đổi từ 0 đến 1, các quan hệ mức  liên kết với một quan hệ tƣơng tự

R trên X làm thành những phân hoạch bằng nhau của X mà các lớp là những lớp

tƣơng đƣơng của R.

Cho quan hệ R sau:

Với mỗi mức  xác định các phân hoạch của X ?

Quan hệ với mức  khác nhau liên kết với R, đƣợc xác định nhƣ sau:

2.6. Kết luận chƣơng 2

Chƣơng này em đã tìm hiểu cơ bản đƣợc về lý thuyết logic mờ, trong đó đã tập trung vào một số lý thuyết nhƣ phép hợp thành max - min, phép hợp hai ma trận… tạo tiền đề cơ sở cho việc áp dụng phân lớp dữ liệu bằng logic mờ theo khoảng cách Hamming để đƣa ra những quan hệ phân lớp đƣợc trình bày ở chƣơng 3.

CHƢƠNG 3

CÀI ĐẶT THỬ NGHIỆM

Trên cơ sở lý thuyết đã nghiên cứu, việc vận dụng logic mờ vào phân lớp dữ liệu, có thể cài đặt thử nghiệm bằng nhiều ngôn ngữ nhƣ: Visual Basic, Pascal, C++, v..v.

3.1. Khái niệm chung bài toán phân lớp

Trong thực tế chúng ta gặp rất nhiều những công việc cần phải đánh giá phân loại hay thống kê ..v.v , và ngƣời ta thƣờng dựa trên một tiêu trí đã đƣợc quy định nào đó một cách khá rõ ràng và có khi cứng nhắc.

Ví dụ: Theo quy chế 36 xếp loại kết quả học tập bậc Cao đẳng (hệ VLVH): - Loại đạt: Xuất sắc: Từ 9.0 đến 10.0 Giỏi: Từ 8.0 đến 8.9 Khá: Từ 7.0 đến 7.9 TB khá: Từ 6,0 đến 6,9 Trung bình: Từ 5,0 đến 5,9 - Loại không đạt: Yếu: Từ 4,0 đến 4,9 Kém: Dƣới 4,0 Xét trƣờng hợp: A là tập các phần tử là những sinh viên học lực khá (từ 7,0  7,9) … 7,0 7,1 7,2 7,3 7,4 7,5 7,6 7,7 7,8 7,9 8,0 … Nếu theo cách phân loại nhƣ trên thì rõ ràng thấy:

Ngƣời 7,0 cộng thêm 0,9 vẫn chỉ xếp loại Khá Ngƣời 7,9 cộng thêm 0,1 đã đƣợc xếp lên loại Giỏi Nếu A

~

gồm các phần tử là các sinh viên “khá” vậy sẽ không có ranh giới rõ

ràng để khẳng định một ngƣời có là phần tử của A

~

hay không và đƣợc gọi là mờ mà chỉ có thể nói là một ngƣời sẽ thuộc về tập A

~

với mức độ nào đó.Chẳng hạn

Trong CSDL rõ thì việc xem xét 2 bản ghi bằng nhau hay khác nhau là dễ dàng nhƣng xem xét 2 bản ghi giống nhau là điều rất khó.

Do vậy làm thế nào để thực hiện việc đó đƣợc một cách mềm dẻo linh hoạt hơn lại là một vấn đề quan trọng.

Để trả lời câu hỏi trên, là “có thể” thì giải pháp đó chính là việc sử dụng logic mờ vào phân lớp dữ liệụ (adsbygoogle = window.adsbygoogle || []).push({});

3.2. Bài toán minh họa sự phân lớp các đối tƣợng mờ 3.2.1. Phát biểu bài toán 3.2.1. Phát biểu bài toán

Cho một tập các đối tƣợng mờ bao gồm n phần tử. Mỗi đối tƣợng đƣợc đặc trƣng bởi m thuộc tính khác nhaụ Yêu cầu của bài toán là phân loại các đối tƣợng mờ có ”độ tƣơng tự ” nhƣ nhau vào cùng một lớp phân hoạch, theo một tiêu chuẩn

nhất định.Xác định bài toán nhƣ sau:

Input: Cơ sở dữ liệu n bản ghi, với m thuộc tính. Output: Kết quả phân lớp theo từng ngƣỡng.

3.2.2. Thuật toán

Bƣớc 1: Xây dựng quan hệ không tƣơng tự giữa các đối tƣợng mờ. Định nghĩa khoảng cách giữa các đối tƣợng mờ.

Giả sử A và B là 2 đối tƣợng mờ bất kỳ. Ta định nghĩa khoảng cách giữa A và B là khoảng cách Hamming, đƣợc tính theo công thức:

d(A,B) =

m

1 Ău1B(u1) Ău2)B(u2).... Ăum)B(um)  (3.1)

(Trong đó: 0  d(A,B)  1)

Và khoảng cách Euclid đƣợc tính theo công thức:     m i i i z x y x d 1 2 ) ( ) , ( (3.2) Hay d(x,z)= 2 2 2 2 2 1 1 ) ( ) ... ( )

(xzxzxnzn với n nguyên, dƣơng

Kí hiệu dij = d(Ai, Aj) và lập quan hệ không giống nhau ở đây dij là khoảng cách

và R là ma trận khoảng cách giữa các đối tƣợng

Tính R* =C((CR)). Đây là quan hệ không tƣơng tự mà mỗi phần tử ma trận chính

là khoảng cách giữa các đối tƣợng. CR ở đây là phần bù của R.

Để tính đƣợc ma trận quan hệ không tƣơng tự ta thực hiện theo các bƣớc cụ thể sau:

+ Từ ma trận khoảng cách ta tính ma trận quan hệ giống nhau CR theo công thức CR = 1 - R

+ Tính bao đóng bắc cầu của quan hệ giống nhau CR theo công thức : CR^ = CR1 CR2.... CRk....

Trong đó

CR2 = CRCR CRk = CRk-1CR.

Việc tính toán chỉ dừng lại khi CR^ thỏa mãn một trong hai điều kiện sau đây:

ị Nếu có n mà CRn

= CRn+1 thì CR^ = CR1  CR2 .... CRn iị Nếu U hữu hạn và U  =n thì CR^ = CR1  CR2 .... CRn + Vì kết quả bao đóng bắc cầu của quan hệ giống nhau là một quan hệ tƣơng tự nên để tính đƣợc quan hệ không tƣơng tự R* ta phải thực hiện theo công thức

R* = 1- CR.

Một phần của tài liệu phân lớp dữ liệu sử dụng logic mờ (Trang 49 - 75)