Tải bản đầy đủ
THEO CÁCH TIẾP CẬN TẬP THÔ

THEO CÁCH TIẾP CẬN TẬP THÔ

Tải bản đầy đủ

http://www.ictu.edu.vn
23

* Trong trường hợp sử dụng tri thức kinh nghiệm, s( X ) được tính như sau:
S ( X ) = s( PGk ) = ∑ pbk ( PI l \ PGl ) =

∑ BKF ( PG

l

l

\ PGk )

N PGk

Độ nhiễu r ( X → Y ) được tính như sau:
r( X → Y ) =

N ins − rel (X) - N ins − class (X, Y)
N ins − rel (X)

Với N ins − class (X, Y) là số các đối tượng thuộc lớp Y trong các trường hợp thỏa
mãn bộ sinh X .
2.1.2. Khám phá luật bởi bảng phân bố tổng quát dựa trên tập thô và thuật
toán tối ưu hoá các luật
Tư tưởng của thuật toán:
A.Skowron và Ning Zong đã đưa ra phương pháp khám phá luật sử dụng bảng
phân bố tổng quát dựa trên tập thô, với ý tưởng sau:
- Từ bảng quyết định xây dựng bảng phân bố tổng quát.
- Dựa trên bảng phân bố tổng quát này sinh các vector phân biệt được.
- Tạo ra các tập rút gọn từ các vector phân biệt được.
- Sinh ra các luật bao phủ tất cả các trường hợp.
Đặc điểm chính của bảng phân bố tổng quát dựa trên tập thô là:
- Bảng phân bố tổng quát mô tả quan hệ xác suất giữa các trường hợp có thể
và các bộ sinh có thể.
- Những trường hợp không thấy trong quá trình khai phá dữ liệu, sự không
chắc chắn của luật bao gồm cả khả năng dự đoán trước các trường hợp của nó được
thể hiện rõ ràng trong độ mạnh của luật.
- Hướng tìm kiếm có thể được lựa chọn một cách mềm dẻo, có thể sử dụng tri
thức nền làm cơ sở cho việc tạo bảng phân bố tổng quát và quá trình khai phá.
Như vậy, Thuật toán tối ưu hoá các luật như sau:
Tư tưởng của thuật toán:

http://www.ictu.edu.vn
24

Giả sử có bảng quyết định T = (U , C , { d } ) gồm n đối tượng và m thuộc tính, tỷ
lệ nhiễu r . Câu hỏi đặt ra là tìm tập tối ưu các luật có cùng độ mạnh?
Bước 1: Các đối tượng với các giá trị thuộc tính điều kiện giống nhau được coi
như một đối tượng gọi là đối tượng ghép.
Bước 2: Tính toán tỷ lệ nhiễu r cho mỗi đối tượng ghép.
Bước 3: Chọn một đối tượng u từ U và tạo một vector phân biệt được cho u .
Bước 4: Tìm tất cả các tập rút gọn cho đối tượng u sử dụng hàm phân biệt.
Bước 5: Tạo các luật từ tập rút gọn cho u , và xem lại độ mạnh của mỗi luật.
Bước 6: Chọn luật tốt nhất từ các luật từ Bước 5, sử dụng phương pháp đánh
giá kinh nghiệm khi lựa chọn luật.
Bước 7: U = U − { u} ;
Nếu U ≠ φ , thì quay lại bước 3, trường hợp khác thì tiếp đến bước 8.
Bước 8: Kết thúc nếu số các luật được chọn trong bước 6 cho mỗi trường hợp
là 1, trường hợp còn lại tìm một tập tối thiểu các luật mà chứa tất cả các trường hợp
trong bảng quyết định.
Độ phức tạp thời gian của thuật toán: O ( mn3 + mn 2 N ( GT ) )
với N ( GT ) là số lần sinh và nhỏ hơn O ( 2m −1 ) .
Thuật toán này là có thể không phù hợp cho cơ sở dữ liệu mà số các thuộc tính
là lớn.
Để giải quyết vấn đề này, một số các phương pháp đã được đưa ra:
- Tìm kiếm tập rút gọn (tập con) của các thuộc tính điều kiện trong quá trình
tiền xử lý.
- Tìm giải pháp gần tối ưu sử dụng phương pháp tìm kiếm kinh nghiệm hiệu
quả.
2.2. Vấn đề rời rạc hoá dựa trên lý thuyết tập thô
Bảng quyết định có dạng: T = (U , C , D) ,
Trong đó:
Tập D = { d1 , d 2 ,..., d k } là tập các thuộc tính quyết định.

http://www.ictu.edu.vn
25
C là thuộc tính điều kiện. Và C ∩ D = φ .

Hệ này được xem như là hệ quyết định T = (C ,U , { d D } ) , trong đó
d D ( x ) = d1 ( x ) , d 2 ( x ) ,..., d k ( x ) , với ∀x ∈ U .

Trong quá trình khai phá tri thức từ kho dữ liệu khổng lồ, một vấn đề được đặt
ra là chúng ta phải tìm cách để xử lý những dữ liệu hỗn tạp, không quy củ thành
những dữ liệu có ích, có nhiều ứng dụng với những giá trị liên tục. Phương pháp
được nêu ra là phân chia các giá trị thuộc tính thành các khoảng, các đoạn, quá trình
xử lý dữ liệu kiểu này được gọi là rời rạc hoá.
Trên thực tế có nhiều phương pháp được sử dụng để rời rạc hoá dữ liệu hỗn
tạp. Nhưng đến nay, các chuyên gia và người sử dụng vẫn chưa tìm ra được một
phương pháp chung nhất cho việc rời rạc hoá, mà lựa chọn phương pháp nào phụ
thuộc rất nhiều vào kiểu dữ liệu cần xử lý. Một số phương pháp được sử dụng nhiều
nhất phải kể đến: Phương pháp lập luận logic; Thuật toán Semi-Naïve; Thuật toán
Naïve;...
Nhằm tìm hiểu và sử dụng một trong số những phương pháp để rời rạc hoá dữ
liệu như đã nói ở trên, luận văn đề cập tới phương pháp rời rạc hoá dữ liệu cơ bản,
đó là sử dụng khái niệm tập các nhát cắt, nhát cắt trong bảng quyết định trong lý
thuyết tập thô và lập luận logic.
2.2.1. Các định nghĩa
Định nghĩa 2.1: Nhát cắt, nhát cắt trong bảng quyết định.
Xét một bảng quyết định T = (U , C , D) ,
Trong đó: D = { d1 , d 2 ,..., d k } ; U = { x1 , x2 ,..., xn } , và d : U → {1,2,...r} .
Giả sử Va = [ la , ra ] ⊆ R với ∀a ∈ T
Tiến hành chia Va thành các khoảng con, và ký hiệu là Pa

{[

)[

) [

Pa = c0a , c1a , c1a , c2a ,..., cka , cka+1

với: k a là một số nguyên.
la = c0a < c1a < ... < cka < cka+1 ;

)}

http://www.ictu.edu.vn
26

{[

) [

[

)

)}

Va = c0a , c1a ∪ c1a , c2a  ... ∪ cka , cka+1 ;

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

{

}

Ca = c0a , c1a ,..., cka . Và mỗi họ { Pa : a ∈ T } gọi là một phân hoạch trên (trong đó Pa là

một phân hoạch trên Va ).
Cặp ( a, c ) với a ∈ T và c ∈ Ca được gọi là một nhát cắt trên Va .
Từ định nghĩa tập các nhát cắt trên ta thấy rằng 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.
Mỗi họ P = { Pa : a ∈ T} của các phân hoạch trên định nghĩa một bảng quyết
định mới T P = (U , C P ∪ D )C P ,
Trong đó:

{

}

T P = a P : a ∈ T và

[

]

a p ( x) = i ⇔ a( x ) ∈ c1a , cia+1 với ∀x ∈ U và i ∈ { 0,1,..., k } .

Bảng T P gọi là P - lượng tử hoá hay P - rời rạc hoá của T .
Hai họ P' và P trên T là tương đương, ký hiệu P'≡T P khi và chỉ khi T P ' = T P .
Quan hệ tương đương ≡T có một hữu hạn các lớp tương đương.
Định nghĩa 2.2: Về T - nhất quán, T - không nhất quán
Xét một bảng quyết định T = (U , C , D) , B ⊆ T ,
Hàm ∂ B : U → 2{1, 2,...r ( d ) } được gọi là bảng quyết định tổng quát của T và được
xác định bằng công thức:
∂ B ( x ) = { i : ∃x '∈U [ ( x ' IND( B ) x ) ∧ ( d ( x') = i ) ]}

Bảng quyết định T được gọi là nhất quán nếu: card ( ∂ B ( x ) ) = 1 với ∀x ∈ U
Ngược lại T không nhất quán nếu: card ( ∂ B ( x ) ) ≠ 1 với ∀x ∈ U .
Định nghĩa 2.3: T − consistent
Xét một bảng quyết định T = (U , C , D)
Một họ các phân hoạch P trên T là nhất quán với T (hay T − consistent ) khi
và chỉ khi: ∂T = ∂TP , trong đó ∂T và ∂TP tương ứng là các bảng quyết định tổng quát
của T và T P .

http://www.ictu.edu.vn
27

Định nghĩa 2.4: T - rút gọn tối thiểu.
Xét một bảng quyết định T = (U , C , D)
Một họ P iir của các phân hoạch trên T là T − ineducible ( T - rút gọn tối thiểu)
nếu:
P iir là T − consistent ;

P ⊂ Pirr không là T − consistent
Định nghĩa 2.5: T - tối ưu
Xét một bảng quyết định T = (U , C , D)
Một họ P opt của các phân hoạch trên T là T − optimal ( T - tối ưu) nếu:
Pirr là T − consistent

(

)

card P opt ≤ card ( P ) card(Popt) ≤ card(P) với

∀ họ T − consistent

các phân hoạch trên P .
2.2.2. Vấn đề rời rạc hoá dựa trên lý thuyết tập thô
Một bảng quyết định T = (U , C , D) . Trong đó, U = { x1 , x2 ,..., xn } ,
Thuộc tính a ∈ T

{v , v ,..., v } = { a( x ) : x ∈ U }
a
1

a
2

a
n

a
a
a
được định nghĩa là một dãy v1 < v2 < ... < vn

với

và na ≤ n .

Đặt pka = [vka , vka+1 ] là một biến mệnh đề với ∀k ∈ {1,2,..., na − 1} và a ∈ T .
Tập các biến mệnh đề, ký hiệu là BV ( T ) .
Ta nhận thấy, với mỗi phân hoạch P ⊆ 

a∈A

{ a} xVa được định nghĩa là một giá

trị valP của các biến mệnh đề pka , viết dưới dạng valP ( pka ) = true (hay P |= pka ) khi
và chỉ khi tồn tại một nhát cắt ( a, ca ) ∈ P thoả mãn tính chất vka < ca < vka+1 .
Giả sử, đặt ϕ ( a, i, j ) biểu thị một chuẩn tắc tuyển của tất cả các biến logic từ
a
a
a
tập: { Pk : [vk , vk +1 ] ⊆ [min ( a( xi ) , a ( x j ) ) max( a( xi ) , a ( x j ) )} .

Khi đó valP ( ϕ ( a, i, j ) ) = true khi và chỉ khi có một nhát cắt của P trên
Va ∈ ( a ( xi ) , a ( x j ) ) .

http://www.ictu.edu.vn
28

Và đặt ψ ( i, j ) biểu thị chuẩn tắc tuyển của tất cả các ϕ ( a, i, j ) trong đó a ∈ T và
a ( xi ) ≠ a ( x j ) .

Khi đó, công thức mệnh đề logic phân biệt của T được định nghĩa như sau:
Φ T = {ψ ( i, j ) : d ( xi ) ≠ d ( x j )}


Và mỗi tập khác rỗng của các biến logic mệnh đề từ BV (T ) định nghĩa một họ
a
a
a
các phân hoạch P(S ) với S = { Pk , Pk ,..., Pk
1

1

2

2

r

r

} như sau:

 v a1 + vka1+1   vka 2 + vka 2 +1   vka r + vka r +1 
1
2
r
,  a2 2
,...,  ar r

P( S ) =  a1 k1






2
2
2


 


Bổ đề 2.1: Họ P các phân hoạch trên T là T − consistent khi và chỉ khi
P |= ΦT .

Chứng minh:
Họ các phân hoạch P trên T là T − consistent khi và chỉ khi:

[

]

∂ T P = ∂ T ⇔ ∀i, j{ d ( xi ) ≠ d ( x j ) ⇒ InfT P ( xi ) ≠ InfT P ( x j )}
P
P
P
P
Ta có: { InfT ( xi ) ≠ InfT ( x j )} ⇔ ∃a ∈ T : a ( xi ) ≠ a ( x j )
P

P

Không mất tính tổng quát ta giả sử:
a P ( xi ) < a P ( x j ) ⇔ ∃( a, ca ) : a P ( xi ) ≤ ca ≤ a P ( x j ) ⇔ P = ψ ( i, j )

Do đó, P trên T là T − consistent khi và chỉ khi:

[

]

∀i, j{ d ( xi ) ≠ d ( x j ) } ⇒ P |= ψ ( i, j ) .

Vậy P |= {|= ψ ( i, j ) : d ( xi )}

Bổ đề 2.2. Cho mọi tập S ≠ φ các biến mệnh đề logic, các điều kiện sau là
tương đương:
1. S là một prime implicant của công thức logic Φ A .
2. P( S ) là một họ T − irreducible của các phân hoạch.
Chứng minh:
Ta có: ∧ S − là một prime implicant của ΦT khi và chỉ khi:

http://www.ictu.edu.vn
29
P( S ) |= ΦT ⇔ P( S ) là T − consistent .
P( S ') |≠ ΦT với ∀S ' ⊂ S ⇔ P( S ') không là T − consistent với ∀S ' ⊂ S .

(Theo bổ đề 2.1)
Bổ đề 2.3. Với mọi S ≠ φ , S ⊆ BV ( T ) của các biến logic mệnh đề, các điều kiện
sau là tương đương:
1) S - là một prime implicant có độ dài tối thiểu của công thức logic ΦT .
2) P( S ) - là một họ T − optimal của các phân hoạch.
Như vậy, từ một bảng quyết định T bất kỳ với n các đối tượng và k thuộc
tính, người ta có thể xây dựng công thức ΦT trong dạng chuẩn tắc hội (CNF) với
thời gian đa thức là O(n 3k ) .
2.3 Một số thuật toán sử dụng lý thuyết tập thô
2.3.1. Thuật toán lựa chọn thuộc tính sử dụng tập thô theo phương pháp đánh
giá kinh nghiệm.
Tư tưởng cơ bản của việc lựa chọn thuộc tính sử dụng tập thô với phương
pháp đánh giá kinh nghiệm như sau:
- Lựa chọn các thuộc tính trong nhân ( Core ) làm tập con ban đầu.
- Tại mỗi bước, lựa chọn các thuộc tính sử dụng tiêu chuẩn đánh giá trong quá
trình khám phá luật bởi bảng phân bố tổng quát trong tập Thô.
- Dừng lại khi tập con các thuộc tính được chọn là một tập rút gọn.
Số lượng của các tập rút gọn có thể là 2 N −1 trong đó N là số các thuộc tính.
Việc lựa chọn tập rút gọn tối ưu từ các tập rút gọn có thể là rất tốn thời gian nếu tìm
kiếm toàn bộ hoặc khó có thể biết được khi nào thì tập con tối ưu xuất hiện. Do đó
ta sử dụng phương pháp kinh nghiệm. Đặc điểm chính của phương pháp lựa chọn
thuộc tính dựa trên tập Thô với phương pháp đánh giá kinh nghiệm là nó có thể tìm
ra các tập con thuộc tính nhanh và hiệu quả từ cơ sở dữ liệu lớn, các thuộc tính
được lựa chọn không làm giảm đi tính ưu việt của thuật toán quy nạp nhiều lắm.
Đây không phải là chiến lược tốt nhất, nhưng nó là chiến lược tốt đối với các dữ
liệu lớn, các bài toán phức tạp.

http://www.ictu.edu.vn
30

Việc chọn lựa chọn thuộc tính để bổ sung vào tập thuộc tính nhân ban đầu
thực hiện như sau:
Thuộc tính a được chọn nếu khi thêm a vào tập thuộc tính R thì
Card ( POS R∪{ a} ( D ) ) tăng nhanh hơn và max_ size( POS R ∪{ a} ( D ) / IND( { R ∪ { a} ∪ D} ) ) lớn

hơn khi thêm thuộc tính khác.
Thuật toán lựa chọn thuộc tính sử dụng tập thô với phương pháp đánh giá kinh
nghiệm được mô tả:
Thuật toán:
Đặt R là tập thuộc tính điều kiện được chọn ( R là tập các thuộc tính thuộc
nhân Core ).
P là tập thuộc tính điều kiện không được chọn.
U là tập các đối tượng.

X là tập các đối tượng truyền thống.
EXPECT là ngưỡng chính xác.

Ban đầu, giả sử R = Core( C ) , P = C − Core( C ) , K = 0 ;
Bước 1: Loại bỏ tất cả các đối tượng nhất quán: X = U − POS R ( D )
Bước 2: Tính K = γ R ( D ) =

card ( POS R ( D ) )
card ( D )

If k ≥ EXPECT then STOP
Else If POS P ( D ) = POSC ( D ) return “chỉ có k khả dụng” and STOP .
Bước 3: Tính: v p = card ( POS R ∪{ P} ( D ) )
m p = max_ size( POS R ∪{ P} ( D ) / ( R ∪ { p} ∪ ( D ) ) ) với ∀p ∈ P

Bước 4: Chọn thuộc tính p tốt nhất, ví dụ với v p xm p lớn nhất và đặt
R = R ∪ { p} , P = P − { p} .

Bước 5: Quay lại bước 1.
Ví dụ 2: Cho bảng quyết định với:
a , b , c , d là thuộc tính điều kiện; e là thuộc tính quyết định.

http://www.ictu.edu.vn
31

Và U = { u1 , u2 , u3 , u4 , u5 , u6 , u7 } .
Bảng 2.1 mô tả các đối tượng. Với { b} là thuộc tính không thể thiếu duy nhất
vì loại bỏ b sẽ gây nên việc không nhất quán: { a1c2 d1} → e1 và { a1c2 d1} → e0
Từ các lớp tương đương: U /{ b} = {{ u1 , u2 } , { u5 , u6 , u7 } , { u3 , u4 }} và
U /{ e} = {{ u4 } , { u1 , u2 , u7 } , { u3 , u5 , u6 }}

Ta thu được b - vùng khẳng định của e : POS{ b} ( e ) = { u1 ,u2 }
Do đó, ở trạng thái khởi tạo ban đầu, thì R = { b} , P = { a, c, d } , X = { u3 , u4 , u5 , u6 , u7 }
Giả sử EXPECT _ k = 1 , điều kiện kết thúc là k ≥ 1 , vì k = 2 / 7 < 1 nên R không
phải là rút gọn, ta phải tiếp tục tìm các thuộc tính điều kiện trong số các thuộc tính

{ a} , { c} , { d } .
Từ bảng miêu tả việc thêm { a} , { c} , { d } vào R thể hiện ở Bảng 2.2, Bảng 2.3,
Bảng 2.4 ta thu được các họ các lớp tương đương:
U / E = {{ u3 , u5 , u6 } , { u4 } , { u7 }} ;
U /{ a, b} = {{ u3 , u4 } , { u5 , u6 , u7 }} ;
U /{ b, c} = {{ u3 } , { u4 } , { u5 } , { u6 } , { u7 }} ;
POS{ a,b} ( E ) = φ ;
POS{ b , c} ( E ) = POS{ b , d } ( E ) = { u3 , u4 , u5 , u6 , u7 } ;
max_ size( POS{ b , d } ( E ) ) / ( { b, c, E} ) = 1 ;
max_ size( POS{ b , d } ( E ) ) / ( { b, d , E} ) = { u5 , u6 } = 2 ;

Từ việc tính toán trên, vì tập lớn nhất nằm trong U /{ b, d , E} suy ra d là thuộc
tính được chọn. Sau khi thêm d vào R , ta thấy tất cả các đối tượng nhất quán và
phải loại bỏ khỏi U , khi đó U = φ , k = 1 , quá trình thực hiện tìm kiếm kết thúc.
Tập thuộc tính rút gọn chính là { b, d } .

http://www.ictu.edu.vn
32
U

a

b

c

d

e

u1

1

0

2

1

1

u2
u3

1
1
1
2
2
2

0
2
2
1
1
1

2
0
2
0
1
2

0
0
1
0
0
1

1
2
0
2
2
1

u4
u5
u6
u7

Bảng 2.1 Bảng thông tin mô tả các đối tượng
U
u3
u4
u5
u6
u7

b
2
2
1
1
1

e
2
0
2
2
1

Bảng 2.2. Khởi tạo ban đầu
U
u3
u4
u5
u6
u7

a
1
1
2
2
2

b
2
2
1
1
1

Bảng 2.3 Chọn {a}

e
2
0
2
2
1

http://www.ictu.edu.vn
33

U
u3
u4
u5
u6
u7
U
u3
u4
u5
u6
u7

a
2
2
1
1
1

b
0
2
0
1
2

Bảng 2.4 Chọn {b}
a
b
2
0
2
1
1
0
1
0
1
1

e
2
0
2
2
1
e
2
0
2
2
1

Bảng 2.5 Chọn {d}
2.3.2. Thuật toán tìm tập rút gọn dựa vào cặp số phân biệt được
Tư tưởng của thuật toán:
Chọn R := θ và sẽ bổ sung dần các thuộc tính vào R . Vấn đề đặt ra là tại mỗi
bước chọn lựa, thuộc tính nào sẽ được đưa vào R . Một cách tự nhiên, ta chọn thuộc
tính mà khi tham gia vào tập rút gọn sẽ làm cho số cặp đối tượng bằng nhau trên R
nhưng khác nhau trên D là ít nhất. Với cách chọn lựa Heuristic này, thuật toán có
khả năng cho ta một tập rút gọn với số thuộc tính tối thiểu. Tại mỗi bước ta luôn ký
hiệu L = U / R . Ban đầu R = θ nên L = {U } .
Input: T = ( C , D ) .
Output: Tập rút gọn R .
Thuật toán:
R = θ ; L := {U } ;

Repeat For1 c j ∈ C \ R do
For2 Vi ∈ L do Tìm Vi /{c j } = {W1 ,W2 ,...,Wm } ;
l
l
l
For3 l := 1 to m do Tìm Wl / D = {W1 ,W2 ,...,Ws } ;





2



1 l 2
W
l 2
Tính ω ( D ) =  ( x ) − ∑ ( xi ) 
l