LỜI CẢM ƠN Lời đầu tiên em xin được phép gửi lời cám ơn chân thành đến giảng viên bộ môn khai thác đữ liệu và ứng dụng, là cô Võ Thị Hồng Thắm, đã dạy cho chúng em những buổi học thực h
Luật kết NOP occ cccecececceseecececeecesstvesesuesasasstvesussasasatsevassecatatisatsciueasstesetneneaees 1 2 EXAMPIeS! 00 cece cece cece eee e eee eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeses 1 3 Association Rules - Khái niệm cơ bản - L2 HS SH HH ST Ty 2 4 Association Rules — Basic Concepf§ .- LH nh HH HH Hkkkệt 2 5 Solution: The Apriroi Principl@ SH nn HH TT HH kh 5 2C) i19 0 -dddA.A :œã<.ă ắăaă Ố 6 7 Associations in Recommender Sysfems§ Lọ nsHn nhe 11 II Mining Frequent Patterns II: Mining Sequential & Navigational Patterns
Dạng chung: 4 Body ==> Head 4 Độ hỗ trợ (support) và độ tín cậy (confidence)
Thường được báo cáo cùng với các quy tắc Các số liệu cho biết sức mạnh của các liên kết mặt hàng 2 Examples:
{diaper, milk} ==> {beer} [support: 0.5%, confidence: 78%] buys(x, "bread") /\ buys(x, “eggs") ==> buys(x, "milk") [sup: 0.6%, conf: 65%] major(x, "CS") /\ takes(x, "DB") ==> grade(x, "A") [1%, 75%] age(X,30-45) A income(X, 50K-75K) ==> owns(X, SUV) ape= “30-45”, meome=“50K-75K” ==> car=“SUV”
3 Association Rules — Khai niém co ban Let D be database of transactions - e.g.:
Hinh 1 1: Transactions ô Đặt I là tập hợp cỏc mục xuất hiện trong cơ sở đữ liệu, vớ dụ:, I={A,B,C.D,E.F}
- Mỗi giao tac t la tap con cua |
* Một rule là một hàm ÿ nghĩa giữa itemsets X và Y, có dạng X 9 Y, với Xcl, Ycl, va XơY=ỉ
—- @.g.: {B,C} ô {A} là một rule 4 Association Rules — Basic Concepts s ltemset
— Tap một hay nhiều sản phẩm ° E.g.: {MIIk, Bread, Diaper} — k-itemset
— Tần suất xuất hiện của một tập Itemset (số lượng giao dịch mà nó xuất hiện)
— Phan cua cac giao dich trong đó một tập mục xuất hién
—E.g s({Milk, Bread, Diaper}) = 2/5 Frequent ltemset
— | itemset ma support >= nguéng minsup Association Rules — Basic Concepts Association Rule
X © Y, khi X va Y la nhitng itemsets riéng biét {Milk, Diaper} > {Beer} Đánh giá luật Support (s) Tỷ lệ giao tác chứa X và Y i.e., support of the itemset X U Y Confidence (c)
Tần suất các items trong Y xuất hiện trong giao tác có X (Y và X xuất hiện cùng nhau so với một mình X xuất hiện)
Association Rules — Basic Concepts Một cách giải thích khác về độ hỗ trợ và độ tin cậy cho X © Y
— Support la xác suất | giao tac chira {X U Y} or Pr(X AY) support(X > Y) = support(X U Y) = o(X u Y) / |DI
— Confidence la xac suất có điêu kiện một giao tác có Y với điêu kiện có X or Pr(Y |
X) confidence(X 9 Y) = o(X u Y) / o(X) = support(X U Y) / support(X) Support & Confidence - Example
Steps in Association Rule Discovery
1 Tim cac tap frequent itemsets (item sets are the sets of items that have minimum support)
2 Su dung cac tap frequent itemsets dé tạo các association rules Thuật toán vét cạn:
+ằ Liệt kờ và tớnh độ support cho toàn bộ 1temsets
+ Tao tat ca cac luat tir cc frequent itemsets
+ Loại bỏ các luật dưới ngưỡng minconf threshold Có bao nhiêu itemsets?
# Nếu | itemset là frequent (đáp ứng độ support), thì tất cả tap con ciing la frequent o Néu {AB} la | frequent itemset, ca {A} va {B} la frequent itemsets
# Điều này là do tính chất anti-monotone cua d6 support
Cho nên: Nếu I itemset không thỏa ngưỡng minimum support, các tập itemset chứa nó cũng không thỏa ® Dựa vào điều này ta có thể cắt tỉa không gian tìm kiếm)
The Apriori Principle Rút gọn dựa vào độ tin cậy
6 Giải thuật Apriori Ck : Candidate itemset of size k Lk : Frequent itemset of size k
Join Step: Ck is generated by joining Lk-1with itself
Prune Step: Any (k-1)-itemset that is not frequent cannot be a subset of a frequent k- itemset
Example of Generating Candidates L3 ={abc, abd, acd, ace, bcd}
Self-joining: L3*L3 abcd from abc and abd acde from acd and ace Pruning: acde is removed because ade is not in L3 C4 = {abcd}
Apriori Algorithm - An Example Assume minimum support = 2
Tap “frequent” item sets sau củng thuộc về L2 và L3 Tuy nhién, {2,3}, {2,5}, va {3,5} ton tai trong tap item set lớn hơn là {2, 3, 5} Cho nên, kết quả tập item sets sau cùng của thuật toán Apriori la {1,3} va {2,3,5} Đây là tập itemset duy nhat ma tir do chúng ta sẽ tạo ra các luật kết hợp
Hình 1 7 : Tao Association Rules ttr tap Frequent Itemsets Chỉ các luật kết hợp mạnh được tạo ra Frequent itemsets thoa nguGng minimum support threshold Cac rules manh thoa cac nguéng minimum confidence threshold confidence(A © B) = Pr(B | A) For each frequent itemset, f, generate all non-empty subsets of f For every non-empty subset s of f do if support(f)/support(s) > min_confidence then output rule s ==> (f-s) end Generating Association Rules (Example Continued) Item sets: {1,3} va {2,3,5}
Nhu da hoc confidence cua rule LHS 0 RHS 1a Support cua itemset (i.e LHS U RHS) chia cho support cua LHS
Frequent Patterns Without Candidate Generation Bottlenecks of the Apriori approach
Breadth-first (i.e., level-wise) search Candidate generation and test (Often generates a huge number of candidates) The FPGrowth Approach (J Han, J Pei, Y Yin, 2000)
Depth-first search; avoids explicit candidate generation Basic Idea: Grow long patterns from short ones using locally frequent items only
“abc” is a frequent pattern; get all transactions having “abc”
*đ” 1s a local frequent item in DB|abc > abcd is a frequent pattern Approach:
Use a compressed representation of the database using an FP-tree Once an FP-tree has been constructed, it uses a recursive divide-and-conquer approach to mine the frequent itemsets
Extensions: Multiple-Level Association Rules Items often form a hierarchy
Items at the lower level are expected to have lower support Rules regarding itemsets at appropriate levels could be quite useful Transaction database can be encoded based on dimensions and levels
Mining Multi-Level Associations A top_down, progressive deepening approach
First find high-level strong rules: > milk — bread [20%, 60%]
Then find their lower-level “weaker” rules:
When one threshold set for all levels; if support too high then it is possible to miss meaningful associations at low level; if support too low then possible generation of uninteresting rules different minimum support thresholds across multi-levels lead to different algorithms (e.g., decrease min-support at lower levels)
Variations at mining multiple-level association rules
4Level-crossed association rules: milk + wonder wheat bread Association rules with multiple, alternative hierarchies:
2% milk > wonder bread Extensions: Quantitative Association Rules
Handling quantitative rules may requires discretization of numerical attributes Associations in Text / Web Mining
Document Associations Find (content-based) associations among documents in a collection Documents correspond to items and words correspond to transactions Frequent itemsets are groups of docs in which many words occur in common
Term Associations Find associations among words based on their occurrences in documents Similar to above, but invert the table (terms as items, and docs as transactions) Associations in Web Usage Mining
Association Rules in Web Transactions Discover affinities among sets of Web page references across user sessions
60% of clients who accessed /products/, also accessed / products / software / webminer.htm
30% of clients who accessed /special-offer.html, placed an online order in /products/software/
Actual Example from IBM official Olympics Site:
{Badminton, Diving} ==> {Table Tennis} [conf = 69.7%, sup = 0.35%]
Applications Use rules to serve dynamic, customized contents to users Prefetch files that are most likely to be accessed
Determine the best way to structure the Web site (site optimization) Targeted electronic advertising and increasing cross sales 7 Associations in Recommender Systems
Sequential pattern minindq - cà HH HH nnnn HH Tnhh ky 11 2 Sequential Patterns Extending Frequent ltemsets .- cà e 12 =ENaisis-ọa‹ 9ơ
Khai phá luật kết hợp không xem xét thứ tự của các giao dich
Trong nhiều ứng dụng, thứ tự lại rất quan trọng VD:
Trong phân tích thị trường, thật thú vị khi biết liệu mọi I8ƯỜời có mua một số mặt hàng theo trình tự,
VD, mua giường trước rồi một thời gian sau mua ga trải giường
Trong khai thác sử dụng Web, rất hữu ích khi tìm các pattern về các đường hướng truy cập của người dùng trong một trang Web từ các chuỗi truy cập trang của người dùng 2 Sequential Patterns Extending Frequent ltemsets
Cac Sequential patterns b6 sung thém sé chiéu (dimension) vao frequent itemsets va association rules — thoi gian
Trước, sau, cùng lúc xuất hiện
Dạng thức: “x% thời gian, khi A xuất hiện trong l transaction, B xuất hiện trong z transactions.”
Lưu ý rằng các mục khác có thê xuất hiện giữa A và B, vi vậy các mẫu tuần tự không nhất thiết ngụ ý sự xuất hiện liên tiếp của các mục (về mặt thời gian)
Examples Thuê “Star Wars”, sau đó “Emprre Strikes Back”, sau đó “Return of the Jedi”
Tập hợp các sự kiện được sắp xếp trong một khoảng thời gian
Hầu hết các thuật toán khám phá mẫu tuần tự đều dựa trên phần mở rộng của thuật toán Apriori đề khám phá các tập mục
Một dạng thức đặc biệt của sequential patterns phi nhận patterns đường hướng truy cập của người dùng web
1 session duoc xem nhu | don vi thoi gian Objective
Cho | tap S là tap input data sequences, bai toan mining sequential patterns 1a tim tat cả sequences thỏa độ support tối thiêu
Sequence như vậy được gọi là một frequent sequence, hay một sequential pattern Độ support của | sequence ty 1é data sequences trong S c6 chira sequence nay
Sequence Databases Một sequence database một danh sách elements hay events Mỗi element co thé là một tập items hay một item lẻ (tập 1 item) Transaction databases và sequence databases
Subsequence va super sequence M6Ot sequence la mét danh sach cac events, ky hiéu la
Cho 2 sequences o= va B=< bl b2 bm > a dugc goi la mét subsequence cua B, ky hiéu la a& B, néu ton tai các số nguyên I< jI
0
Xác suất probability của việc đạt đến trạng thái state sj từ một trạng thái si thông qua một path r là tích của tất cả xác suất probabilities đọc theo đường path:
Xác suất probability của việc đạt được sị từ sĩ là tổng tat ca paths:
6 Xay dwng Markov Chain tir Web Navigational Data Tao mét state bat dau duy nhat (start state)
Start state co mét transition tdi page dau tién trong mdi session (bat dau session)
Thay vào đó, có thê có một transition tới mọi state, giả sử rắng mỗi page đều có thê bắt đầu một session
7 Tạo một state kết thúc duy nhất (end state)
Page cuôi trong mỗi trail có một transition tới state cuôi (kết thúc sessIon)
Xác suất transition probabilities lay được bằng cách đếm các lần click Markov chain được gọi là absorbing do chúng ta luôn kết thuc tai final state Giả thiết Markov Chain
Mining Frequent Trails Using Markov Chains 1 Support s in [0,1) — accept only trails whose initial probability is above s
Confidence c in [0,1) — accept only trails whose probability is above c
Recall: the probability of a trail is obtained by multiplying the transition probabilities of the links in the trail
Find all trails whose initial probability is higher than s, and whose trail probability is above c
Use depth-first search on the Markov chain to compute the trails
The average time needed to find the frequent trails is proportional to the number of web pages in the site
Frequent Trails From Example Support = 0.1 and Confidence = 0.3
Frequent Trails From Example Support = 0.1 and Confidence = 0.5
9 Efficient Management of Navigational Trails Approach: Store sessions in an aggregated sequence tree
Initially introduced in Web Utilization Miner (WUM) - Spiliopoulou, 1998
For each occurrence of a sequence start a new branch or increase the frequency counts of matching nodes
In example below, note that s6 contains “b” twice, hence the sequence is
Ill Classification & Prediction: Khái niệm cơ bản What Is Classification?
Xép va phân loại dữ liệu vào các lớp phân biệt
Dựa vào đữ liệu (train) để huấn luyện mô hình Dùng đữ liệu khác (test) để kiêm tra và đánh giá mô hình
Dùng mô hình để đự đoán kết quả cho đữ liệu mới t Classification = prediction đối với đữ liệu rời rạc và định danh
1 Prediction, Clustering, Classification Prediction/Esttimation? (dự đoán, ước lượng) Dự đoán giá trị của một thuộc tính dựa vào giá trị của các thuộc tính khác Mô hình được tạo/huấn luyện dựa vào dữ liệu train, kiểm tra dựa vào dữ liệu test Dùng mô hình dự đoán các giá trị tương lai chưa biết
Most common approach: regression analysis Prediction/Esttimation? (dự đoán, ước lượng) Dự đoán giá trị của một thuộc tính dựa vào giá trị của các thuộc tính khác Mô hình được tạo/huấn luyện dựa vào dữ liệu train, kiểm tra dựa vào dữ liệu test Dùng mô hình dự đoán các giá trị tương lai chưa biết
Most common approach: regression analysis Classification Task
Cho: Một mục dữ liệu, x € X, voi X la feature space (khéng gian đặc trưng)
Cu thé, x là 1 dòng trong bảng mà các cột là feature hay attribute
Tập lớp (class) hay nhan (label): C={cl , c2 , cn }
Classification task thực hiện: Lớp(class) của x: c(x) € C,v6i c(x) 1a mét ham c6 mién giả trị X và khoảng dữ liệu là C
Một mục đữ liệu huấn luyện xeX, cùng với nhãn đúng của nó c(x): mà hàm c(x) là chưa biết
Cho tập dữ liệu huấn luyện, D Tim ham h(x), chăng hạn: h(x) = c(x), cho tất cả mục đữ liệu huấn luyện
3 Example of Classification Learning Instance language:
Hypotheses? circle -> positive? red -> positive?
4 General Learning Issues (All Predictive Modeling Tasks) Nhiều giả thiết có thê nhất quán với dữ liệu huấn luyện
Bias: Tiêu chí khác ngoài tính nhất quán với đữ liệu huấn luyện được sử dụng để chọn giả thuyết
Classification accuracy (% mục dữ liệu được gán đúng nhãn lớp) Được kiểm tra trên tập dữ liệu khác hoàn toàn tập train
Training time (efficiency of training algorithm)
Testing time (efficiency of subsequent classification) Téng quat
Giả thiết hướng tới việc đoán đúng với đữ liệu mới Chỉ ghi nhớ và đoán đúng đữ liệu huấn luyện là chưa đạt tông quát hóa Occam’s razor: tim gia thiết đơn giản và tông quát hóa
Simplest models tend to be the best models Luật KISS
IV Classiication: Qui trình 3 bước 1 Model construction (Learning):
4 Mô hình có nhiều thể loại: decision trees, probabilities, neural networks, 2 Model Evaluation (Accuracy):
Classification Methods Decision Tree Induction Bayesian Classification K-Nearest Neighbor Neural Networks Support Vector Machines Association-Based Classification 1Genetic Algorithms
Két hop Evaluating Models Training Set Test Set Evaluation Set 4 Test & Evaluation Sets Qua chu trong training set (overfitting) Evaluation Set được dùng đánh giá kết quả Không đủ dữ liệu dé chia?
Dùng một số kỹ thuật Cross Validation Bootstrap Validation Cross Validation Hoạt động Chí đữ liệu thành n folds, số mục đữ liệu tương đương nhau Tạo n models với cùng thiết lập huấn luyện với n-l folđs và test trên fold còn lại Dùng để tìm mô hình tốt/tỗi ưu hóa bộ parameter
Các bước 1.Chia dữ liệu thành tập train và test 2 Chia tap train thanh n folds 3 Chon giai thuật huấn luyện và thiết lập tham số 4 Huấn luyện và kiểm tra n models
5 Lặp bước 2 - 4 sử dụng các giải thuật/tham số khác để so sánh 6 Chọn mô hình tốt nhất
7 Su dung tat ca đữ liệu train để huấn luyện mô hình
8 Ding tap evaluation dé đánh giá mô hình lần cuối Example - 5 Fold Cross Validation
Bootstrap Validation Dựa trên quy trình lấy mẫu thống kê có thay thé
Tập dữ liệu của n phiên bản được lấy mẫu n lần (có thay thế) đề cung cấp một tập dữ liệu khác của n phiên bản
Vì một số phần tử sẽ được lặp lại nên sẽ có những phần tử trong tập đữ liệu gốc không được chọn
Các trường hợp còn lại này được sử dụng làm bo test Có bao nhiêu trường hợp trong tập test?
Xác suất không được chọn trong một lần lay mau =1- 1/n Pr(không được chọn trong n mau) = (1 -1/n) n = e-1 = 0.368 Vì vậy, đối với tập đữ liệu lớn, tập test sẽ chứa khoảng 36,8% trường hợp
To compensate for smaller training sample (63.2%), test set error rate is combined with the re-substitution error in training set: e = (0.632 * e test instance) + (0.368 *e training instance)
Xác thực Bootstrap làm tăng phương sai có thê xảy ra trong mỗi fold Measuring Effectiveness of Classification Models
Sử dụng confusion matrix dé danh qua két qua m6 hinh Vi du
Actual Class Tỷ lệ phân loại chính xác chung = (18 + 15) /38 = 87%
Cho T, tỷ lệ phân loại chính xác = L8 / 20 = 90%
Cho F, tỷ lệ phân loại chính xac = 15 / 18 = 83%
5 Confusion Matrix & Accuracy Metrics Độ chính xác của bộ phân loại: tỷ lệ phần trăm của các trường hợp bộ kiêm tra được phân loại chính xác
Accuracy = (TP + TN)All Error rate: 1 — accuracy, hay Error rate = (FP + FN)AII
Van đề mất cân băng lớp: Một lớp có thể hiếm gặp, ví dụ: gian lận, hoặc đương tính với HIV
Sensitivity: True Positive recognition rate = TP/P Specificity: True Negative recognition rate = TN/N Other Classifier Evaluation Metrics
Precision (dya trén du doan) 4% số mục dữ liệu mô hình dự đoán positive thực sự positive
Recall (dya trén dap an) % số đáp án positive mô hình đoán đúng là positive Còn gọi là “Completeness”
Score=1.0 1a tốt nhất, thường dao động giữa Precision & Recall F measure (F1 hay F-score)
Trung binh cua precision & recall
Tuong ty classification xay model
Dùng model dự đoán giá trị liên tục hay có trật tự biết giá trị input Khác classification
Classification doan nhan các lớp định danh Prediction mô hình các hàm liên tục Phuong phap chinh prediction: regression
Mô hình hóa mối quan hệ giữa một hoặc nhiều biến dự đoán (độc lập) hoặc biến kết quả (phụ thuộc)
4 Linear & multiple regression Non-linear regression
PP regression khac: linear model téng quat, Poisson regression, log-linear models, regression trees
Linear regression: lién quan dén mét bién két quả y và một biến dự đoán duy nhất x > y =w0 +w1 x w0 (y-intercept) & wl (slope) là các hệ số hồi quy Phương pháp bình phương nhỏ nhất : ước tính đường thăng phù hợp nhất
Multiple linear regression: lién quan dén nhiéu hon mét bién dy doan
Training data co dang (X1, yl ), (X2, y2 ), , (X|D], y|D] ) VD với 2-D data, ta co: y = wO + w1 x1+ w2 x2 Có thê giải được băng cách mở rộng phương pháp bình phương nhỏ nhất Nhiều hàm nonlinear có thể chuyển về đạng trên
6 Nonlinear Regression Một số mô hình phi tuyến có thể được mô hình hóa bằng hàm đa thức
Một mô hình hồi quy đa thức có thể được chuyên đổi thành mô hình hồi quy tuyến tính Ví dụ,y =w0 +wlx+w2x2+w3 x3 có thê chuyên đôi thành tuyến tính với các biến mới: x2 = x2 , x3=x 3 y =w0 +w1x+w2x2+w3x3
Các hàm khác, như hàm mũ, cũng có thê chuyên về mô hình tuyến tính Một số hàm khó chuyền về tuyến tính
Có thê có được các ước tính bình phương nhỏ nhất thông qua tính toán mở rộng trên các hàm phức tạp hơn
Other Regression-Based Models Generalized linear models
Foundation on which linear regression can be applied to modeling categorical response variables
Variance of y is a function of the mean value of y, not a constant
Logistic regression: models the probability of some event occurring as a linear function of a set of predictor variables
Poisson regression: models the data that exhibit a Poisson distribution Log-linear models (for categorical data)
Approximate discrete multidimensional prob distributions Also useful for data compression and smoothing
Regression trees and model trees Trees to predict continuous values rather than class labels Regression Trees and Model Trees
Regression tree: proposed in CART system (Breiman et al 1984) CART: Classification And Regression Trees
Each leaf stores a continuous-valued prediction
It is the average value of the predicted attribute for the training instances that reach the leaf
Model tree: proposed by Quinlan (1992)
Each leaf holds a regression model—a multivariate linear equation for the predicted attribute
A more general case than regression tree
Regression and model trees tend to be more accurate than linear regression when instances are not represented well by simple linear models
Evaluating Numeric Prediction Prediction Accuracy
Sự khác nhau giữa đáp án dự đoán và kết quả đự đoán của mô hình (từ tập evaluation) Tính bằng cách đo độ lệch (vd: trung bình của độ lệch bình phương)
Cac Metrics (p1 = giá trị dự đoán cho mục đữ liệu test 1, ai = giả trị đâp án cho mục đữ liệu test 1)
Mean Absolute Error: Tôn thất/mất mát (loss) trung bình trên tập kiêm tra
Root Mean Squared Error: tính độ lệch chuẩn (i.e., căn bậc hai của độ lệch)