Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
LỜI MỞ ĐẦU
Trong thời đại ngày nay, việc tìm kiếm thông tin trên cơ sở dữ liệu khổng lồ,
việc xử lý các thông tin rời rạc, không đầy đủ đang được rất nhiều người quan tâm.
Có nhiều phương pháp để giải quyết các vấn đề trên, nhưng có một phương pháp
đang được nhiều người nghiên cứu, đó là phương pháp tìm kiếm trên tập thô. Rất
nhiều ứng dụng dựa trên ý tưởng của lý thuyết tập thô như phân tích dữ liệu y
khoa, lượng giá điều phối hàng không, xử lý ảnh, nhận dạng, …
Chính vì lý do trên nên sau khi học xong môn Khai phá dữ liệu và kho dữ
liệu, em đã chọn đề tài “Xây dựng chương trình tự động rút gọn Reducts từ hệ
quyết định trong tập thô”. Trong phạm vi bài thu hoạch này em xin trình bày tóm
tắt những kiến thức đã học được về lý thuyết tập thô và viết một chương trình tự
động rút gọn Reducts từ hệ quyết định trong tập thô bằng ngôn ngữ C#.
Qua đây, em xin chân thành cảm ơn PGS.TS. Đỗ Phúc đã tận tình hướng
dẫn em môn học bổ ích và đầy ý nghĩa này. Em xin cảm ơn các bạn cùng khoá và
các anh chị khoá trước đã giúp đỡ em tìm tài liệu và góp ư cho em hoàn thành tốt
bài thu hoạch này!
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 1
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 2
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
MỤC LỤC
NỘI DUNG
PHẦN I: LÝ THUYẾT CƠ SỞ VỀ TẬP THÔ
I.1. Giới thiệu về lý thuyết tập thô
Lý thuyết tập thô được Z. Pawlak phát triển vào đầu thập niên 1980. Lý thuyết
tập thô rất hiệu quả trong khai thác dữ liệu, tìm kiếm thông tin, hỗ trợ quyết định,
máy học, các hệ cơ sở tri thức.
Lý thuyết tập thô dựa trên giả thuyết rằng để định nghĩa một tập hợp, chúng ta
cần phải có thông tin về mọi đối tượng trong tập vũ trụ.
Chắc chắn là hầu hết cơ sở dữ liệu được sử dụng cho việc khai thác dữ liệu
đều không hoàn thiện về dữ liệu, ví dụ như nhiễu, các giá trị không xác định hoặc
lỗi do các thiết bị đo đạc không chính xác. Lý thuyết tập thô phát huy tác dụng cho
các trường hợp như vậy vì tập thô là công cụ nhằm giải quyết sự gần đúng và các
trường hợp quyết định không chắc chắn. Một ưu điểm của lý thuyết tập thô đối với
hướng tiếp cận xác suất Bayes là không cần giả định về sự độc lập của các thuộc
tính cũng như không cần bất kỳ kiến thức nền nào về dữ liệu
Trong phần lý thuyết cơ sở về tập thô, em sẽ trình bày các khái niệm cơ bản
của tập thô như sau:
• Hệ thông tin / quyết định
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 3
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
• Quan hệ bất khả phân biệt
• Xấp xỉ tập hợp
• Rút gọn và lơi
• Thành viên thô
• Phụ thuộc thuộc tính
I.2. Hệ thông tin / quyết định
Một tập dữ liệu có thể biểu diễn dưới dạng một bảng, trên đó mỗi dòng biểu
diễn thông tin ứng với một đối tượng, mỗi cột biểu diễn một thuộc tính có thể đo
được của mỗi đối tượng (do các chuyên gia hay người sử dụng cung cấp). Bảng
này được gọi là một hệ thông tin.
Hình thức hơn, hệ thông tin là một cặp S = (U, A)
• Trong đó U là một tập hữu hạn khác rỗng các đối tượng gọi là tập vũ trụ hay là tập
phổ dụng, A là một tập hữu hạn khác rỗng các thuộc tính.
• Với mỗi u ∈ U và a ∈ A, ta ký hiệu u(a) là giá trị của đối tượng u tại thuộc tính a.
• Nếu gọi I
a
là tập tất cả giá trị của thuộc tính a, thì u( a) ∈ I
a
với mọi u ∈ U. Bây
giờ, nếu B = {b
1
, b
2
, ,b
k
} ⊆ A, ta ký hiệu bộ các giá trị u(b
i
) bởi u(B). Như vậy,
nếu u và v là hai đối tượng, thì ta sẽ viết u(B) = v(B) nếu u(bi) = v(bi), với mọi i
=1, 2, , k.
Ví dụ 1: Một hệ thông tin đơn giản:
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 4
Độ tuổi Số buổi
x1 16-30 50
x2 16-30 0
x3 31-45 1-25
x4 31-45 1-25
x5 46-60 26-49
x6 16-30 26-49
x7 46-60 26-49
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
Trong nhiều ứng dụng, ta thấy có 1 sự phân loại kết quả. Đó là sự mô tả tri
thức bởi một thuộc tính đặc trưng phân biệt được gọi thuộc tính quyết định. Hệ
thống này là một hình thức học có giám sát. Các hệ thông tin theo loại này được
gọi là các hệ quyết định. Như vậy, một hệ quyết định là một hệ thông tin có dạng
(U;A ∪ {d}), trong đó d ∉ A là thuộc tính quyết định. Các thành phần thuộc tính
của A được gọi là các thuộc tính điều kiện hay gọi đơn giản là các thuộc tính.
Thuộc tính quyết định có thể có nhiều hơn hai giá trị mặc dù thường gặp là thuộc
tính nhị phân.
Ví dụ 2: Một hệ thông tin có thêm thuộc tính quyết định (thi đậu) với hai khả
năng kết quả có hoặc không:
Trong đó:
• U = {x1, x2, x3, x4, x5, x6, x7 }
• A = {độ tuổi, số buổi, thi đậu}.
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 5
Độ tuổi Số buổi Thi đậu
x1 16-30 50 có
x2 16-30 0 không
x3 31-45 1-25 không
x4 31-45 1-25 có
x5 46-60 26-49 không
x6 16-30 26-49 có
x7 46-60 26-49 không
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
• Trong bảng này, các bộ x3 và x4 cũng như x5 và x7 có cùng giá trị của các thuộc
tính điều kiện (độ tuổi và số buổi) nhưng cặp x3 và x4 có kết quả thi đậu khác nhau
trong khi cặp x5 và x7 có cùng kết quả thi đậu.
I.3. Quan hệ bất khả phân biệt
Một hệ quyết định thể hiện tri thức về các đối tượng trong thế giới thực. Tuy
nhiên trong nhiều trường hợp bảng này có thể được tinh giảm do tồn tại ít nhất hai
khả năng dư thừa thông tin sau đây:
Nhiều đối tượng giống nhau hay không thể phân biệt với nhau lại được thể
hiện lặp lại nhiều lần
Một số thuộc tính có thể là dư thừa, theo nghĩa khi bỏ đi các thuộc tính này thì
thông tin do hệ quyết định cung cấp mà chúng tâm sẽ không bị mất mát
Một quan hệ nhị phân R ⊆ X x X được gọi là quan hệ tương đương khi có các
tính chất sao:
• Tính phản xạ (xRX với mọi x)
• Tính đối xứng (nếu xRy thì yRx)
• Tính bắc cầu (nếu xRy và yRz thì xRz)
Một quan hệ tương đương R sẽ phân hoạch tập đối tượng thành các lớp
tương đương, trong đó lớp tương đương của một đối tượng x là tập tất cả các đối
tượng có quan hệ R với x.
Xét hệ thông tin S = (U, A), với mỗi tập thuộc tính B
⊆
A tạo ra một quan hệ
hai ngôi trên U, ký hiệu IND(B):
IND
s
(B) = {( u, v) ∈ U
2
| ∀a ∈ B, a(u) = a(v)}
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 6
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
IND
s
(B) được gọi là quan hệ bất khả phân biệt theo B. Dễ kiểm chứng đây
là một quan hệ tương đương trên U. Với mọi đối tượng u ∈ U, lớp tương đương
của u trong quan hệ IND
s
(B) được kí hiệu bởi [u]B.
Thuật toán xác định lớp tương đương:
Gọi O là tập các đối tượng
Gọi B là tập các thuộc tính
Gọi L là tập các lớp tương đương
Thuật toán:
Bước 1: L = Ø
Bước 2: Nếu O = Ø thì thực hiện bước 5, ngược lại thực hiện bước 3
Bước 3: Xét x ∈ O, P = {x}, O = O \ {x}
Với mọi phần tử y ∈ O, nếu x và y không thể phân biệt được
qua tập thuộc tính B thì P = P ∪ {y}, O = O \ {y}
L = L ∪ {P}
Bước 4: Thực hiện bước 2
Bước 5: Kết thúc.
Ví dụ 1: Xét hệ quyết định trên ví dụ 2 phần hệ thông tin / quyết định
Với tập hợp {số buổi}, các bộ x3 và x4 thuộc cùng một lớp tương
đương và bất khả phân biệt. Tương tự cho các bộ x5, x6 và x7 thuộc vào các lớp
tương đương. Quan hệ tương đương IND trên các tập thuộc tính {độ tuổi},{số
buổi}, {độ tuổi, số buổi} cho ta phân hoạch tập U như sau:
IND({độ tuổi}) ={{x1,x2,x6}; {x3,x4}; {x5,x7}}
IND({số buổi}) ={{x1}; {x2}; {x3,x4}; {x5,x6,x7}}
IND({độ tuổi, số buổi }) ={{x1}; {x2}; {x3,x4}; {x5,x7}; {x6}}
Ví dụ 2: Xét hệ quyết định sau:
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 7
U Đau đầu Đau cơ Nhiệt độ Cúm
x1 Không Có Cao Có
x2 Có Không Cao Có
x3 Có Có Rất cao Có
x4 Không Có Bình thường Không
x5 Có Không Cao Không
x6 Không Có Rất cao Có
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
Trong đó:
U = {x1, x2, x3, x4, x5, x6}.
A = {Đau đầu, Đau cơ, Nhiệt độ, Cúm}.
Trong bảng, các bệnh nhân x2, x3 và x5 không phân biệt được đối với
thuộc tính Đau đầu, bệnh nhân x3 và x6 không phân biệt được đối với thuộc tính
Đau cơ, Cúm và bệnh nhân x2, x5 không phân biệt được đối với thuộc tính Đau
đầu, Đau cơ và Nhiệt độ.
Do đó:
IND( {Đau đầu}) = {{x1, x4, x6},{x2, x3, x5}}
IND( {Đau cơ}) = {{x1, x3, x4, x6}, {x2, x5}}
IND( {Nhiệt độ}) = {{x1, x2, x5}, {x3, x6}, {x4}}
IND( {Cúm}) = {{x1, x2, x3, x6}, {x4, x5}}
IND( {Đau đầu, Đau cơ}) = {{x1, x4, x6}, {x2, x5}, {x3}}
I.4. Xấp xỉ tập hợp
Một quan hệ tương đương dẫn đến một phân hoạch phổ quát U. Có thể dùng
phép phân hoạch để tạo các tập con mới của tập phổ quát. Các tập con thường
được quan tâm là các tập con có cùng giá trị của thuộc tính quyết định.
Cho một hệ thống thông tin S = (U, A), với mỗi tập con X ⊆ U và B ⊆ A,
Ký hiệu R = IND(B), ta có 2 tập con sau :
BX = { x | [x]
B
⊆ X }
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 8
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
và X = { x | [x]
B
∩ X ≠ ∅}
Trong đó BX, X lần lượt gọi là B-xấp xỉ dưới và B- xấp xỉ trên của tập
X.
Tập BX bao gồm tất cả các phần tử của U chắc chắn thuộc vào X.
Tập X bao gồm các phần tử của U có khả năng được phân loại vào những
phần tử thuộc X ứng với quan hệ R.
Từ hai tập xấp xỉ người ta định nghĩa các tập:
BN
B
(X) = X - BX: B- miền biên của X.
POS
B
(X) = BX: B-vùng dương của X.
NEG
B
(X) = U - X: B-vùng âm của X.
Trong trường hợp BN
B
(X) ≠ ∅, X được gọi là tập thô, ngược lại X được gọi
là tập rõ.
Các tính chất của xấp xỉ
• B (X) ⊆ X ⊆ (X)
• B (∅) = (∅) = ∅, B (U) = (U) = U
• (X ∪ Y) = (X) ∪ (Y)
• B (X ∩ Y) = B(X) ∩ B (Y)
• X ⊆ Y ⇒ (X) ⊆ (X) và B(X) ⊆ B(Y)
• B(X ∪ Y) ⊇ B(X) ∪ B(Y)
• (X ∩ Y) ⊆ (X) ∩ (Y)
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 9
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
• B(- X) = - (X)
• (- X) = - B(X)
• B ( B(X)) = ( B(X)) = B(X)
• ( (X)) = B( (X)) = (X)
• Trong đó –X là ký hiệu của U-X
Độ chính xác của xấp xỉ
Cho một hệ thống thông tin S = (U, A), với mỗi tập con X ⊆ U và B ⊆ A,
đặt R = IND(B), đại lượng đo sự chính xác của tập xấp xỉ X đối với phân hoạch
trên B là giá trị
Trong đó card(X) = |X| là lực lượng (số phần tử) của tập X.
Rõ ràng 0 ≤ α
R
(X) ≤ 1 . Nếu α
R
(X) = 1, ta nói X là chính xác đối với R,
còn α
R
(X) < 1 thì X được gọi là thô đối với R.
Thuật toán xác định xấp xỉ dưới:
Gọi X là tập các đối tượng
Gọi B là tập các thuộc tính
Gọi B(X) là xấp xỉ dưới
Thuật toán:
Bước 1: Khởi tạo B(X) = Ø
Xác định tập các phân hoạch P của tập vũ trụ U tạo bởi B
Bước 2 : U1 = U
Nếu U1 ≠ Ø thì thực hiện bước 3, ngược lại thực hiện bước 5
Bước 3: Xét x ∈ U1, tìm phân hoạch Pi ∈ P sao cho: x ∈ Pi
Nếu Pi ⊆ X thì B(X) = B(X) ∪ Pi
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 10
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
Ui = Ui \ Pi
Bước 4 : Thực hiện bước 2
Bước 5 : Kết thúc
Thuật toán xác định xấp xỉ trên:
Gọi X là tập các đối tượng
Gọi B là tập các thuộc tính
Gọi (X) là xấp xỉ trên
Thuật toán:
Bước 1: Khởi tạo (X) = Ø
Xác định tập các phân hoạch P của tập vũ trụ U tạo bởi B
Bước 2 : X1 = X
Nếu X1 ≠ Ø thì thực hiện bước 3, ngược lại thực hiện bước 5
Bước 3: Xét x ∈ X1, tìm phân hoạch Pi ∈ P sao cho: x ∈ Pi
(X) = (X) ∪ Pi
Với mọi p ∈ Pi ∩ Xi, Xi = Xi \ {p}
Bước 4 : Thực hiện bước 2
Bước 5 : Kết thúc
Ví dụ 1: Xét hệ quyết định trên ví dụ 2 phần hệ thông tin / quyết định
Gọi tập đối tượng X = {x | Thi đậu(x) = có} = {x1, x4, x6}
và B={độ tuổi, số buổi}
Ta có các lớp tương đương :
IND({độ tuổi, số buổi }) ={{x1}; {x2}; {x3,x4}; {x5,x7}; {x6}}
Ta có các vùng xấp xỉ :
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 11
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
BX = {x1,x6}
X = {x1, x6, x3, x4}
BN
B
(X) = X – BX = {x1, x6, x3, x4} - {x1,x6} = {x3, x4}
NEG
B
(X) = U - X = {x1, x2, x3, x4, x5,x6} - {x1, x6, x3, x4}
= {x2,x5,x7}
Như vậy lớp quyết định thi đậu là thô vì vùng biên khác rỗng
Ví dụ 2: Xét hệ quyết định trên ví dụ 2 phần quan hệ bất khả phân biệt
Gọi tập đối tượng X = {x | Cúm(x) = có} = {x1, x2, x3, x6}
và B={ Đau đầu, Đau cơ }
Ta có các lớp tương đương :
IND( {Đau đầu, Đau cơ}) = {{x1, x4, x6}, {x2, x5}, {x3}}
Ta có các vùng xấp xỉ :
BX = {x3}
X = {x3, x1, x4, x6, x2, x5}
BN
B
(X) = X – BX = {x3, x1, x4, x6, x2, x5}- {x3}
= {x1, x4, x6, x2, x5}
NEG
B
(X) = U - X = ∅
Như vậy lớp quyết định cúm là thô vì vùng biên khác rỗng
I.5. Rút gọn (Reducts)
Có hai khả năng dư thừa trong một hệ thông tin, đó là :
• Các đối tượng giống nhau theo một tập thuộc tính đang quan tâm được lặp lại
nhiều lần
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 12
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
• Một số thuộc tính có thể được bỏ đi mà thông tin chúng ta đang quan tâm do bảng
quyết định cung cấp vẫn không bị mất mát
Với trường hợp thứ nhất, khái niệm lớp tương đương hiển nhiên cho ta một
tiếp cận tự nhiên trong việc tinh giảm thông tin cần lưu trữ trong một hệ thông tin:
chỉ cần sử dụng một đối tượng để đại diện cho mỗi lớp tương đương. Trong phần
này ta tập trung vào loại dư thừa thông tin thứ hai, đó là chỉ giữ lại những thuộc
tính bảo toàn quan hệ bất khả phân biệt, do đó bảo toàn khả năng xấp xỉ tập hợp
trong một hệ thông tin
I.5.1. Định nghĩa rút gọn
Một rút gọn của hệ thông tin IS là một tập tối tiểu của các thuộc tính B ⊆ A
sao cho
IND
S
(B) = IND
S
(A)
Một rút gọn là một tập tối tiểu các thuộc tính từ tập thuộc tính A, mà rút gọn
này bảo toàn việc phân hoạch tập phổ quát U và vì thế bảo toàn khả năng phân lớp
thay vì phải thực hiện với toàn bộ tập thuộc tính A.
Xét hệ thông tin A = (U,A) và hai tập thuộc tính P, Q ⊆ A. Thuộc tính a ∈ P
được gọi là có thể bỏ được trong P nếu IND(P) = IND(P – {a}), ngược lại ta nói a
là không thể bỏ được trong P. Rõ ràng thuộc tính có thể bỏ được không là tăng
hoặc giảm khả năng phân loại khi có hoặc không có mặt thuộc tính đó trong P. Tập
tất cả các thuộc tính không thể bỏ được trong P được gọi là lõi (core) của P, ký
hiệu là CORE(P). Lưu ý rằng lõi có thể là tập rỗng, khi đó tập con của P với lực
lượng bằng card(P) – 1 đều giữ nguyên khả năng phân loại của P
Khi loại ra khỏi P một số thuộc tính có thể bỏ được thì ta được một tập rút
gọn của P. Nói cách khác, rút gọn của một tập thuộc tính P là tập thuộc tính B ⊆ P
giữ nguyên khả năng phân loại của P, hay IND(B) = IND(P). Dễ dàng thấy rằng, vì
lõi của P là tập các thuộc tính không thể bỏ được của P nên tất cả các rút gọn của P
đều chứa tập thuộc tính lõi
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 13
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
Một rút gọn B của tập thuộc tính P được gọi là rút gọn hoàn toàn nếu với mọi
tập thuộc tính B’ ⊂ B, B’ không là rút gọn của P. Như vậy rút gọn hoàn toàn là tập
thuộc tính nhỏ nhất trong tất cả các rút gọn có thể có của P và được ký hiệu là
RED(P)
Tính chất: Tập thuộc tính lõi của P là giao của tất cả các rút gọn hoàn toàn
của P, tức là CORE(P)= ∩ RED(P)
I.5.2. Ma trận phân biệt
Với S là một hệ thông tin với n đối tượng, ma trận phân biệt của S là một ma
trận đối xứng n x n với các giá trị c
ij
được định nghĩa như sau:
c
ij
= {a A | a(x
i
) a(x
j
)} với i,j = 1,…,n
Mỗi dòng bao gồm tập giá trị các thuộc tính khác nhau với các đối tượng x
i
và
x
j
Ma trận phân biệt không chỉ được định nghĩa trên tập tất cả các thuộc tính của
hệ thông tin mà còn có thể được xây dựng trên một tập thuộc tính B ⊆ A bất kỳ.
Trong trường hợp đó, phần tử c
ij
là tập các thuộc tính trong B phân biệt hai đối
tượng x
i
,x
j
Xét ma trận phân biệt được xây dựng trên tập thuộc tính B ⊆ A. Giả sử tập
thuộc tính B phân hoạch tập đối tượng thành các lớp tương đương X
1
, X
2
,…, X
k và
do hai đối tượng thuộc một lớp tương đương thì nhận giá trị như nhau tại các thuộc
tính trong B nên thay vì xây dựng ma trận phân biệt giữa từng cặp đối tượng, ta
xây dựng ma trận phân biệt giữa từng cặp lớp tương đương.
Khi đó, phần tử c
ij
, ∀i, j ∈ {1,2, …,k} là tập hợp thuộc tính phân biệt hai đối
tượng bất kỳ thuộc hai lớp tương đương X
i
và X
j
hay có thể nói c
ij
là tập các thuộc
tính phân biệt
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 14
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
Ví dụ 1: Cho hệ quyết định như sau :
N0 a b c d
u1 a0 b1 c1 y
u2 a1 b1 c0 n
u3 a0 b2 c1 n
u4 a1 b1 c1 y
Khi đó, ma trận phân biệt sẽ được tính như sau :
Ví dụ 2: Cho hệ quyết định như sau :
a b c d e
u1 1 0 2 1 1
u2 1 0 2 0 1
u3 1 2 0 0 2
u4 1 2 2 1 0
u5 2 1 0 0 2
u6 2 1 1 0 2
u7 2 1 2 1 1
Khi đó, ma trận phân biệt sẽ được tính như sau :
u1 u2 u3 u4 u5 u6
u2
λ
u3 a,b,c b,c
u4 b b,d c,d
u5 a,b,c,d a,b,c
λ
a,b,c,d
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 15
u1 u2 u3
u1 ac
u2 b
λ
u3
λ
c ab
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
u6 a,b,c,d a,b,c
λ
a,b,c,d
λ
u7
λ λ
a,b,c,d a,b c,d c,d
Ví dụ 3: Cho hệ quyết định như sau :
Khi đó, ma trận phân biệt sẽ được tính như sau :
Ví
dụ 4:
Cho hệ
quyết định như sau :
Trời Gió Áp suất Kết quả
u1 Trong Bắc Cao Không mưa
u2 Mây Nam Cao Mưa
u3 Mây Bắc TB Mưa
u4 Trong Bắc Thấp Không mưa
u5 Mây Bắc Thấp Mưa
u6 Mây Bắc Cao Mưa
u7 Mây Nam Thấp Không mưa
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 16
Headache Muscle pain Temp Flu
u1 Yes Yes Normal No
u2 Yes Yes High Yes
u3 Yes Yes Very-High Yes
u4 No Yes Normal No
u5 No No High No
u6 No Yes Very-High Yes
u1 u2 u3 u4 u5
u2 Temp
u3 Temp
λ
u4
λ
Headache ,
Temp
Headache ,
Temp
u5
λ
Headache ,
Muscle
Headache ,
Muscle, Temp
λ
u6 Headache ,
Temp
λ λ
Temp Muscle,
Temp
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
u8 Trong Nam Cao Không mưa
u1 u2 u3 u4 u5 u6 u7
u2 Trời, Gió
u3 Trời,
Áp suất
λ
u4
λ
Trời, Gió
Áp suất
Trời,
Áp suất
u5 Trời,
Áp suất
λ λ
Trời
u6 Trời
λ λ
Trời,
Áp suất
λ
u7
λ
Áp suất Gió,
Áp suất
λ
Gió Gió,
Áp suất
u8
λ
Trời Trời, Gió,
Áp suất
λ
Trời, Gió,
Áp suất
Trời,
Gió
λ
Khi đó, ma trận phân biệt sẽ được tính như sau :
Ví dụ 5: Cho hệ quyết định như sau :
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 17
Vóc dáng Quốc tịch Gia cảnh Nhóm
u1 Nhỏ Đức Độc thân A
u2 Lớn Pháp Độc thân A
u3 Lớn Đức Độc thân A
u4 Nhỏ Ý Độc thân B
u5 Lớn Đức Có gia đình B
u6 Lớn Ý Độc thân B
u7 Lớn Ý Có gia đình B
u8 Nhỏ Đức Có gia đình B
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
Khi đó, ma trận phân biệt sẽ được tính như sau :
u1 u2 u3 u4 u5 u6 u7
u2
λ
u3
λ λ
u4 Quốc tịch Vóc dáng,
Quốc tịch
Vóc dáng,
Quốc tịch
u5 Vóc dáng,
Gia cảnh
Quốc tịch,
Gia cảnh
Gia cảnh
λ
u6 Vóc dáng,
Quốc tịch
Quốc tịch Quốc tịch
λ λ
u7 Vóc dáng,
Quốc tịch,
Gia cảnh
Quốc tịch,
Gia cảnh
Quốc tịch,
Gia cảnh
λ λ λ
u8 Gia cảnh Vóc dáng,
Quốc tịch,
Gia cảnh
Vóc dáng,
Gia cảnh
λ λ λ λ
Ví dụ 6: Cho hệ quyết định như sau :
Kích thước Màu sắc Hình dạng Lớp
u1 Vừa Xanh Viên gạch A
u2 Nhỏ Đỏ Hình nêm B
u3 Nhỏ Đỏ Hình cầu A
u4 Lớn Đỏ Hình nêm B
u5 Lớn Lục Hình trụ A
u6 Lớn Đỏ Hình trụ B
u7 Lớn Lục Hình cầu A
Khi đó, ma trận phân biệt sẽ được tính như sau :
u1 u2 u3 u4 u5 u6
u2 Kích thước,
Màu sắc,
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 18
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
Hình dạng
u3
λ
Hình dạng
u4 Kích thước,
Màu sắc,
Hình dạng
λ
Kích thước,
Hình dạng
u5
λ
Kích thước,
Màu sắc,
Hình dạng
λ
Màu sắc,
Hình dạng
u6 Kích thước,
Màu sắc,
Hình dạng
λ
Kích thước,
Hình dạng
λ
Hình dạng
u7
λ
Kích thước,
Màu sắc,
Hình dạng
λ
Màu sắc,
Hình dạng
λ
Màu sắc,
Hình dạng
Ví dụ 7: Cho hệ quyết định như sau :
a b c d e
u1 1 0 2 2 0
u2 6 8 3 5 2
u3 2 0 0 5 1
u4 1 8 0 2 2
u5 1 0 2 4 1
u6 2 2 0 5 1
u7 6 8 3 4 1
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 19
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
Khi đó, ma trận phân biệt sẽ được tính như sau :
u1 u2 u3 u4 u5 u6 u7
u2 a,b,c,d
u3 a,c,d a,b,c
u4 b,c
λ
a,b,d
u5 d a,b,c,d
λ
b,c,d
u6 a,b,c,d a,b,c
λ
a,b,d
λ
u7 a,b,c,d
λ
b,c
λ
a,b,c,d b,c
u8 a,b,c,d d
λ
a,c,d
λ λ
a,d
I.5.3. Hàm phân biệt
Hàm phân biệt f
s
của hệ thông tin S là một hàm bool của m biến bool a
*
1
;
…;a
*
m
(ứng với các thuộc tính a
1
,…,a
m
) và được định nghĩa như sau:
f
IS
(a
*
1
,…,a
*
m
) = { c
ij
*
| 1 j i n, c
ij
}
trong đó c
ij
*
= {a
*
| a c
ij
}
Tập các đơn thức của f
IS
xác định tập các rút gọn của IS.
Lưu ý :
• Các toán tử ∧ và ∨ sử dụng trong hàm phân biệt không phải là các toán tử Boolean
vì chúng không nhận các giá trị true hoặc false mà thể hiện cho ngữ nghĩa có mặt
hay không có mặt của một thuộc tính nào đó
• Hàm phân biệt có thể xem như một tập các tập hợp. Và cũng giống như với ma
trận phân biệt, tập nhỏ nhất có giao với tất cả các phần tử chính là các rút gọn của
hệ thông tin tương ứng
Ví dụ 1: Dựa vào ma trận phân biệt trong ví dụ 1 phần ma trận phân biệt, ta
tính được hàm phân biệt như sau :
Hàm phân biệt F(a,b,c) = (a ∨ c) ∧ b ∧ c ∧ (a ∨ b)
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 20
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
Ví dụ 2: Dựa vào ma trận phân biệt trong ví dụ 2 phần ma trận phân biệt, ta
tính được hàm phân biệt như sau :
Hàm phân biệt F(a,b,c,d) = (b ∨ c ∨ d ) ∧ (b ∨ c) ∧ b ∧ (b ∨ d) ∧ (c ∨
d) ∧ (a ∨ b ∨ c ∨ d ) ∧ (a ∨ b ∨ c ) ∧ (a ∨ b ∨ c ∨ d ) ∧ (a ∨ b ∨ c ∨ d ) ∧ (a ∨ b ∨
c) ∧ (a ∨ b ∨ c ∨ d ) ∧ (a ∨ b ∨ c ∨ d ) ∧ (a ∨ b) ∧ (c ∨ d ) ∧ (c ∨ d )
Ví dụ 3: Dựa vào ma trận phân biệt trong ví dụ 3 phần ma trận phân biệt, ta
tính được hàm phân biệt như sau :
Hàm phân biệt F(Headache, Muscle pain, Temp) = Temp ∧ Temp ∧
(Headache ∨ Temp) ∧ (Headache ∨ Temp) ∧ (Headache ∨ Muscle pain) ∧
(Headache ∨ Muscle pain ∨ Temp) ∧ (Headache ∨ Temp) ∧ Temp ∧ (Muscle pain
∨ Temp)
Ví dụ 4: Dựa vào ma trận phân biệt trong ví dụ 4 phần ma trận phân biệt, ta
tính được hàm phân biệt như sau :
Hàm phân biệt F(Trời, Gió, Áp suất) = (Trời ∨ Gió) ∧ (Trời ∨ Áp suất) ∧
(Trời ∨ Gió ∨ Áp suất) ∧ (Trời ∨ Áp suất) ∧ (Trời ∨ Áp suất) ∧ Trời ∧ Trời
∧ (Trời ∨ Áp suất) ∧ Áp suất ∧ (Gió ∨ Áp suất) ∧ Gió ∧ (Gió ∨ Áp suất) ∧
Trời ∧ (Trời ∨ Gió ∨ Áp suất) ∧ (Trời ∨ Gió ∨ Áp suất) ∧ (Trời ∨ Gió)
Ví dụ 5: Dựa vào ma trận phân biệt trong ví dụ 5 phần ma trận phân biệt, ta
tính được hàm phân biệt như sau :
Hàm phân biệt F(Vóc dáng, Quốc tịch, Gia cảnh)
= Quốc tịch ∧ (Vóc dáng ∨ Quốc tịch) ∧ (Vóc dáng ∨ Quốc tịch) ∧ (Vóc
dáng ∨ Gia cảnh) ∧ (Gia cảnh ∨ Quốc tịch) ∧ Gia cảnh ∧ (Vóc dáng ∨ Quốc
tịch) ∧ Quốc tịch ∧ Quốc tịch ∧ (Vóc dáng ∨ Quốc tịch∨ Gia cảnh) ∧ (Quốc tịch
∨ Gia cảnh) ∧ (Quốc tịch ∨ Gia cảnh) ∧ Gia cảnh ∧ (Vóc dáng ∨ Quốc tịch∨
Gia cảnh) ∧ (Vóc dáng ∨ Gia cảnh)
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 21
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
Ví dụ 6: Dựa vào ma trận phân biệt trong ví dụ 6 phần ma trận phân biệt, ta
tính được hàm phân biệt như sau :
Hàm phân biệt F(Kích thước, Màu sắc, Hình dạng)
= (Kích thước ∨ Màu sắc ∨ Hình dạng) ∧ Hình dạng ∧ (Kích thước ∨ Màu
sắc ∨ Hình dạng) ∧ (Kích thước ∨ Hình dạng) ∧ (Kích thước ∨ Màu sắc ∨ Hình
dạng) ∧ (Màu sắc ∨ Hình dạng) ∧ (Kích thước ∨ Màu sắc ∨ Hình dạng) ∧ (Kích
thước ∨ Hình dạng) ∧ Màu sắc ∧ (Kích thước ∨ Màu sắc ∨ Hình dạng) ∧ (Màu
sắc ∨ Hình dạng) ∧ (Màu sắc ∨ Hình dạng)
Ví dụ 7: Dựa vào ma trận phân biệt trong ví dụ 7 phần ma trận phân biệt, ta
tính được hàm phân biệt như sau :
Hàm phân biệt F(a,b,c,d) =(a ∨ b ∨ c ∨ d) ∧ (a ∨ c ∨ d) ∧ (a ∨ b ∨ c) ∧ (b ∨
c ) ∧ (a ∨ b ∨ d) ∧ d ∧ (a ∨ b ∨ c ∨ d) ∧ (b ∨ c ∨ d) ∧ (a ∨ b ∨ c ∨ d) ∧ (a ∨ b ∨ c)
∧ (a ∨ b ∨ d) ∧ (a ∨ b ∨ c ∨ d) ∧ (b ∨ c) ∧ (a ∨ b ∨ c ∨ d) ∧ (b ∨ c) ∧ (a ∨ b ∨ c ∨
d) ∧ d ∧ (a ∨ c ∨ d) ∧ (a ∨ d)
I.5.4. Tính Reducts từ hàm phân biệt
Các luật được sử dụng để rút gọn hàm phân biệt:
• Luật giao hoán
a ∨ b = b ∨ a
a ∧ b = b ∧ a
• Luật hấp thụ:
(a ∨ b) ∧ a = a
(a ∧ b) ∨ a = a
• Luật lũy đẳng
a ∨ a = a
a ∧ a = a
• Luật phân bố:
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 22
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
a ∧ (b ∨ c) = (a ∧ b) ∨ (a ∧ c)
a ∨ (b ∧ c) = (a ∨ b) ∧ (a ∨ c)
• Luật kết hợp:
(a ∧ b) ∨ (a ∧ c) = a ∧ (b ∨ c)
(a ∨ b) ∧ (a ∨ c) = a ∨ (b ∧ c)
Thuật toán tìm Reducts:
Gọi A = (U, C ∪ D) là hệ thông tin
Gọi R là tập rút gọn
Thuật toán:
Bước 1: Tính POS
R
(D) và đặt m=| POS
R
(D) |
Bước 2: Với mọi a ∈ A
Tính POS
R \ {a}
(D) và m
a
= | POS
R \ {a}
(D) |
Nếu m
a
= m thì R = R \ {a}
Bước 3: R’ = R
Ví dụ 1: Dựa vào hàm phân biệt trong ví dụ 1 phần hàm phân biệt, ta tính
được Reducts như sau :
Hàm phân biệt F(a,b,c) = (a ∨ c) ∧ b ∧ c ∧ (a ∨ b)
= c ∧ (a ∨ c) ∧ b ∧ (a ∨ b) (luật giao hoán)
= c ∧ b (luật hấp thụ)
Vậy Reducts = {b, c}
Ví dụ 2: Dựa vào hàm phân biệt trong ví dụ 2 phần hàm phân biệt, ta tính
được Reducts như sau :
Hàm phân biệt F(a,b,c,d)
= (b ∨ c ∨ d ) ∧ (b ∨ c) ∧ b ∧ (b ∨ d) ∧ (c ∨ d) ∧ (a ∨ b ∨ c ∨ d ) ∧ (a ∨ b ∨ c )
∧ (a ∨ b ∨ c ∨ d ) ∧ (a ∨ b ∨ c ∨ d ) ∧ (a ∨ b ∨ c) ∧ (a ∨ b ∨ c ∨ d )
∧ (a ∨ b ∨ c ∨ d ) ∧ (a ∨ b) ∧ (c ∨ d ) ∧ (c ∨ d )
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 23
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
= (b ∨ c ∨ d ) ∧ (b ∨ c) ∧ b ∧ (b ∨ d) ∧ (c ∨ d) ∧ (a ∨ b ∨ c ∨ d ) ∧ (a ∨ b ∨ c )
∧ (a ∨ b) (luật lũy đẳng)
= (b ∨ c) ∧ b ∧ (c ∨ d) ∧ (a ∨ b) (luật hấp thụ)
= b ∧ (c ∨ d) ∧ (a ∨ b) (luật hấp thụ)
= b ∧ (a ∨ b) ∧ (c ∨ d) (luật giao hoán)
= b ∧ (c ∨ d) (luật hấp thụ)
= (b ∧ c) ∨ (b ∧ d) (luật phân bố)
Vậy Reducts1 = {b, c} và Reducts2 = {b, d}
Ví dụ 3: Dựa vào hàm phân biệt trong ví dụ 3 phần hàm phân biệt, ta tính
được Reducts như sau :
Hàm phân biệt F(Headache, Muscle pain, Temp )
= Temp ∧ Temp ∧ (Headache ∨ Temp) ∧ (Headache ∨ Temp) ∧
(Headache ∨ Muscle pain) ∧ (Headache ∨ Muscle pain ∨ Temp) ∧ (Headache ∨
Temp) ∧ Temp ∧ (Muscle pain ∨ Temp)
= Temp ∧ (Headache ∨ Temp) ∧ (Headache ∨ Muscle pain)
∧ (Headache ∨ Muscle pain ∨ Temp)
∧ (Muscle pain ∨ Temp)
(luật lũy đẳng)
= Temp ∧ (Headache ∨ Muscle pain) ∧ (Muscle pain ∨ Temp)
(luật hấp thụ)
= Temp ∧ (Muscle pain ∨ Temp) ∧ (Headache ∨ Muscle pain)
(luật giao hoán)
= Temp ∧ (Headache ∨ Muscle pain) (luật hấp thụ)
= (Temp ∧ Headache) ∨ (Temp ∧ Muscle pain ) (luật phân bố)
Vậy Reducts 1 = { Temp, Headache } và Reducts 1 ={ Temp, Muscle pain }
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 24
Bài thu hoạch môn KPDL và kho dữ liệu GVHD: PGS.TS. Đỗ Phúc
Ví dụ 4: Dựa vào hàm phân biệt trong ví dụ 4 phần hàm phân biệt, ta tính
được Reducts như sau :
Hàm phân biệt F(Trời, Gió, Áp suất)
= (Trời ∨ Gió) ∧ (Trời ∨ Áp suất) ∧ (Trời ∨ Gió ∨ Áp suất) ∧
(Trời ∨ Áp suất) ∧ (Trời ∨ Áp suất) ∧ Trời ∧ Trời ∧ (Trời ∨ Áp suất) ∧ Áp
suất ∧ (Gió ∨ Áp suất) ∧ Gió ∧ (Gió ∨ Áp suất) ∧ Trời ∧ (Trời ∨ Gió ∨ Áp
suất) ∧ (Trời ∨ Gió ∨ Áp suất) ∧ (Trời ∨ Gió)
= (Trời ∨ Gió) ∧ (Trời ∨ Áp suất) ∧ (Trời ∨ Gió ∨ Áp suất) ∧
Trời ∧ Áp suất ∧ (Gió ∨ Áp suất) ∧ Gió (luật lũy đẳng)
= (Trời ∨ Gió) ∧ (Trời ∨ Gió ∨ Áp suất) ∧ (Trời ∨ Áp suất) ∧
Trời ∧ Áp suất ∧ (Gió ∨ Áp suất) ∧ Gió (luật giao hoán)
= (Trời ∨ Gió) ∧ Trời ∧ Áp suất ∧ Gió (luật hấp thụ)
= Trời ∧ Áp suất ∧ Gió (luật hấp thụ)
Vậy Reducts = { Trời, Gió, Áp suất }
Ví dụ 5: Dựa vào hàm phân biệt trong ví dụ 5 phần hàm phân biệt, ta tính
được Reducts như sau :
Hàm phân biệt F(Vóc dáng, Quốc tịch, Gia cảnh)
= Quốc tịch ∧ (Vóc dáng ∨ Quốc tịch) ∧ (Vóc dáng ∨ Quốc tịch) ∧
(Vóc dáng ∨ Gia cảnh) ∧ (Gia cảnh ∨ Quốc tịch) ∧ Gia cảnh ∧ (Vóc dáng ∨
Quốc tịch) ∧ Quốc tịch ∧ Quốc tịch ∧ (Vóc dáng ∨ Quốc tịch∨ Gia cảnh) ∧
(Quốc tịch ∨ Gia cảnh) ∧ (Quốc tịch ∨ Gia cảnh) ∧ Gia cảnh ∧ (Vóc dáng ∨
Quốc tịch∨ Gia cảnh) ∧ (Vóc dáng ∨ Gia cảnh)
= Quốc tịch ∧ (Vóc dáng ∨ Quốc tịch) ∧ (Vóc dáng ∨ Gia cảnh) ∧ (Gia
cảnh ∨ Quốc tịch) ∧ Gia cảnh ∧ (Vóc dáng ∨ Quốc tịch∨ Gia cảnh)
(luật lũy đẳng)
Cao Thị Thuỳ Linh – MSHV: CH1101099 Trang 25