Phóng nhanh Gãy chân Phóng nhanh Gãy chân [22,35] Phóng nhanh Gãy tay... Dim Mang as TANSUATDim i,j , f As Integer, sName As string Dim sSel as string //... Private Sub Node_LinkByVal I
Trang 6M C L C
L .i
TRANG THÔNG TIN LU ii
M C L C iv
DANH M C CÁC T VI T T T vi
DANH M C B NG BI U vii
DANH M C HÌNH viii
M U 1
1 Lý do ch tài 1
2 M c tiêu và nhi m v nghiên c u 2
ng và ph m vi nghiên c u 2
u 2
5 Ý c và th c ti n c tài 3
6 B c c lu 3
T NG QUAN V KHAI PHÁ D LI U 4
4
1.2 Các d ng d li u có th khai phá 4
ng ti p c n và k thu t áp d ng 6
c ng d ng 7
1.5 M t s li u 7
n và quy n p 7
1.5.2 Cây quy nh và lu t: 8
n 8
1.5.4 M ng neural 8
1.5.5 Gi i thu t di truy n 9
LU T K T H P VÀ THU T TOÁN TÌM LU T LU T K T H P 10
2.1 T ng quan v lu t k t h p 10
2.2 M t s khái ni n 11
2.2.1 Lu t k t h p 11
h tr c a m t t p m c (itemset) 11
2.2.3 T p m c ph bi n (frequent itemset): 11
a m t lu t: 11
2.3 Bài toán khai phá d li u b ng lu t k t h p và các pha th c hi n 12
2.4 M t s tính ch t c a t p m c ph bi n và lu t k t h p 14
Trang 72.4.1 M t s tính ch t v i t p m c ph bi n 14
2.4.2 M t s tính ch t c a lu t k t h p 14
2.5 Các lo i lu t k t h p 15
2.6 Các thu t toán khai phá d li u nh lu t k t h p 17
2.6.1 Khai phá lu t k t h u t d li u tác v 17
2.6.2 Khai phá lu t k t h ng 37
NG D NG LU T K T H P KHAI PHÁ D LI U TAI N N GIAO THÔNG 40
3.1 M u c a bài toán 40
3.2 K t qu c và phát tri n ng d ng 58
K T LU N 59 TÀI LI U THAM KH O
Trang 8TT
TTTT
Trang 9DANH M C B NG BI U
B ng 2.2 tin c y c a m t s lu t k t h c sinh ra t b ng 2.1 14
B ng 2.5 Minh h a k t qu c 1 c a thu t toán EP-growth 30
Trang 11M U
1
v.v
mình
Trang 12g tin
2008
3.1
S
Trang 132
3
Trang 14Ch ng 1
T NG QUAN V KHAI PHÁ D LI U
1980 xem nh
Trang 16-processing and Preparation)
xem nh thông tin d
Trang 17Ph
Trang 18ng
1.5
là các u
nh
1.5
cong ng
Trang 191.5
T t
Trang 20Ch ng 2
LU T K T H P VÀ THU T TOÁN TÌM LU T LU T K T H P 2
Trang 25Y Z => X Y X Z
Y và Y Z Z
Trang 26gãy tay" (L1)
l
(L2)
(L3)máy
ng
(L4)
(L5)
t
Trang 33Ck = sinh_ung_cu(Lk-1); //by joining Lk-1 with itself For
Trang 342 Lk-1 và l2 <> l1Begin
Trang 37X
Trang 38{B}, {D}
sau: B conf = 100%
forall large itemsets lk, k 2 do begin
Trang 39if(conf minconf) then
output the rule (lk-hm+1) hm+1
genrules (ABCDE, ACDE)
BE, ADE BC, CDE BA, ACE BD
BE và ABCD
2
Tuy nhiên trong tr
Trang 43y nh sau:
1N2 Nm
Cây T là FP-tree
Var i,j,k: Integer;
Var varNode: Node;
Trang 45-path =-path & varNode.Name varnode=T.Nodes(varnode.ParentID)
Trang 47FP ngay
2
phân
Trang 48ID Nguyên nhân
Trang 49Phóng nhanh Gãy chân
Phóng nhanh Gãy chân
[22,35] Phóng nhanh Gãy tay
Trang 51TNGT
TNGT
Các 3.1
Trang 55Dim Mang() as TANSUAT
Dim i,j , f As Integer, sName As string
Dim sSel as string
//
Trang 56Redim Mang(rsMining.Fields.Count -1)
Do While Not rsMining.EOF
For i =0 to rsMining.Fields.Count -1
If Not isnull(rsMining.Fields(i).Value) then
Mang(i).Name =rsMining.Fields(i).Name Mang(i).Tansuat
L For i=0 to Ubound(Mang(i))
If Mang(i).Tansuat < minsupp Then
Redim Preserve
Mang(i-End if
sSel=sSel & Mang(i).Name
Next
Trang 57
-Public Type myTree
'Out put: Cây
FP-Dim m As Long, n As Long, k As Long
Dim strTemp As String
m = UBound(myTree(iRoot).Con)
If m > 0 Then
For i = 1 To m
k = myTree(iRoot).Con(i)
If myTree(k).Ten = Mid(strItem, 1, 3) Then
myTree(k).Tansuat = myTree(k).Tansuat + myifrequent
Trang 58ReDim Preserve myTree(iRoot).Con(m + 1)
ReDim Preserve myTree(k).Con(0)
ReDim Preserve myTree(iRoot).Con(m + 1)
Trang 59Private Sub Node_Link(ByVal Item As String, ByVal iPos As Long, ByRefMang() As Tansuat)
Dim i As Integer, j As Integer
Trang 60A>{} hay {}
-Private Sub FP_Growth(ByRef HeaderTable() As Tansuat, myT() As myTree, ByVal Item As String)
Dim i As Long, j As Long, k As Long
Dim m As Long, n As Long, h As Long
Dim myString As String, strTemp As String
Dim fixId As Long, ifrequent As Long
Dim myHead() As Tansuat
Dim myCay() As myTree
Dim strInsert As String, strValue As String
Dim bData As Boolean
Call Generate_Itemset(strTemp, Item, myItemset, myT)
'Lay ra chuoi chua ta cac ten cac nut tren cay
'Tao mang chua tat ca cac tap con co the cua tap cac nut noi tren voi do ho tro la min trong tat ca
'Ket qua cuoi cung la duoc mang chua cac tap muc pho bien 'Bo qua
luat A->{} va nguoc lai
Else
For i = 0 To n
bData = False
k = UBound(HeaderTable(n - i).Vitri)
cn.Execute "Delete from Mytree"
'Duyet cay day vao CSDL
For j = 1 To k
Trang 61strInsert = strInsert & "," & myT(h).Ten
strValue = strValue & ",1"
strInsert = "Insert into MYTREE(mau,Tansuat," &strInsert & ")"
strValue = " Values('" & strTemp & "'," & ifrequent &
"," & strValue & ")"
cn.Execute strInsert & strValue
Call Create_List("MyTree", myHead)
'Duyet CSDL lan 2 tao Cay phu thuoc
If UBound(myHead) = 0 And myHead(0).Tansuat < minsupp Then 'Khong lam
gi ca nua
Else
'Neu cay phu thuoc khong rong thi goi de quy
myString = myString & strTemp
ReDim myCay(0)
Trang 62Call Tao_cay("MyTRee", myCay, myHead)
If UBound(myCay) > 0 Then Call FP_Growth(myHead, myCay, myString)End If
Set rsTemp = New ADODB.Recordset
rsTemp.Open "Select * from " & strTableName, cn, adOpenForwardOnly, adLockReadOnly
If rsTemp.RecordCount = 0 Then Exit Sub rsTemp.MoveFirst
ReDim myArray(rsTemp.Fields.count - 3) Do While Not rsTemp.EOF
Trang 63'S¾p xÕp
For i = 0 To UBound(myArray)
For j = i + 1 To UBound(myArray)
If myArray(j).Tansuat > myArray(i).Tansuat Then
f = myArray(i).Tansuat strName = myArray(i).Name myArray(i).Name =
myArray(j).Name myArray(i).Tansuat = myArray(j).Tansuat myArray(j).Name = strName myArray(j).Tansuat = f
End If
Next
Next
For i = 0 To UBound(myArray)
ReDim Preserve myArray(i).Vitri(0)
If myArray(i).Tansuat < minsupp Then
If UBound(myT(i).Con) > 1 Then SingleTree = False
Exit Function End If
Trang 64'MsgBox strItem & ":Mau:" & Mau
Dim strTemp As String, myItem As String Dim i As Integer, j As Integer, k As Integer
Dim m As Integer, n As Integer, h As Integer, l As Integer Dim myArray() As MySet
Dim A As Long, B As Long, x As Long, y As Long, count As Long
m = Len(strItem) / 3 ' Sè phÇn tö cña m¶ng mySet Mçi Item gåm 3 ký tù
If m = 0 Then Exit Sub
ReDim Preserve myArray(m)
'ReDim myArray(0).Item(0)
'myArray(0).Item(0) = Mau
ReDim Preserve myArray(1).Item(m)
ReDim Preserve myArray(1).Tansuat(m)
For i = 1 To m
myArray(1).Item(i) = Mid(strItem, i * 3 - 2, 3)
Next
For i = 2 To m
ReDim Preserve myArray(i).Item(0)
ReDim Preserve myArray(i).Tansuat(0)
n = 0: k = 0
n = UBound(myArray(i - 1).Item)
For j = 1 To n
myItem = Right(myArray(i - 1).Item(j), 3)
k = InStr(1, strItem, myItem, vbTextCompare) + 3 strTemp
= ""
strTemp = Mid(strItem, k)
l = Len(strTemp) / 3
Trang 65If l > 0 Then
For h = 1 To l
ReDim Preserve myArray(i).Item(UBound(myArray(i).Item) + 1)
ReDim Preserve myArray(i).Tansuat(UBound(myArray(i).Tansuat) + 1)myArray(i).Item(UBound(myArray(i).Item)) =\myArray(i -
1).Item(j) & Mid(strTemp, (h - 1) * 3 + 1, 3)I Next
ReDim Preserve myMang(k)
ReDim myMang(k).Item(UBound(myArray(i).Item)) ReDim
Trang 66Dim rsLan2 As ADODB.Recordset
Dim i As Long, m As Long, j As Long, k As Long
Dim arrTemp() As String
Dim myString As String, strSel As String
'Nót gèc cã nh·n rçng, cha=0, Kh«ng cã con ghÜa lµ T(0).Con(0)=0, NÕu cã con th× T(i).con(j)>0 víi j>=1
Trang 67If Not IsNull(.Fields(i).Value) Then
Trang 69K T LU N
trình
:
Trang 70Khoa CNTT, B môn HTTT Kinh T , Thái Nguyên
Ti ng Anh:
[9] Alan Rea (1995), Data Mining An Introduction, The Parallel Computer Center,
[10] Jiawei Han and Micheline Kamber (2002), Data mining: Concepts and Techniques, University of Illinois, Morgan Kaufamn Publishers
[11] Rakesh Agrawal, Tomasz Imielinski and Arun Swami (1993), Mining association rules between sets of Items in lagre databases, In Proc of the ACM SIGMOD Conference on Mangement of Data, Washington, DC
[12] Mohammed J.Zaki and Ching Jui Hsiao (1999), CHAM: An Efficient Algorithm for Closed Association Rules Mining, PRI Technical Report 99 [13] Jiawei Han and Micheline Kamber, Data mining: Concepts and Techniques, Academic Press 2001
[14] Zaki M., Parthasarathy S., Ogihara M.: New algorithms for fast discovery of association rule, KDDM 1998
[15] www.mimuw.edu.pl/~son/datamining